Simple Plot

import plotly.graph_objects as go

fig = go.Figure(data=go.Bar(y=[2, 3, 1]))
fig.show()
    <script type="text/javascript">
    window.PlotlyConfig = {MathJaxConfig: 'local'};
    if (window.MathJax) {MathJax.Hub.Config({SVG: {font: "STIX-Web"}});}
    if (typeof require !== 'undefined') {
    require.undef("plotly");
    define('plotly', function(require, exports, module) {
        /**
  • plotly.js v1.54.6
  • Copyright 2012-2020, Plotly, Inc.
  • All rights reserved.
  • Licensed under the MIT license */ !function(t){if(“object”==typeof exports&&“undefined”!=typeof module)module.exports=t();else if(“function”==typeof define&&define.amd)define([],t);else{(“undefined”!=typeof window?window:“undefined”!=typeof global?global:“undefined”!=typeof self?self:this).Plotly=t()}}((function(){return function t(e,r,n){function a(o,s){if(!r[o]){if(!e[o]){var l=“function”==typeof require&&require;if(!s&&l)return l(o,!0);if(i)return i(o,!0);var c=new Error(“Cannot find module ‘”+o+“’”);throw c.code=“MODULE_NOT_FOUND”,c}var u=r[o]={exports:{}};e[o][0].call(u.exports,(function(t){return a(e[o][1][t]||t)}),u,u.exports,t,e,r,n)}return r[o].exports}for(var i=“function”==typeof require&&require,o=0;o:not(.watermark)”:“opacity:0;-webkit-transition:opacity 0.3s ease 0s;-moz-transition:opacity 0.3s ease 0s;-ms-transition:opacity 0.3s ease 0s;-o-transition:opacity 0.3s ease 0s;transition:opacity 0.3s ease 0s;“,“X:hover .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-btn”:“position:relative;font-size:16px;padding:3px 4px;height:22px;cursor:pointer;line-height:normal;box-sizing:border-box;“,“X .modebar-btn svg”:“position:relative;top:2px;“,“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:transparent;border:6px solid transparent;z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;“,“X [data-title]:after”:“content:attr(data-title);background:#69738a;color:white;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 transparent;border-left-color:#69738a;margin-top:8px;margin-right:-30px;“,“X .select-outline”:“fill:none;stroke-width:1;shape-rendering:crispEdges;“,“X .select-outline-1”:“stroke:white;“,“X .select-outline-2”:“stroke:black;stroke-dasharray:2px 2px;“,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,0.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:0.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(var i in a){var o=i.replace(/^,/,” ,“).replace(/X/g,”.js-plotly-plot .plotly”).replace(/Y/g,“.plotly-notifier”);n.addStyleRule(o,a[i])}},{“../src/lib”:728}],2:[function(t,e,r){“use strict”;e.exports=t(“../src/transforms/aggregate”)},{“../src/transforms/aggregate”:1311}],3:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/bar”)},{“../src/traces/bar”:877}],4:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/barpolar”)},{“../src/traces/barpolar”:890}],5:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/box”)},{“../src/traces/box”:900}],6:[function(t,e,r){“use strict”;e.exports=t(“../src/components/calendars”)},{“../src/components/calendars”:593}],7:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/candlestick”)},{“../src/traces/candlestick”:909}],8:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/carpet”)},{“../src/traces/carpet”:928}],9:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/choropleth”)},{“../src/traces/choropleth”:942}],10:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/choroplethmapbox”)},{“../src/traces/choroplethmapbox”:949}],11:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/cone”)},{“../src/traces/cone”:955}],12:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/contour”)},{“../src/traces/contour”:970}],13:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/contourcarpet”)},{“../src/traces/contourcarpet”:981}],14:[function(t,e,r){“use strict”;e.exports=t(“../src/core”)},{“../src/core”:706}],15:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/densitymapbox”)},{“../src/traces/densitymapbox”:989}],16:[function(t,e,r){“use strict”;e.exports=t(“../src/transforms/filter”)},{“../src/transforms/filter”:1312}],17:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/funnel”)},{“../src/traces/funnel”:999}],18:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/funnelarea”)},{“../src/traces/funnelarea”:1008}],19:[function(t,e,r){“use strict”;e.exports=t(“../src/transforms/groupby”)},{“../src/transforms/groupby”:1313}],20:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/heatmap”)},{“../src/traces/heatmap”:1021}],21:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/heatmapgl”)},{“../src/traces/heatmapgl”:1031}],22:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/histogram”)},{“../src/traces/histogram”:1043}],23:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/histogram2d”)},{“../src/traces/histogram2d”:1049}],24:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/histogram2dcontour”)},{“../src/traces/histogram2dcontour”:1053}],25:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/image”)},{“../src/traces/image”:1060}],26:[function(t,e,r){“use strict”;var n=t(“./core”);n.register([t(“./bar”),t(“./box”),t(“./heatmap”),t(“./histogram”),t(“./histogram2d”),t(“./histogram2dcontour”),t(“./contour”),t(“./scatterternary”),t(“./violin”),t(“./funnel”),t(“./waterfall”),t(“./image”),t(“./pie”),t(“./sunburst”),t(“./treemap”),t(“./funnelarea”),t(“./scatter3d”),t(“./surface”),t(“./isosurface”),t(“./volume”),t(“./mesh3d”),t(“./cone”),t(“./streamtube”),t(“./scattergeo”),t(“./choropleth”),t(“./scattergl”),t(“./splom”),t(“./pointcloud”),t(“./heatmapgl”),t(“./parcoords”),t(“./parcats”),t(“./scattermapbox”),t(“./choroplethmapbox”),t(“./densitymapbox”),t(“./sankey”),t(“./indicator”),t(“./table”),t(“./carpet”),t(“./scattercarpet”),t(“./contourcarpet”),t(“./ohlc”),t(“./candlestick”),t(“./scatterpolar”),t(“./scatterpolargl”),t(“./barpolar”)]),n.register([t(“./aggregate”),t(“./filter”),t(“./groupby”),t(“./sort”)]),n.register([t(“./calendars”)]),e.exports=n},{“./aggregate”:2,“./bar”:3,“./barpolar”:4,“./box”:5,“./calendars”:6,“./candlestick”:7,“./carpet”:8,“./choropleth”:9,“./choroplethmapbox”:10,“./cone”:11,“./contour”:12,“./contourcarpet”:13,“./core”:14,“./densitymapbox”:15,“./filter”:16,“./funnel”:17,“./funnelarea”:18,“./groupby”:19,“./heatmap”:20,“./heatmapgl”:21,“./histogram”:22,“./histogram2d”:23,“./histogram2dcontour”:24,“./image”:25,“./indicator”:27,“./isosurface”:28,“./mesh3d”:29,“./ohlc”:30,“./parcats”:31,“./parcoords”:32,“./pie”:33,“./pointcloud”:34,“./sankey”:35,“./scatter3d”:36,“./scattercarpet”:37,“./scattergeo”:38,“./scattergl”:39,“./scattermapbox”:40,“./scatterpolar”:41,“./scatterpolargl”:42,“./scatterternary”:43,“./sort”:44,“./splom”:45,“./streamtube”:46,“./sunburst”:47,“./surface”:48,“./table”:49,“./treemap”:50,“./violin”:51,“./volume”:52,“./waterfall”:53}],27:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/indicator”)},{“../src/traces/indicator”:1068}],28:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/isosurface”)},{“../src/traces/isosurface”:1074}],29:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/mesh3d”)},{“../src/traces/mesh3d”:1079}],30:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/ohlc”)},{“../src/traces/ohlc”:1084}],31:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/parcats”)},{“../src/traces/parcats”:1093}],32:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/parcoords”)},{“../src/traces/parcoords”:1103}],33:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/pie”)},{“../src/traces/pie”:1114}],34:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/pointcloud”)},{“../src/traces/pointcloud”:1123}],35:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/sankey”)},{“../src/traces/sankey”:1129}],36:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/scatter3d”)},{“../src/traces/scatter3d”:1166}],37:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/scattercarpet”)},{“../src/traces/scattercarpet”:1173}],38:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/scattergeo”)},{“../src/traces/scattergeo”:1181}],39:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/scattergl”)},{“../src/traces/scattergl”:1194}],40:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/scattermapbox”)},{“../src/traces/scattermapbox”:1204}],41:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/scatterpolar”)},{“../src/traces/scatterpolar”:1212}],42:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/scatterpolargl”)},{“../src/traces/scatterpolargl”:1219}],43:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/scatterternary”)},{“../src/traces/scatterternary”:1227}],44:[function(t,e,r){“use strict”;e.exports=t(“../src/transforms/sort”)},{“../src/transforms/sort”:1315}],45:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/splom”)},{“../src/traces/splom”:1236}],46:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/streamtube”)},{“../src/traces/streamtube”:1244}],47:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/sunburst”)},{“../src/traces/sunburst”:1252}],48:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/surface”)},{“../src/traces/surface”:1261}],49:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/table”)},{“../src/traces/table”:1269}],50:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/treemap”)},{“../src/traces/treemap”:1278}],51:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/violin”)},{“../src/traces/violin”:1290}],52:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/volume”)},{“../src/traces/volume”:1298}],53:[function(t,e,r){“use strict”;e.exports=t(“../src/traces/waterfall”)},{“../src/traces/waterfall”:1306}],54:[function(t,e,r){“use strict”;e.exports=function(t){var e=(t=t||{}).eye||[0,0,1],r=t.center||[0,0,0],s=t.up||[0,1,0],l=t.distanceLimits||[0,10],c=t.mode||“turntable”,u=n(),h=a(),f=i();return u.setDistanceLimits(l[0],l[1]),u.lookAt(0,e,r,s),h.setDistanceLimits(l[0],l[1]),h.lookAt(0,e,r,s),f.setDistanceLimits(l[0],l[1]),f.lookAt(0,e,r,s),new o({turntable:u,orbit:h,matrix:f},c)};var n=t(“turntable-camera-controller”),a=t(“orbit-camera-controller”),i=t(“matrix-camera-controller”);function o(t,e){this._controllerNames=Object.keys(t),this._controllerList=this._controllerNames.map((function(e){return t[e]})),this._mode=e,this._active=t[e],this._active||(this._mode=“turntable”,this._active=t.turntable),this.modes=this._controllerNames,this.computedMatrix=this._active.computedMatrix,this.computedEye=this._active.computedEye,this.computedUp=this._active.computedUp,this.computedCenter=this._active.computedCenter,this.computedRadius=this._active.computedRadius}var s=o.prototype;[[“flush”,1],[“idle”,1],[“lookAt”,4],[“rotate”,4],[“pan”,4],[“translate”,4],[“setMatrix”,2],[“setDistanceLimits”,2],[“setDistance”,2]].forEach((function(t){for(var e=t[0],r=[],n=0;n1||a>1)}function M(t,e,r){return t.sort(E),t.forEach((function(n,a){var i,o,s=0;if(H(n,r)&&A(n))n.circularPathData.verticalBuffer=s+n.width/2;else{for(var l=0;lo.source.column)){var c=t[l].circularPathData.verticalBuffer+t[l].width/2+e;s=c>s?c:s}n.circularPathData.verticalBuffer=s+n.width/2}})),t}function S(t,r,a,i){var o=e.min(t.links,(function(t){return t.source.y0}));t.links.forEach((function(t){t.circular&&(t.circularPathData={})})),M(t.links.filter((function(t){return”top”==t.circularLinkType})),r,i),M(t.links.filter((function(t){return”bottom”==t.circularLinkType})),r,i),t.links.forEach((function(e){if(e.circular){if(e.circularPathData.arcRadius=e.width+10,e.circularPathData.leftNodeBuffer=5,e.circularPathData.rightNodeBuffer=5,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,H(e,i)&&A(e))e.circularPathData.leftSmallArcRadius=10+e.width/2,e.circularPathData.leftLargeArcRadius=10+e.width/2,e.circularPathData.rightSmallArcRadius=10+e.width/2,e.circularPathData.rightLargeArcRadius=10+e.width/2,“bottom”==e.circularLinkType?(e.circularPathData.verticalFullExtent=e.source.y1+25+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-25-e.circularPathData.verticalBuffer,e.circularPathData.verticalLeftInnerExtent=e.circularPathData.verticalFullExtent+e.circularPathData.leftLargeArcRadius,e.circularPathData.verticalRightInnerExtent=e.circularPathData.verticalFullExtent+e.circularPathData.rightLargeArcRadius);else{var s=e.source.column,l=e.circularLinkType,c=t.links.filter((function(t){return t.source.column==s&&t.circularLinkType==l}));“bottom”==e.circularLinkType?c.sort(L):c.sort©;var u=0;c.forEach((function(t,n){t.circularLinkID==e.circularLinkID&&(e.circularPathData.leftSmallArcRadius=10+e.width/2+u,e.circularPathData.leftLargeArcRadius=10+e.width/2+n*r+u),u+=t.width})),s=e.target.column,c=t.links.filter((function(t){return t.target.column==s&&t.circularLinkType==l})),“bottom”==e.circularLinkType?c.sort(I):c.sort(P),u=0,c.forEach((function(t,n){t.circularLinkID==e.circularLinkID&&(e.circularPathData.rightSmallArcRadius=10+e.width/2+u,e.circularPathData.rightLargeArcRadius=10+e.width/2+n*r+u),u+=t.width})),“bottom”==e.circularLinkType?(e.circularPathData.verticalFullExtent=Math.max(a,e.source.y1,e.target.y1)+25+e.circularPathData.verticalBuffer,e.circularPathData.verticalLeftInnerExtent=e.circularPathData.verticalFullExtent-e.circularPathData.leftLargeArcRadius,e.circularPathData.verticalRightInnerExtent=e.circularPathData.verticalFullExtent-e.circularPathData.rightLargeArcRadius):(e.circularPathData.verticalFullExtent=o-25-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=function(t){var e=“”;e=“top”==t.circularLinkType?“M”+t.circularPathData.sourceX+” “+t.circularPathData.sourceY+” L”+t.circularPathData.leftInnerExtent+” “+t.circularPathData.sourceY+” A”+t.circularPathData.leftLargeArcRadius+” “+t.circularPathData.leftSmallArcRadius+” 0 0 0 “+t.circularPathData.leftFullExtent+” “+(t.circularPathData.sourceY-t.circularPathData.leftSmallArcRadius)+” L”+t.circularPathData.leftFullExtent+” “+t.circularPathData.verticalLeftInnerExtent+” A”+t.circularPathData.leftLargeArcRadius+” “+t.circularPathData.leftLargeArcRadius+” 0 0 0 “+t.circularPathData.leftInnerExtent+” “+t.circularPathData.verticalFullExtent+” L”+t.circularPathData.rightInnerExtent+” “+t.circularPathData.verticalFullExtent+” A”+t.circularPathData.rightLargeArcRadius+” “+t.circularPathData.rightLargeArcRadius+” 0 0 0 “+t.circularPathData.rightFullExtent+” “+t.circularPathData.verticalRightInnerExtent+” L”+t.circularPathData.rightFullExtent+” “+(t.circularPathData.targetY-t.circularPathData.rightSmallArcRadius)+” A”+t.circularPathData.rightLargeArcRadius+” “+t.circularPathData.rightSmallArcRadius+” 0 0 0 “+t.circularPathData.rightInnerExtent+” “+t.circularPathData.targetY+” L”+t.circularPathData.targetX+” “+t.circularPathData.targetY:“M”+t.circularPathData.sourceX+” “+t.circularPathData.sourceY+” L”+t.circularPathData.leftInnerExtent+” “+t.circularPathData.sourceY+” A”+t.circularPathData.leftLargeArcRadius+” “+t.circularPathData.leftSmallArcRadius+” 0 0 1 “+t.circularPathData.leftFullExtent+” “+(t.circularPathData.sourceY+t.circularPathData.leftSmallArcRadius)+” L”+t.circularPathData.leftFullExtent+” “+t.circularPathData.verticalLeftInnerExtent+” A”+t.circularPathData.leftLargeArcRadius+” “+t.circularPathData.leftLargeArcRadius+” 0 0 1 “+t.circularPathData.leftInnerExtent+” “+t.circularPathData.verticalFullExtent+” L”+t.circularPathData.rightInnerExtent+” “+t.circularPathData.verticalFullExtent+” A”+t.circularPathData.rightLargeArcRadius+” “+t.circularPathData.rightLargeArcRadius+” 0 0 1 “+t.circularPathData.rightFullExtent+” “+t.circularPathData.verticalRightInnerExtent+” L”+t.circularPathData.rightFullExtent+” “+(t.circularPathData.targetY+t.circularPathData.rightSmallArcRadius)+” A”+t.circularPathData.rightLargeArcRadius+” “+t.circularPathData.rightSmallArcRadius+” 0 0 1 “+t.circularPathData.rightInnerExtent+” “+t.circularPathData.targetY+” L”+t.circularPathData.targetX+” “+t.circularPathData.targetY;return e}(e);else{var h=n.linkHorizontal().source((function(t){return[t.source.x0+(t.source.x1-t.source.x0),t.y0]})).target((function(t){return[t.target.x0,t.y1]}));e.path=h(e)}}))}function E(t,e){return z(t)==z(e)?“bottom”==t.circularLinkType?L(t,e):C(t,e):z(e)-z(t)}function C(t,e){return t.y0-e.y0}function L(t,e){return e.y0-t.y0}function P(t,e){return t.y1-e.y1}function I(t,e){return e.y1-t.y1}function z(t){return t.target.column-t.source.column}function O(t){return t.target.x0-t.source.x1}function D(t,e){var r=T(t),n=O(e)/Math.tan®;return”up”==q(t)?t.y1+n:t.y1-n}function R(t,e){var r=T(t),n=O(e)/Math.tan®;return”up”==q(t)?t.y1-n:t.y1+n}function F(t,e,r,n){t.links.forEach((function(a){if(!a.circular&&a.target.column-a.source.column>1){var i=a.source.column+1,o=a.target.column-1,s=1,l=o-i+1;for(s=1;i<=o;i++,s++)t.nodes.forEach((function(o){if(o.column==i){var c,u=s/(l+1),h=Math.pow(1-u,3),f=3*u*Math.pow(1-u,2),p=3Math.pow(u,2)(1-u),d=Math.pow(u,3),g=h*a.y0+f*a.y0+p*a.y1+d*a.y1,m=g-a.width/2,v=g+a.width/2;m>o.y0&&mo.y0&&vo.y1)&&(c=v-o.y0+10,o=N(o,c,e,r),t.nodes.forEach((function(t){b(t,n)!=b(o,n)&&t.column==o.column&&t.y0o.y1&&N(t,c,e,r)})))}}))}}))}function B(t,e){return t.y0>e.y0&&t.y0e.y0&&t.y1e.y1)}function N(t,e,r,n){return t.y0+e>=r&&t.y1+e<=n&&(t.y0=t.y0+e,t.y1=t.y1+e,t.targetLinks.forEach((function(t){t.y1=t.y1+e})),t.sourceLinks.forEach((function(t){t.y0=t.y0+e}))),t}function j(t,e,r,n){t.nodes.forEach((function(a){n&&a.y+(a.y1-a.y0)>e&&(a.y=a.y-(a.y+(a.y1-a.y0)-e));var i=t.links.filter((function(t){return b(t.source,r)==b(a,r)})),o=i.length;o>1&&i.sort((function(t,e){if(!t.circular&&!e.circular){if(t.target.column==e.target.column)return t.y1-e.y1;if(!U(t,e))return t.y1-e.y1;if(t.target.column>e.target.column){var r=R(e,t);return t.y1-r}if(e.target.column>t.target.column)return R(t,e)-e.y1}return t.circular&&!e.circular?“top”==t.circularLinkType?-1:1:e.circular&&!t.circular?“top”==e.circularLinkType?1:-1:t.circular&&e.circular?t.circularLinkType===e.circularLinkType&&“top”==t.circularLinkType?t.target.column===e.target.column?t.target.y1-e.target.y1:e.target.column-t.target.column:t.circularLinkType===e.circularLinkType&&“bottom”==t.circularLinkType?t.target.column===e.target.column?e.target.y1-t.target.y1:t.target.column-e.target.column:“top”==t.circularLinkType?-1:1:void 0}));var s=a.y0;i.forEach((function(t){t.y0=s+t.width/2,s+=t.width})),i.forEach((function(t,e){if(“bottom”==t.circularLinkType){for(var r=e+1,n=0;r1&&n.sort((function(t,e){if(!t.circular&&!e.circular){if(t.source.column==e.source.column)return t.y0-e.y0;if(!U(t,e))return t.y0-e.y0;if(e.source.column0?“up”:“down”}function H(t,e){return b(t.source,e)==b(t.target,e)}function G(t,r,n){var a=t.nodes,i=t.links,o=!1,s=!1;if(i.forEach((function(t){“top”==t.circularLinkType?o=!0:“bottom”==t.circularLinkType&&(s=!0)})),0==o||0==s){var l=e.min(a,(function(t){return t.y0})),c=(n-r)/(e.max(a,(function(t){return t.y1}))-l);a.forEach((function(t){var e=(t.y1-t.y0)*c;t.y0=(t.y0-l)*c,t.y1=t.y0+e})),i.forEach((function(t){t.y0=(t.y0-l)*c,t.y1=(t.y1-l)*c,t.width=t.width*c}))}}t.sankeyCircular=function(){var t,n,a=0,i=0,b=1,T=1,A=24,M=m,E=o,C=v,L=y,P=32,I=2,z=null;function O(){var t={nodes:C.apply(null,arguments),links:L.apply(null,arguments)};D(t),_(t,M,z),R(t),B(t),w(t,M),N(t,P,M),U(t);for(var e=4,r=0;r0?r+25+10:r,bottom:n=n>0?n+25+10:n,left:i=i>0?i+25+10:i,right:a=a>0?a+25+10:a}}(o),h=function(t,r){var n=e.max(t.nodes,(function(t){return t.column})),o=b-a,s=T-i,l=o/(o+r.right+r.left),c=s/(s+r.top+r.bottom);return a=a*l+r.left,b=0==r.right?b:b*l,i=ic+r.top,T=c,t.nodes.forEach((function(t){t.x0=a+t.column((b-a-A)/n),t.x1=t.x0+A})),c}(o,u);l=h,o.links.forEach((function(t){t.width=t.value*l})),c.forEach((function(t){var e=t.length;t.forEach((function(t,n){t.depth==c.length-1&&1==e||0==t.depth&&1==e?(t.y0=T/2-t.value*l,t.y1=t.y0+t.value*l):t.partOfCycle?0==k(t,r)?(t.y0=T/2+n,t.y1=t.y0+t.value*l):“top”==t.circularLinkType?(t.y0=i+n,t.y1=t.y0+t.value*l):(t.y0=T-t.value*l-n,t.y1=t.y0+t.value*l):0==u.top||0==u.bottom?(t.y0=(T-i)/e*n,t.y1=t.y0+t.value*l):(t.y0=(T-i)/2-e/2+n,t.y1=t.y0+t.valuel)}))}))}(l),y();for(var u=1,m=s;m>0;–m)v(u=.99,l),y();function v(t,r){var n=c.length;c.forEach((function(a){var i=a.length,o=a[0].depth;a.forEach((function(a){var s;if(a.sourceLinks.length||a.targetLinks.length)if(a.partOfCycle&&k(a,r)>0);else if(0==o&&1==i)s=a.y1-a.y0,a.y0=T/2-s/2,a.y1=T/2+s/2;else if(o==n-1&&1==i)s=a.y1-a.y0,a.y0=T/2-s/2,a.y1=T/2+s/2;else{var l=e.mean(a.sourceLinks,g),c=e.mean(a.targetLinks,d),u=((l&&c?(l+c)/2:l||c)-p(a))*t;a.y0+=u,a.y1+=u}}))}))}function y(){c.forEach((function(e){var r,n,a,o=i,s=e.length;for(e.sort(h),a=0;a0&&(r.y0+=n,r.y1+=n),o=r.y1+t;if((n=o-t-T)>0)for(o=r.y0-=n,r.y1-=n,a=s-2;a>=0;–a)(n=(r=e[a]).y1+t-o)>0&&(r.y0-=n,r.y1-=n),o=r.y0}))}}function U(t){t.nodes.forEach((function(t){t.sourceLinks.sort(u),t.targetLinks.sort©})),t.nodes.forEach((function(t){var e=t.y0,r=e,n=t.y1,a=n;t.sourceLinks.forEach((function(t){t.circular?(t.y0=n-t.width/2,n-=t.width):(t.y0=e+t.width/2,e+=t.width)})),t.targetLinks.forEach((function(t){t.circular?(t.y1=a-t.width/2,a-=t.width):(t.y1=r+t.width/2,r+=t.width)}))}))}return O.nodeId=function(t){return arguments.length?(M=“function”==typeof t?t:s(t),O):M},O.nodeAlign=function(t){return arguments.length?(E=“function”==typeof t?t:s(t),O):E},O.nodeWidth=function(t){return arguments.length?(A=+t,O):A},O.nodePadding=function(e){return arguments.length?(t=+e,O):t},O.nodes=function(t){return arguments.length?(C=“function”==typeof t?t:s(t),O):C},O.links=function(t){return arguments.length?(L=“function”==typeof t?t:s(t),O):L},O.size=function(t){return arguments.length?(a=i=0,b=+t[0],T=+t[1],O):[b-a,T-i]},O.extent=function(t){return arguments.length?(a=+t[0][0],b=+t[1][0],i=+t[0][1],T=+t[1][1],O):[[a,i],[b,T]]},O.iterations=function(t){return arguments.length?(P=+t,O):P},O.circularLinkGap=function(t){return arguments.length?(I=+t,O):I},O.nodePaddingRatio=function(t){return arguments.length?(n=+t,O):n},O.sortNodes=function(t){return arguments.length?(z=t,O):z},O.update=function(t){return w(t,M),U(t),t.links.forEach((function(t){t.circular&&(t.circularLinkType=t.y0+t.y1i&&(b=i);var o=e.min(a,(function(t){return(y-n-(t.length-1)*b)/e.sum(t,u)}));a.forEach((function(t){t.forEach((function(t,e){t.y1=(t.y0=e)+t.value*o}))})),t.links.forEach((function(t){t.width=t.valueo}))}(),d();for(var i=1,o=A;o>0;–o)l(i=.99),d(),s(i),d();function s(t){a.forEach((function®{r.forEach((function®{if(r.targetLinks.length){var n=(e.sum(r.targetLinks,f)/e.sum(r.targetLinks,u)-h®)*t;r.y0+=n,r.y1+=n}}))}))}function l(t){a.slice().reverse().forEach((function®{r.forEach((function®{if(r.sourceLinks.length){var n=(e.sum(r.sourceLinks,p)/e.sum(r.sourceLinks,u)-h®)*t;r.y0+=n,r.y1+=n}}))}))}function d(){a.forEach((function(t){var e,r,a,i=n,o=t.length;for(t.sort©,a=0;a0&&(e.y0+=r,e.y1+=r),i=e.y1+b;if((r=i-b-y)>0)for(i=e.y0-=r,e.y1-=r,a=o-2;a>=0;–a)(r=(e=t[a]).y1+b-i)>0&&(e.y0-=r,e.y1-=r),i=e.y0}))}}function P(t){t.nodes.forEach((function(t){t.sourceLinks.sort(l),t.targetLinks.sort(s)})),t.nodes.forEach((function(t){var e=t.y0,r=e;t.sourceLinks.forEach((function(t){t.y0=e+t.width/2,e+=t.width})),t.targetLinks.forEach((function(t){t.y1=r+t.width/2,r+=t.width}))}))}return M.update=function(t){return P(t),t},M.nodeId=function(t){return arguments.length?(=“function”==typeof t?t:o(t),M):},M.nodeAlign=function(t){return arguments.length?(w=“function”==typeof t?t:o(t),M):w},M.nodeWidth=function(t){return arguments.length?(x=+t,M):x},M.nodePadding=function(t){return arguments.length?(b=+t,M):b},M.nodes=function(t){return arguments.length?(T=“function”==typeof t?t:o(t),M):T},M.links=function(t){return arguments.length?(k=“function”==typeof t?t:o(t),M):k},M.size=function(e){return arguments.length?(t=n=0,a=+e[0],y=+e[1],M):[a-t,y-n]},M.extent=function(e){return arguments.length?(t=+e[0][0],a=+e[1][0],n=+e[0][1],y=+e[1][1],M):[[t,n],[a,y]]},M.iterations=function(t){return arguments.length?(A=+t,M):A},M},t.sankeyCenter=function(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?e.min(t.sourceLinks,a)-1:0},t.sankeyLeft=function(t){return t.depth},t.sankeyRight=function(t,e){return e-1-t.height},t.sankeyJustify=i,t.sankeyLinkHorizontal=function(){return n.linkHorizontal().source(y).target(x)},Object.defineProperty(t,”esModule”,{value:!0})}))},{“d3-array”:153,“d3-collection”:154,“d3-shape”:162}],57:[function(t,e,r){“use strict”;Object.defineProperty(r,”esModule”,{value:!0});var n=t(“@turf/meta”);function a(t){var e=0;if(t&&t.length>0){e+=Math.abs(i(t[0]));for(var r=1;r2){for(s=0;st[0]&&(e[0]=t[0]),e[1]>t[1]&&(e[1]=t[1]),e[2]=0))throw new Error(“precision must be a positive number”);var r=Math.pow(10,e||0);return Math.round(t*r)/r},r.radiansToLength=h,r.lengthToRadians=f,r.lengthToDegrees=function(t,e){return p(f(t,e))},r.bearingToAzimuth=function(t){var e=t%360;return e<0&&(e+=360),e},r.radiansToDegrees=p,r.degreesToRadians=function(t){return t%360*Math.PI/180},r.convertLength=function(t,e,r){if(void 0===e&&(e="kilometers"),void 0===r&&(r="kilometers"),!(t>=0))throw new Error(“length must be a positive number”);return h(f(t,e),r)},r.convertArea=function(t,e,n){if(void 0===e&&(e=“meters”),void 0===n&&(n=“kilometers”),!(t>=0))throw new Error(“area must be a positive number”);var a=r.areaFactors[e];if(!a)throw new Error(“invalid original units”);var i=r.areaFactors[n];if(!i)throw new Error(“invalid final units”);return t/a*i},r.isNumber=d,r.isObject=function(t){return!!t&&t.constructor===Object},r.validateBBox=function(t){if(!t)throw new Error(“bbox is required”);if(!Array.isArray(t))throw new Error(“bbox must be an Array”);if(4!==t.length&&6!==t.length)throw new Error(“bbox must be an Array of 4 or 6 numbers”);t.forEach((function(t){if(!d(t))throw new Error(“bbox must only contain numbers”)}))},r.validateId=function(t){if(!t)throw new Error(“id is required”);if(-1===[“string”,“number”].indexOf(typeof t))throw new Error(“id must be a number or a string”)},r.radians2degrees=function(){throw new Error(“method has been renamed to radiansToDegrees”)},r.degrees2radians=function(){throw new Error(“method has been renamed to degreesToRadians”)},r.distanceToDegrees=function(){throw new Error(“method has been renamed to lengthToDegrees”)},r.distanceToRadians=function(){throw new Error(“method has been renamed to lengthToRadians”)},r.radiansToDistance=function(){throw new Error(“method has been renamed to radiansToLength”)},r.bearingToAngle=function(){throw new Error(“method has been renamed to bearingToAzimuth”)},r.convertDistance=function(){throw new Error(“method has been renamed to convertLength”)}},{}],61:[function(t,e,r){“use strict”;Object.defineProperty(r,”_esModule”,{value:!0});var n=t(“@turf/helpers”);function a(t,e,r){if(null!==t)for(var n,i,o,s,l,c,u,h,f=0,p=0,d=t.type,g=“FeatureCollection”===d,m=“Feature”===d,v=g?t.features.length:1,y=0;y<v;y++){l=(h=!!(u=g?t.features[y].geometry:m?t.geometry:t)&&“GeometryCollection”===u.type)?u.geometries.length:1;for(var x=0;x<l;x++){var b=0,=0;if(null!==(s=h?u.geometries[x]:u)){c=s.coordinates;var w=s.type;switch(f=!r||“Polygon”!==w&&“MultiPolygon”!==w?0:1,w){case null:break;case”Point”:if(!1===e(c,p,y,b,))return!1;p++,b++;break;case”LineString”:case”MultiPoint”:for(n=0;n<c.length;n++){if(!1===e(c[n],p,y,b,))return!1;p++,“MultiPoint”===w&&b++}“LineString”===w&&b++;break;case”Polygon”:case”MultiLineString”:for(n=0;nc||p>u||d>h)return l=a,c=r,u=p,h=d,void(o=0);var g=n.lineString([l,a],t.properties);if(!1===e(g,r,i,d,o))return!1;o++,l=a}))&&void 0}}}))}function u(t,e){if(!t)throw new Error(“geojson is required”);l(t,(function(t,r,a){if(null!==t.geometry){var i=t.geometry.type,o=t.geometry.coordinates;switch(i){case”LineString”:if(!1===e(t,r,a,0,0))return!1;break;case”Polygon”:for(var s=0;sa&&(a=t[o]),t[o]<i&&(i=t[o]);r[n]=i,r[e+n]=a}return r}},{}],69:[function(t,e,r){“use strict”;var n=t(“array-bounds”);e.exports=function(t,e,r){if(!t||null==t.length)throw Error(“Argument should be an array”);null==e&&(e=1);null==r&&(r=n(t,e));for(var a=0;a<e;a++){var i=r[e+a],o=r[a],s=a,l=t.length;if(i===10&&o===-10)for(s=a;s<l;s+=e)t[s]=t[s]===i?1:t[s]===o?0:.5;else if(i===10)for(s=a;s<l;s+=e)t[s]=t[s]===i?1:0;else if(o===-10)for(s=a;s<l;s+=e)t[s]=t[s]===o?0:1;else{var c=i-o;for(s=a;s<l;s+=e)isNaN(t[s])||(t[s]=0===c?.5:(t[s]-o)/c)}}return t}},{“array-bounds”:68}],70:[function(t,e,r){e.exports=function(t,e){var r=“number”==typeof t,n=“number”==typeof e;r&&!n?(e=t,t=0):r||n||(t=0,e=0);var a=(e|=0)-(t|=0);if(a<0)throw new Error(“array length must be positive”);for(var i=new Array(a),o=0,s=t;o<a;o++,s++)i[o]=s;return i}},{}],71:[function(t,e,r){(function®{“use strict”;var n=t(“object-assign”); /*!
    • The buffer module from node.js, for the browser. *
    • @author Feross Aboukhadijeh feross@feross.org http://feross.org
    • @license MIT */function a(t,e){if(t===e)return 0;for(var r=t.length,n=e.length,a=0,i=Math.min(r,n);a=0;c–)if(u[c]!==h[c])return!1;for(c=u.length-1;c>=0;c–)if(s=u[c],!x(t[s],e[s],r,n))return!1;return!0}(t,e,r,n))}return r?t===e:t==e}function b(t){return”[object Arguments]“==Object.prototype.toString.call(t)}function (t,e){if(!t||!e)return!1;if(”[object RegExp]“==Object.prototype.toString.call(e))return e.test(t);try{if(t instanceof e)return!0}catch(t){}return!Error.isPrototypeOf(e)&&!0===e.call({},t)}function w(t,e,r,n){var a;if(“function”!=typeof e)throw new TypeError(‘“block” argument must be a function’);“string”==typeof r&&(n=r,r=null),a=function(t){var e;try{t()}catch(t){e=t}return e}(e),n=(r&&r.name?” (“+r.name+”).”:“.”)+(n?” “+n:“.”),t&&!a&&v(a,r,“Missing expected exception”+n);var i=“string”==typeof n,s=!t&&a&&!r;if((!t&&o.isError(a)&&i&&(a,r)||s)&&v(a,r,“Got unwanted exception”+n),t&&a&&r&&!(a,r)||!t&&a)throw a}f.AssertionError=function(t){this.name=“AssertionError”,this.actual=t.actual,this.expected=t.expected,this.operator=t.operator,t.message?(this.message=t.message,this.generatedMessage=!1):(this.message=function(t){return g(m(t.actual),128)+” “+t.operator+” “+g(m(t.expected),128)}(this),this.generatedMessage=!0);var e=t.stackStartFunction||v;if(Error.captureStackTrace)Error.captureStackTrace(this,e);else{var r=new Error;if(r.stack){var n=r.stack,a=d(e),i=n.indexOf(”\n”+a);if(i>=0){var o=n.indexOf(”\n”,i+1);n=n.substring(o+1)}this.stack=n}}},o.inherits(f.AssertionError,Error),f.fail=v,f.ok=y,f.equal=function(t,e,r){t!=e&&v(t,e,r,“==”,f.equal)},f.notEqual=function(t,e,r){t==e&&v(t,e,r,“!=”,f.notEqual)},f.deepEqual=function(t,e,r){x(t,e,!1)||v(t,e,r,“deepEqual”,f.deepEqual)},f.deepStrictEqual=function(t,e,r){x(t,e,!0)||v(t,e,r,“deepStrictEqual”,f.deepStrictEqual)},f.notDeepEqual=function(t,e,r){x(t,e,!1)&&v(t,e,r,“notDeepEqual”,f.notDeepEqual)},f.notDeepStrictEqual=function t(e,r,n){x(e,r,!0)&&v(e,r,n,“notDeepStrictEqual”,t)},f.strictEqual=function(t,e,r){t!==e&&v(t,e,r,“===”,f.strictEqual)},f.notStrictEqual=function(t,e,r){t===e&&v(t,e,r,“!==”,f.notStrictEqual)},f.throws=function(t,e,r){w(!0,t,e,r)},f.doesNotThrow=function(t,e,r){w(!1,t,e,r)},f.ifError=function(t){if(t)throw t},f.strict=n((function t(e,r){e||v(e,!0,r,“==”,t)}),f,{equal:f.strictEqual,deepEqual:f.deepStrictEqual,notEqual:f.notStrictEqual,notDeepEqual:f.notDeepStrictEqual}),f.strict.strict=f.strict;var T=Object.keys||function(t){var e=[];for(var r in t)s.call(t,r)&&e.push®;return e}}).call(this,“undefined”!=typeof global?global:“undefined”!=typeof self?self:“undefined”!=typeof window?window:{})},{“object-assign”:452,“util/”:74}],72:[function(t,e,r){“function”==typeof Object.create?e.exports=function(t,e){t.super=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:e.exports=function(t,e){t.super_=e;var r=function(){};r.prototype=e.prototype,t.prototype=new r,t.prototype.constructor=t}},{}],73:[function(t,e,r){e.exports=function(t){return t&&“object”==typeof t&&“function”==typeof t.copy&&“function”==typeof t.fill&&“function”==typeof t.readUInt8}},{}],74:[function(t,e,r){(function(e,n){var a=/%[sdj%]/g;r.format=function(t){if(!v(t)){for(var e=[],r=0;r=i)return t;switch(t){case”%s”:return String(n[r++]);case”%d”:return Number(n[r++]);case”%j”:try{return JSON.stringify(n[r++])}catch(t){return”[Circular]“}default:return t}})),l=n[r];r=3&&(n.depth=arguments[2]),arguments.length>=4&&(n.colors=arguments[3]),d(e)?n.showHidden=e:e&&r.extend(n,e),y(n.showHidden)&&(n.showHidden=!1),y(n.depth)&&(n.depth=2),y(n.colors)&&(n.colors=!1),y(n.customInspect)&&(n.customInspect=!0),n.colors&&(n.stylize=l),u(n,t,n.depth)}function l(t,e){var r=s.styles[e];return r?”\x1b[“+s.colors[r][0]+“m”+t+”\x1b[“+s.colors[r][1]+“m”:t}function c(t,e){return t}function u(t,e,n){if(t.customInspect&&e&&T(e.inspect)&&e.inspect!==r.inspect&&(!e.constructor||e.constructor.prototype!==e)){var a=e.inspect(n,t);return v(a)||(a=u(t,a,n)),a}var i=function(t,e){if(y(e))return t.stylize(“undefined”,“undefined”);if(v(e)){var r=“‘”+JSON.stringify(e).replace(/^“|”$/g,“”).replace(/’/g,”\’“).replace(/\”/g,‘“’)+”‘“;return t.stylize(r,“string”)}if(m(e))return t.stylize(“”+e,“number”);if(d(e))return t.stylize(“”+e,“boolean”);if(g(e))return t.stylize(“null”,“null”)}(t,e);if(i)return i;var o=Object.keys(e),s=function(t){var e={};return t.forEach((function(t,r){e[t]=!0})),e}(o);if(t.showHidden&&(o=Object.getOwnPropertyNames(e)),w(e)&&(o.indexOf(“message”)>=0||o.indexOf(“description”)>=0))return h(e);if(0===o.length){if(T(e)){var l=e.name?”: “+e.name:“”;return t.stylize(”[Function”+l+“]”,“special”)}if(x(e))return t.stylize(RegExp.prototype.toString.call(e),“regexp”);if((e))return t.stylize(Date.prototype.toString.call(e),“date”);if(w(e))return h(e)}var c,b=“”,k=!1,A=[“{”,“}”];(p(e)&&(k=!0,A=[”[“,”]“]),T(e))&&(b=” [Function”+(e.name?”: “+e.name:“”)+“]”);return x(e)&&(b=” “+RegExp.prototype.toString.call(e)),_(e)&&(b=” “+Date.prototype.toUTCString.call(e)),w(e)&&(b=” “+h(e)),0!==o.length||k&&0!=e.length?n<0?x(e)?t.stylize(RegExp.prototype.toString.call(e),"regexp"):t.stylize("[Object]","special"):(t.seen.push(e),c=k?function(t,e,r,n,a){for(var i=[],o=0,s=e.length;o=0&&0,t+e.replace(/\u001b[\d\d?m/g,“”).length+1}),0)>60)return r[0]+(“”===e?“”:e+”\n “)+” “+t.join(”,\n “)+” “+r[1];return r[0]+e+” “+t.join(”, “)+” “+r[1]}(c,b,A)):A[0]+b+A[1]}function h(t){return”[“+Error.prototype.toString.call(t)+”]“}function f(t,e,r,n,a,i){var o,s,l;if((l=Object.getOwnPropertyDescriptor(e,a)||{value:e[a]}).get?s=l.set?t.stylize(”[Getter/Setter]“,“special”):t.stylize(”[Getter]“,“special”):l.set&&(s=t.stylize(”[Setter]“,“special”)),E(n,a)||(o=”[“+a+”]“),s||(t.seen.indexOf(l.value)<0?(s=g(r)?u(t,l.value,null):u(t,l.value,r-1)).indexOf("\n")>-1&&(s=i?s.split(”\n”).map((function(t){return” “+t})).join(”\n”).substr(2):”\n”+s.split(”\n”).map((function(t){return” “+t})).join(”\n”)):s=t.stylize(”[Circular]“,“special”)),y(o)){if(i&&a.match(/^\d+$/))return s;(o=JSON.stringify(“”+a)).match(/^“([a-zA-Z_][a-zA-Z_0-9])“$/)?(o=o.substr(1,o.length-2),o=t.stylize(o,“name”)):(o=o.replace(/‘/g,”\’“).replace(/\”/g,‘“’).replace(/(^”|“$)/g,”‘“),o=t.stylize(o,“string”))}return o+”: “+s}function p(t){return Array.isArray(t)}function d(t){return”boolean”==typeof t}function g(t){return null===t}function m(t){return”number”==typeof t}function v(t){return”string”==typeof t}function y(t){return void 0===t}function x(t){return b(t)&&”[object RegExp]“===k(t)}function b(t){return”object”==typeof t&&null!==t}function _(t){return b(t)&&”[object Date]“===k(t)}function w(t){return b(t)&&(”[object Error]“===k(t)||t instanceof Error)}function T(t){return”function”==typeof t}function k(t){return Object.prototype.toString.call(t)}function A(t){return t<10?“0”+t.toString(10):t.toString(10)}r.debuglog=function(t){if(y(i)&&(i=e.env.NODEDEBUG||“”),t=t.toUpperCase(),!o[t])if(new RegExp(”\b”+t+”\b”,“i”).test(i)){var n=e.pid;o[t]=function(){var e=r.format.apply(r,arguments);console.error(“%s %d: %s”,t,n,e)}}else o[t]=function(){};return o[t]},r.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”},r.isArray=p,r.isBoolean=d,r.isNull=g,r.isNullOrUndefined=function(t){return null==t},r.isNumber=m,r.isString=v,r.isSymbol=function(t){return”symbol”==typeof t},r.isUndefined=y,r.isRegExp=x,r.isObject=b,r.isDate=,r.isError=w,r.isFunction=T,r.isPrimitive=function(t){return null===t||“boolean”==typeof t||“number”==typeof t||“string”==typeof t||“symbol”==typeof t||“undefined”==typeof t},r.isBuffer=t(“./support/isBuffer”);var M=[“Jan”,“Feb”,“Mar”,“Apr”,“May”,“Jun”,“Jul”,“Aug”,“Sep”,“Oct”,“Nov”,“Dec”];function S(){var t=new Date,e=[A(t.getHours()),A(t.getMinutes()),A(t.getSeconds())].join(”:“);return[t.getDate(),M[t.getMonth()],e].join(” “)}function E(t,e){return Object.prototype.hasOwnProperty.call(t,e)}r.log=function(){console.log(”%s - %s”,S(),r.format.apply(r,arguments))},r.inherits=t(“inherits”),r._extend=function(t,e){if(!e||!b(e))return t;for(var r=Object.keys(e),n=r.length;n–;)t[r[n]]=e[r[n]];return t}}).call(this,t(”_process”),“undefined”!=typeof global?global:“undefined”!=typeof self?self:“undefined”!=typeof window?window:{})},{“./support/isBuffer”:73,_process:480,inherits:72}],75:[function(t,e,r){e.exports=function(t){return atob(t)}},{}],76:[function(t,e,r){“use strict”;e.exports=function(t,e){for(var r=e.length,i=new Array(r+1),o=0;o<r;++o){for(var s=new Array(r+1),l=0;l<=r;++l)s[l]=t[l][o];i[o]=s}i[r]=new Array(r+1);for(o=0;o<=r;++o)i[r][o]=1;var c=new Array(r+1);for(o=0;o<r;++o)c[o]=e[o];c[r]=1;var u=n(i,c),h=a(u[r+1]);0===h&&(h=1);var f=new Array(r+1);for(o=0;o<=r;++o)f[o]=a(u[o])/h;return f};var n=t(“robust-linear-solve”);function a(t){for(var e=0,r=0;r<t.length;++r)e+=t[r];return e}},{“robust-linear-solve”:499}],77:[function(t,e,r){“use strict”;r.byteLength=function(t){var e=c(t),r=e[0],n=e[1];return 3(r+n)/4-n},r.toByteArray=function(t){var e,r,n=c(t),o=n[0],s=n[1],l=new i(function(t,e,r){return 3(e+r)/4-r}(0,o,s)),u=0,h=s>0?o-4:o;for(r=0;r>16&255,l[u++]=e>>8&255,l[u++]=255&e;2===s&&(e=a[t.charCodeAt®]<<2|a[t.charCodeAt(r+1)]>>4,l[u++]=255&e);1===s&&(e=a[t.charCodeAt®]<<10|a[t.charCodeAt(r+1)]<<4|a[t.charCodeAt(r+2)]>>2,l[u++]=e>>8&255,l[u++]=255&e);return l},r.fromByteArray=function(t){for(var e,r=t.length,a=r%3,i=[],o=0,s=r-a;os?s:o+16383));1===a?(e=t[r-1],i.push(n[e>>2]+n[e<<4&63]+"==")):2===a&&(e=(t[r-2]<<8)+t[r-1],i.push(n[e>>10]+n[e>>4&63]+n[e<<2&63]+"="));return i.join("")};for(var n=[],a=[],i="undefined"!=typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,l=o.length;s0)throw new Error(“Invalid string. Length must be a multiple of 4”);var r=t.indexOf(“=”);return-1===r&&(r=e),[r,r===e?0:4-r%4]}function u(t,e,r){for(var a,i,o=[],s=e;s>18&63]+n[i>>12&63]+n[i>>6&63]+n[63&i]);return o.join(“”)}a[“-”.charCodeAt(0)]=62,a[”_“.charCodeAt(0)]=63},{}],78:[function(t,e,r){“use strict”;var n=t(“./lib/rationalize”);e.exports=function(t,e){return n(t[0].mul(e[1]).add(e[0].mul(t[1])),t[1].mul(e[1]))}},{“./lib/rationalize”:88}],79:[function(t,e,r){“use strict”;e.exports=function(t,e){return t[0].mul(e[1]).cmp(e[0].mul(t[1]))}},{}],80:[function(t,e,r){“use strict”;var n=t(“./lib/rationalize”);e.exports=function(t,e){return n(t[0].mul(e[1]),t[1].mul(e[0]))}},{“./lib/rationalize”:88}],81:[function(t,e,r){“use strict”;var n=t(“./is-rat”),a=t(“./lib/is-bn”),i=t(“./lib/num-to-bn”),o=t(“./lib/str-to-bn”),s=t(“./lib/rationalize”),l=t(“./div”);e.exports=function t(e,r){if(n(e))return r?l(e,t®):[e[0].clone(),e[1].clone()];var c,u,h=0;if(a(e))c=e.clone();else if(“string”==typeof e)c=o(e);else{if(0===e)return[i(0),i(1)];if(e===Math.floor(e))c=i(e);else{for(;e!==Math.floor(e);)e=Math.pow(2,256),h-=256;c=i(e)}}if(n®)c.mul(r[1]),u=r[0].clone();else if(a®)u=r.clone();else if(“string”==typeof r)u=o®;else if®if(r===Math.floor®)u=i®;else{for(;r!==Math.floor®;)r*=Math.pow(2,256),h+=256;u=i®}else u=i(1);h>0?c=c.ushln(h):h<0&&(u=u.ushln(-h));return s(c,u)}},{"./div":80,"./is-rat":82,"./lib/is-bn":86,"./lib/num-to-bn":87,"./lib/rationalize":88,"./lib/str-to-bn":89}],82:[function(t,e,r){"use strict";var n=t("./lib/is-bn");e.exports=function(t){return Array.isArray(t)&&2===t.length&&n(t[0])&&n(t[1])}},{"./lib/is-bn":86}],83:[function(t,e,r){"use strict";var n=t("bn.js");e.exports=function(t){return t.cmp(new n(0))}},{"bn.js":97}],84:[function(t,e,r){"use strict";var n=t("./bn-sign");e.exports=function(t){var e=t.length,r=t.words,a=0;if(1===e)a=r[0];else if(2===e)a=r[0]+67108864*r[1];else for(var i=0;i20)return 52;return r+32}},{“bit-twiddle”:95,“double-bits”:168}],86:[function(t,e,r){“use strict”;t(“bn.js”);e.exports=function(t){return t&&“object”==typeof t&&Boolean(t.words)}},{“bn.js”:97}],87:[function(t,e,r){“use strict”;var n=t(“bn.js”),a=t(“double-bits”);e.exports=function(t){var e=a.exponent(t);return e<52?new n(t):new n(t*Math.pow(2,52-e)).ushln(e-52)}},{"bn.js":97,"double-bits":168}],88:[function(t,e,r){"use strict";var n=t("./num-to-bn"),a=t("./bn-sign");e.exports=function(t,e){var r=a(t),i=a(e);if(0===r)return[n(0),n(1)];if(0===i)return[n(0),n(0)];i<0&&(t=t.neg(),e=e.neg());var o=t.gcd(e);if(o.cmpn(1))return[t.div(o),e.div(o)];return[t,e]}},{"./bn-sign":83,"./num-to-bn":87}],89:[function(t,e,r){"use strict";var n=t("bn.js");e.exports=function(t){return new n(t)}},{"bn.js":97}],90:[function(t,e,r){"use strict";var n=t("./lib/rationalize");e.exports=function(t,e){return n(t[0].mul(e[0]),t[1].mul(e[1]))}},{"./lib/rationalize":88}],91:[function(t,e,r){"use strict";var n=t("./lib/bn-sign");e.exports=function(t){return n(t[0])*n(t[1])}},{"./lib/bn-sign":83}],92:[function(t,e,r){"use strict";var n=t("./lib/rationalize");e.exports=function(t,e){return n(t[0].mul(e[1]).sub(t[1].mul(e[0])),t[1].mul(e[1]))}},{"./lib/rationalize":88}],93:[function(t,e,r){"use strict";var n=t("./lib/bn-to-num"),a=t("./lib/ctz");e.exports=function(t){var e=t[0],r=t[1];if(0===e.cmpn(0))return 0;var i=e.abs().divmod(r.abs()),o=i.div,s=n(o),l=i.mod,c=e.negative!==r.negative?-1:1;if(0===l.cmpn(0))return c*s;if(s){var u=a(s)+4,h=n(l.ushln(u).divRound(r));return c*(s+h*Math.pow(2,-u))}var f=r.bitLength()-l.bitLength()+53;h=n(l.ushln(f).divRound(r));return f<1023?c*h*Math.pow(2,-f):(h*=Math.pow(2,-1023),c*h*Math.pow(2,1023-f))}},{"./lib/bn-to-num":84,"./lib/ctz":85}],94:[function(t,e,r){"use strict";function n(t,e,r,n,a){var i=["function ",t,"(a,l,h,",n.join(","),"){",a?"":"var i=",r?"l-1":"h+1",";while(l<=h){var m=(l+h)>>>1,x=a[m]“];return a?e.indexOf(“c”)<0?i.push(";if(x===y){return m}else if(x<=y){"):i.push(";var p=c(x,y);if(p===0){return m}else if(p<=0){"):i.push(";if(",e,"){i=m;"),r?i.push("l=m+1}else{h=m-1}"):i.push("h=m-1}else{l=m+1}"),i.push("}"),a?i.push("return -1};"):i.push("return i};"),i.join("")}function a(t,e,r,a){return new Function([n("A","x"+t+"y",e,["y"],a),n("P","c(x,y)"+t+"0",e,["y","c"],a),"function dispatchBsearch",r,"(a,y,c,l,h){if(typeof(c)==='function'){return P(a,(l===void 0)?0:l|0,(h===void 0)?a.length-1:h|0,y,c)}else{return A(a,(c===void 0)?0:c|0,(l===void 0)?a.length-1:l|0,y)}}return dispatchBsearch",r].join(""))()}e.exports={ge:a(">=“,!1,“GE”),gt:a(“>”,!1,“GT”),lt:a(”<“,!0,“LT”),le:a(”<=“,!0,“LE”),eq:a(“-”,!0,“EQ”,!0)}},{}],95:[function(t,e,r){“use strict”;function n(t){var e=32;return(t&=-t)&&e–,65535&t&&(e-=16),16711935&t&&(e-=8),252645135&t&&(e-=4),858993459&t&&(e-=2),1431655765&t&&(e-=1),e}r.INT_BITS=32,r.INT_MAX=2147483647,r.INTMIN=-1<<31,r.sign=function(t){return(t>0)-(t<0)},r.abs=function(t){var e=t>>31;return(t^e)-e},r.min=function(t,e){return e^(t^e)&-(t65535)<<4,e|=r=((t>>>=e)>255)<<3,e|=r=((t>>>=r)>15)<<2,(e|=r=((t>>>=r)>3)<<1)|(t>>>=r)>>1},r.log10=function(t){return t>=1e9?9:t>=1e8?8:t>=1e7?7:t>=1e6?6:t>=1e5?5:t>=1e4?4:t>=1e3?3:t>=100?2:t>=10?1:0},r.popCount=function(t){return 16843009*((t=(858993459&(t-=t>>>1&1431655765))+(t>>>2&858993459))+(t>>>4)&252645135)>>>24},r.countTrailingZeros=n,r.nextPow2=function(t){return t+=0===t,–t,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)+1},r.prevPow2=function(t){return t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)-(t>>>1)},r.parity=function(t){return t^=t>>>16,t^=t>>>8,t^=t>>>4,27030>>>(t&=15)&1};var a=new Array(256);!function(t){for(var e=0;e<256;++e){var r=e,n=e,a=7;for(r>>>=1;r;r>>>=1)n<<=1,n|=1&r,–a;t[e]=n<>>8&255]<<16|a[t>>>16&255]<<8|a[t>>>24&255]},r.interleave2=function(t,e){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))<<1},r.deinterleave2=function(t,e){return(t=65535&((t=16711935&((t=252645135&((t=858993459&((t=t>>>e&1431655765)|t>>>1))|t>>>2))|t>>>4))|t>>>16))<<16>>16},r.interleave3=function(t,e,r){return t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2),(t|=(e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2))<<1)|(r=1227133513&((r=3272356035&((r=251719695&((r=4278190335&((r&=1023)|r<<16))|r<<8))|r<<4))|r<<2))<<2},r.deinterleave3=function(t,e){return(t=1023&((t=4278190335&((t=251719695&((t=3272356035&((t=t>>>e&1227133513)|t>>>2))|t>>>4))|t>>>8))|t>>>16))<<22>>22},r.nextCombination=function(t){var e=t|t-1;return e+1|(~e&-~e)-1>>>n(t)+1}},{}],96:[function(t,e,r){“use strict”;var n=t(“clamp”);e.exports=function(t,e){e||(e={});var r,o,s,l,c,u,h,f,p,d,g,m=null==e.cutoff?.25:e.cutoff,v=null==e.radius?8:e.radius,y=e.channel||0;if(ArrayBuffer.isView(t)||Array.isArray(t)){if(!e.width||!e.height)throw Error(“For raw data width and height should be provided by options”);r=e.width,o=e.height,l=t,u=e.stride?e.stride:Math.floor(t.length/r/o)}else window.HTMLCanvasElement&&t instanceof window.HTMLCanvasElement?(h=(f=t).getContext(“2d”),r=f.width,o=f.height,p=h.getImageData(0,0,r,o),l=p.data,u=4):window.CanvasRenderingContext2D&&t instanceof window.CanvasRenderingContext2D?(f=t.canvas,h=t,r=f.width,o=f.height,p=h.getImageData(0,0,r,o),l=p.data,u=4):window.ImageData&&t instanceof window.ImageData&&(p=t,r=t.width,o=t.height,l=p.data,u=4);if(s=Math.max(r,o),window.Uint8ClampedArray&&l instanceof window.Uint8ClampedArray||window.Uint8Array&&l instanceof window.Uint8Array)for(c=l,l=Array(r*o),d=0,g=c.length;d<g;d++)l[d]=c[d*u+y]/255;else if(1!==u)throw Error(“Raw data can have only 1 value per pixel”);var x=Array(r*o),b=Array(r*o),=Array(s),w=Array(s),T=Array(s+1),k=Array(s);for(d=0,g=r*o;d=49&&o<=54?o-49+10:o>=17&&o<=22?o-17+10:15&o}return n}function l(t,e,r,n){for(var a=0,i=Math.min(t.length,r),o=e;o=49?s-49+10:s>=17?s-17+10:s}return a}i.isBN=function(t){return t instanceof i||null!==t&&“object”==typeof t&&t.constructor.wordSize===i.wordSize&&Array.isArray(t.words)},i.max=function(t,e){return t.cmp(e)>0?t:e},i.min=function(t,e){return t.cmp(e)<0?t:e},i.prototype._init=function(t,e,r){if("number"==typeof t)return this._initNumber(t,e,r);if("object"==typeof t)return this._initArray(t,e,r);"hex"===e&&(e=16),n(e===(0|e)&&e>=2&&e<=36);var a=0;“-”===(t=t.toString().replace(/\s+/g,“”))[0]&&a++,16===e?this._parseHex(t,a):this._parseBase(t,e,a),“-”===t[0]&&(this.negative=1),this.strip(),“le”===r&&this._initArray(this.toArray(),e,r)},i.prototype._initNumber=function(t,e,r){t<0&&(this.negative=1,t=-t),t<67108864?(this.words=[67108863&t],this.length=1):t<4503599627370496?(this.words=[67108863&t,t/67108864&67108863],this.length=2):(n(t<9007199254740992),this.words=[67108863&t,t/67108864&67108863,1],this.length=3),"le"===r&&this._initArray(this.toArray(),e,r)},i.prototype._initArray=function(t,e,r){if(n("number"==typeof t.length),t.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(t.length/3),this.words=new Array(this.length);for(var a=0;a=0;a-=3)o=t[a]|t[a-1]<<8|t[a-2]<<16,this.words[i]|=o<>>26-s&67108863,(s+=24)>=26&&(s-=26,i++);else if(“le”===r)for(a=0,i=0;a>>26-s&67108863,(s+=24)>=26&&(s-=26,i++);return this.strip()},i.prototype._parseHex=function(t,e){this.length=Math.ceil((t.length-e)/6),this.words=new Array(this.length);for(var r=0;r=e;r-=6)a=s(t,r,r+6),this.words[n]|=a<>>26-i&4194303,(i+=24)>=26&&(i-=26,n++);r+6!==e&&(a=s(t,e,r+6),this.words[n]|=a<>>26-i&4194303),this.strip()},i.prototype._parseBase=function(t,e,r){this.words=[0],this.length=1;for(var n=0,a=1;a<=67108863;a=e)n++;n–,a=a/e|0;for(var i=t.length-r,o=i%n,s=Math.min(i,i-o)+r,c=0,u=r;u<s;u+=n)c=l(t,u,u+n,e),this.imuln(a),this.words[0]+c<67108864?this.words[0]+=c:this._iaddn©;if(0!==o){var h=1;for(c=l(t,u,t.length,e),u=0;u<o;u++)h=e;this.imuln(h),this.words[0]+c<67108864?this.words[0]+=c:this._iaddn(c)}},i.prototype.copy=function(t){t.words=new Array(this.length);for(var e=0;e1&&0===this.words[this.length-1];)this.length–;return this._normSign()},i.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},i.prototype.inspect=function(){return(this.red?””};var c=[“”,“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”],u=[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],h=[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];function f(t,e,r){r.negative=e.negative^t.negative;var n=t.length+e.length|0;r.length=n,n=n-1|0;var a=0|t.words[0],i=0|e.words[0],o=ai,s=67108863&o,l=o/67108864|0;r.words[0]=s;for(var c=1;c>>26,h=67108863&l,f=Math.min(c,e.length-1),p=Math.max(0,c-t.length+1);p<=f;p++){var d=c-p|0;u+=(o=(a=0|t.words[d])(i=0|e.words[p])+h)/67108864|0,h=67108863&o}r.words[c]=0|h,l=0|u}return 0!==l?r.words[c]=0|l:r.length–,r.strip()}i.prototype.toString=function(t,e){var r;if(e=0|e||1,16===(t=t||10)||“hex”===t){r=“”;for(var a=0,i=0,o=0;o>>24-a&16777215)||o!==this.length-1?c[6-l.length]+l+r:l+r,(a+=2)>=26&&(a-=26,o–)}for(0!==i&&(r=i.toString(16)+r);r.length%e!=0;)r=“0”+r;return 0!==this.negative&&(r=“-”+r),r}if(t===(0|t)&&t>=2&&t<=36){var f=u[t],p=h[t];r=“”;var d=this.clone();for(d.negative=0;!d.isZero();){var g=d.modn(p).toString(t);r=(d=d.idivn(p)).isZero()?g+r:c[f-g.length]+g+r}for(this.isZero()&&(r=“0”+r);r.length%e!=0;)r=“0”+r;return 0!==this.negative&&(r=“-”+r),r}n(!1,“Base should be between 2 and 36”)},i.prototype.toNumber=function(){var t=this.words[0];return 2===this.length?t+=67108864*this.words[1]:3===this.length&&1===this.words[2]?t+=4503599627370496+67108864this.words[1]:this.length>2&&n(!1,“Number can only safely store up to 53 bits”),0!==this.negative?-t:t},i.prototype.toJSON=function(){return this.toString(16)},i.prototype.toBuffer=function(t,e){return n(“undefined”!=typeof o),this.toArrayLike(o,t,e)},i.prototype.toArray=function(t,e){return this.toArrayLike(Array,t,e)},i.prototype.toArrayLike=function(t,e,r){var a=this.byteLength(),i=r||Math.max(1,a);n(a<=i,“byte array longer than desired length”),n(i>0,“Requested array length <= 0”),this.strip();var o,s,l=“le”===e,c=new t(i),u=this.clone();if(l){for(s=0;!u.isZero();s++)o=u.andln(255),u.iushrn(8),c[s]=o;for(;s=4096&&(r+=13,e>>>=13),e>=64&&(r+=7,e>>>=7),e>=8&&(r+=4,e>>>=4),e>=2&&(r+=2,e>>>=2),r+e},i.prototype._zeroBits=function(t){if(0===t)return 26;var e=t,r=0;return 0==(8191&e)&&(r+=13,e>>>=13),0==(127&e)&&(r+=7,e>>>=7),0==(15&e)&&(r+=4,e>>>=4),0==(3&e)&&(r+=2,e>>>=2),0==(1&e)&&r++,r},i.prototype.bitLength=function(){var t=this.words[this.length-1],e=this._countBits(t);return 26(this.length-1)+e},i.prototype.zeroBits=function(){if(this.isZero())return 0;for(var t=0,e=0;et.length?this.clone().ior(t):t.clone().ior(this)},i.prototype.uor=function(t){return this.length>t.length?this.clone().iuor(t):t.clone().iuor(this)},i.prototype.iuand=function(t){var e;e=this.length>t.length?t:this;for(var r=0;rt.length?this.clone().iand(t):t.clone().iand(this)},i.prototype.uand=function(t){return this.length>t.length?this.clone().iuand(t):t.clone().iuand(this)},i.prototype.iuxor=function(t){var e,r;this.length>t.length?(e=this,r=t):(e=t,r=this);for(var n=0;nt.length?this.clone().ixor(t):t.clone().ixor(this)},i.prototype.uxor=function(t){return this.length>t.length?this.clone().iuxor(t):t.clone().iuxor(this)},i.prototype.inotn=function(t){n(“number”==typeof t&&t>=0);var e=0|Math.ceil(t/26),r=t%26;this._expand(e),r>0&&e–;for(var a=0;a0&&(this.words[a]=~this.words[a]&67108863>>26-r),this.strip()},i.prototype.notn=function(t){return this.clone().inotn(t)},i.prototype.setn=function(t,e){n(“number”==typeof t&&t>=0);var r=t/26|0,a=t%26;return this._expand(r+1),this.words[r]=e?this.words[r]|1<t.length?(r=this,n=t):(r=t,n=this);for(var a=0,i=0;i>>26;for(;0!==a&&i>>26;if(this.length=r.length,0!==a)this.words[this.length]=a,this.length++;else if(r!==this)for(;it.length?this.clone().iadd(t):t.clone().iadd(this)},i.prototype.isub=function(t){if(0!==t.negative){t.negative=0;var e=this.iadd(t);return t.negative=1,e._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(t),this.negative=1,this.normSign();var r,n,a=this.cmp(t);if(0===a)return this.negative=0,this.length=1,this.words[0]=0,this;a>0?(r=this,n=t):(r=t,n=this);for(var i=0,o=0;o>26,this.words[o]=67108863&e;for(;0!==i&&o>26,this.words[o]=67108863&e;if(0===i&&o>>13,p=0|o[1],d=8191&p,g=p>>>13,m=0|o[2],v=8191&m,y=m>>>13,x=0|o[3],b=8191&x,=x>>>13,w=0|o[4],T=8191&w,k=w>>>13,A=0|o[5],M=8191&A,S=A>>>13,E=0|o[6],C=8191&E,L=E>>>13,P=0|o[7],I=8191&P,z=P>>>13,O=0|o[8],D=8191&O,R=O>>>13,F=0|o[9],B=8191&F,N=F>>>13,j=0|s[0],V=8191&j,U=j>>>13,q=0|s[1],H=8191&q,G=q>>>13,Y=0|s[2],W=8191&Y,Z=Y>>>13,X=0|s[3],J=8191&X,K=X>>>13,Q=0|s[4],$=8191&Q,tt=Q>>>13,et=0|s[5],rt=8191&et,nt=et>>>13,at=0|s[6],it=8191&at,ot=at>>>13,st=0|s[7],lt=8191&st,ct=st>>>13,ut=0|s[8],ht=8191&ut,ft=ut>>>13,pt=0|s[9],dt=8191&pt,gt=pt>>>13;r.negative=t.negative^e.negative,r.length=19;var mt=(c+(n=Math.imul(h,V))|0)+((8191&(a=(a=Math.imul(h,U))+Math.imul(f,V)|0))<<13)|0;c=((i=Math.imul(f,U))+(a>>>13)|0)+(mt>>>26)|0,mt&=67108863,n=Math.imul(d,V),a=(a=Math.imul(d,U))+Math.imul(g,V)|0,i=Math.imul(g,U);var vt=(c+(n=n+Math.imul(h,H)|0)|0)+((8191&(a=(a=a+Math.imul(h,G)|0)+Math.imul(f,H)|0))<<13)|0;c=((i=i+Math.imul(f,G)|0)+(a>>>13)|0)+(vt>>>26)|0,vt&=67108863,n=Math.imul(v,V),a=(a=Math.imul(v,U))+Math.imul(y,V)|0,i=Math.imul(y,U),n=n+Math.imul(d,H)|0,a=(a=a+Math.imul(d,G)|0)+Math.imul(g,H)|0,i=i+Math.imul(g,G)|0;var yt=(c+(n=n+Math.imul(h,W)|0)|0)+((8191&(a=(a=a+Math.imul(h,Z)|0)+Math.imul(f,W)|0))<<13)|0;c=((i=i+Math.imul(f,Z)|0)+(a>>>13)|0)+(yt>>>26)|0,yt&=67108863,n=Math.imul(b,V),a=(a=Math.imul(b,U))+Math.imul(,V)|0,i=Math.imul(,U),n=n+Math.imul(v,H)|0,a=(a=a+Math.imul(v,G)|0)+Math.imul(y,H)|0,i=i+Math.imul(y,G)|0,n=n+Math.imul(d,W)|0,a=(a=a+Math.imul(d,Z)|0)+Math.imul(g,W)|0,i=i+Math.imul(g,Z)|0;var xt=(c+(n=n+Math.imul(h,J)|0)|0)+((8191&(a=(a=a+Math.imul(h,K)|0)+Math.imul(f,J)|0))<<13)|0;c=((i=i+Math.imul(f,K)|0)+(a>>>13)|0)+(xt>>>26)|0,xt&=67108863,n=Math.imul(T,V),a=(a=Math.imul(T,U))+Math.imul(k,V)|0,i=Math.imul(k,U),n=n+Math.imul(b,H)|0,a=(a=a+Math.imul(b,G)|0)+Math.imul(,H)|0,i=i+Math.imul(,G)|0,n=n+Math.imul(v,W)|0,a=(a=a+Math.imul(v,Z)|0)+Math.imul(y,W)|0,i=i+Math.imul(y,Z)|0,n=n+Math.imul(d,J)|0,a=(a=a+Math.imul(d,K)|0)+Math.imul(g,J)|0,i=i+Math.imul(g,K)|0;var bt=(c+(n=n+Math.imul(h,$)|0)|0)+((8191&(a=(a=a+Math.imul(h,tt)|0)+Math.imul(f,$)|0))<<13)|0;c=((i=i+Math.imul(f,tt)|0)+(a>>>13)|0)+(bt>>>26)|0,bt&=67108863,n=Math.imul(M,V),a=(a=Math.imul(M,U))+Math.imul(S,V)|0,i=Math.imul(S,U),n=n+Math.imul(T,H)|0,a=(a=a+Math.imul(T,G)|0)+Math.imul(k,H)|0,i=i+Math.imul(k,G)|0,n=n+Math.imul(b,W)|0,a=(a=a+Math.imul(b,Z)|0)+Math.imul(,W)|0,i=i+Math.imul(,Z)|0,n=n+Math.imul(v,J)|0,a=(a=a+Math.imul(v,K)|0)+Math.imul(y,J)|0,i=i+Math.imul(y,K)|0,n=n+Math.imul(d,$)|0,a=(a=a+Math.imul(d,tt)|0)+Math.imul(g,$)|0,i=i+Math.imul(g,tt)|0;var _t=(c+(n=n+Math.imul(h,rt)|0)|0)+((8191&(a=(a=a+Math.imul(h,nt)|0)+Math.imul(f,rt)|0))<<13)|0;c=((i=i+Math.imul(f,nt)|0)+(a>>>13)|0)+(_t>>>26)|0,t&=67108863,n=Math.imul(C,V),a=(a=Math.imul(C,U))+Math.imul(L,V)|0,i=Math.imul(L,U),n=n+Math.imul(M,H)|0,a=(a=a+Math.imul(M,G)|0)+Math.imul(S,H)|0,i=i+Math.imul(S,G)|0,n=n+Math.imul(T,W)|0,a=(a=a+Math.imul(T,Z)|0)+Math.imul(k,W)|0,i=i+Math.imul(k,Z)|0,n=n+Math.imul(b,J)|0,a=(a=a+Math.imul(b,K)|0)+Math.imul(,J)|0,i=i+Math.imul(,K)|0,n=n+Math.imul(v,$)|0,a=(a=a+Math.imul(v,tt)|0)+Math.imul(y,$)|0,i=i+Math.imul(y,tt)|0,n=n+Math.imul(d,rt)|0,a=(a=a+Math.imul(d,nt)|0)+Math.imul(g,rt)|0,i=i+Math.imul(g,nt)|0;var wt=(c+(n=n+Math.imul(h,it)|0)|0)+((8191&(a=(a=a+Math.imul(h,ot)|0)+Math.imul(f,it)|0))<<13)|0;c=((i=i+Math.imul(f,ot)|0)+(a>>>13)|0)+(wt>>>26)|0,wt&=67108863,n=Math.imul(I,V),a=(a=Math.imul(I,U))+Math.imul(z,V)|0,i=Math.imul(z,U),n=n+Math.imul(C,H)|0,a=(a=a+Math.imul(C,G)|0)+Math.imul(L,H)|0,i=i+Math.imul(L,G)|0,n=n+Math.imul(M,W)|0,a=(a=a+Math.imul(M,Z)|0)+Math.imul(S,W)|0,i=i+Math.imul(S,Z)|0,n=n+Math.imul(T,J)|0,a=(a=a+Math.imul(T,K)|0)+Math.imul(k,J)|0,i=i+Math.imul(k,K)|0,n=n+Math.imul(b,$)|0,a=(a=a+Math.imul(b,tt)|0)+Math.imul(,$)|0,i=i+Math.imul(,tt)|0,n=n+Math.imul(v,rt)|0,a=(a=a+Math.imul(v,nt)|0)+Math.imul(y,rt)|0,i=i+Math.imul(y,nt)|0,n=n+Math.imul(d,it)|0,a=(a=a+Math.imul(d,ot)|0)+Math.imul(g,it)|0,i=i+Math.imul(g,ot)|0;var Tt=(c+(n=n+Math.imul(h,lt)|0)|0)+((8191&(a=(a=a+Math.imul(h,ct)|0)+Math.imul(f,lt)|0))<<13)|0;c=((i=i+Math.imul(f,ct)|0)+(a>>>13)|0)+(Tt>>>26)|0,Tt&=67108863,n=Math.imul(D,V),a=(a=Math.imul(D,U))+Math.imul(R,V)|0,i=Math.imul(R,U),n=n+Math.imul(I,H)|0,a=(a=a+Math.imul(I,G)|0)+Math.imul(z,H)|0,i=i+Math.imul(z,G)|0,n=n+Math.imul(C,W)|0,a=(a=a+Math.imul(C,Z)|0)+Math.imul(L,W)|0,i=i+Math.imul(L,Z)|0,n=n+Math.imul(M,J)|0,a=(a=a+Math.imul(M,K)|0)+Math.imul(S,J)|0,i=i+Math.imul(S,K)|0,n=n+Math.imul(T,$)|0,a=(a=a+Math.imul(T,tt)|0)+Math.imul(k,$)|0,i=i+Math.imul(k,tt)|0,n=n+Math.imul(b,rt)|0,a=(a=a+Math.imul(b,nt)|0)+Math.imul(,rt)|0,i=i+Math.imul(,nt)|0,n=n+Math.imul(v,it)|0,a=(a=a+Math.imul(v,ot)|0)+Math.imul(y,it)|0,i=i+Math.imul(y,ot)|0,n=n+Math.imul(d,lt)|0,a=(a=a+Math.imul(d,ct)|0)+Math.imul(g,lt)|0,i=i+Math.imul(g,ct)|0;var kt=(c+(n=n+Math.imul(h,ht)|0)|0)+((8191&(a=(a=a+Math.imul(h,ft)|0)+Math.imul(f,ht)|0))<<13)|0;c=((i=i+Math.imul(f,ft)|0)+(a>>>13)|0)+(kt>>>26)|0,kt&=67108863,n=Math.imul(B,V),a=(a=Math.imul(B,U))+Math.imul(N,V)|0,i=Math.imul(N,U),n=n+Math.imul(D,H)|0,a=(a=a+Math.imul(D,G)|0)+Math.imul(R,H)|0,i=i+Math.imul(R,G)|0,n=n+Math.imul(I,W)|0,a=(a=a+Math.imul(I,Z)|0)+Math.imul(z,W)|0,i=i+Math.imul(z,Z)|0,n=n+Math.imul(C,J)|0,a=(a=a+Math.imul(C,K)|0)+Math.imul(L,J)|0,i=i+Math.imul(L,K)|0,n=n+Math.imul(M,$)|0,a=(a=a+Math.imul(M,tt)|0)+Math.imul(S,$)|0,i=i+Math.imul(S,tt)|0,n=n+Math.imul(T,rt)|0,a=(a=a+Math.imul(T,nt)|0)+Math.imul(k,rt)|0,i=i+Math.imul(k,nt)|0,n=n+Math.imul(b,it)|0,a=(a=a+Math.imul(b,ot)|0)+Math.imul(,it)|0,i=i+Math.imul(,ot)|0,n=n+Math.imul(v,lt)|0,a=(a=a+Math.imul(v,ct)|0)+Math.imul(y,lt)|0,i=i+Math.imul(y,ct)|0,n=n+Math.imul(d,ht)|0,a=(a=a+Math.imul(d,ft)|0)+Math.imul(g,ht)|0,i=i+Math.imul(g,ft)|0;var At=(c+(n=n+Math.imul(h,dt)|0)|0)+((8191&(a=(a=a+Math.imul(h,gt)|0)+Math.imul(f,dt)|0))<<13)|0;c=((i=i+Math.imul(f,gt)|0)+(a>>>13)|0)+(At>>>26)|0,At&=67108863,n=Math.imul(B,H),a=(a=Math.imul(B,G))+Math.imul(N,H)|0,i=Math.imul(N,G),n=n+Math.imul(D,W)|0,a=(a=a+Math.imul(D,Z)|0)+Math.imul(R,W)|0,i=i+Math.imul(R,Z)|0,n=n+Math.imul(I,J)|0,a=(a=a+Math.imul(I,K)|0)+Math.imul(z,J)|0,i=i+Math.imul(z,K)|0,n=n+Math.imul(C,$)|0,a=(a=a+Math.imul(C,tt)|0)+Math.imul(L,$)|0,i=i+Math.imul(L,tt)|0,n=n+Math.imul(M,rt)|0,a=(a=a+Math.imul(M,nt)|0)+Math.imul(S,rt)|0,i=i+Math.imul(S,nt)|0,n=n+Math.imul(T,it)|0,a=(a=a+Math.imul(T,ot)|0)+Math.imul(k,it)|0,i=i+Math.imul(k,ot)|0,n=n+Math.imul(b,lt)|0,a=(a=a+Math.imul(b,ct)|0)+Math.imul(,lt)|0,i=i+Math.imul(,ct)|0,n=n+Math.imul(v,ht)|0,a=(a=a+Math.imul(v,ft)|0)+Math.imul(y,ht)|0,i=i+Math.imul(y,ft)|0;var Mt=(c+(n=n+Math.imul(d,dt)|0)|0)+((8191&(a=(a=a+Math.imul(d,gt)|0)+Math.imul(g,dt)|0))<<13)|0;c=((i=i+Math.imul(g,gt)|0)+(a>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,n=Math.imul(B,W),a=(a=Math.imul(B,Z))+Math.imul(N,W)|0,i=Math.imul(N,Z),n=n+Math.imul(D,J)|0,a=(a=a+Math.imul(D,K)|0)+Math.imul(R,J)|0,i=i+Math.imul(R,K)|0,n=n+Math.imul(I,$)|0,a=(a=a+Math.imul(I,tt)|0)+Math.imul(z,$)|0,i=i+Math.imul(z,tt)|0,n=n+Math.imul(C,rt)|0,a=(a=a+Math.imul(C,nt)|0)+Math.imul(L,rt)|0,i=i+Math.imul(L,nt)|0,n=n+Math.imul(M,it)|0,a=(a=a+Math.imul(M,ot)|0)+Math.imul(S,it)|0,i=i+Math.imul(S,ot)|0,n=n+Math.imul(T,lt)|0,a=(a=a+Math.imul(T,ct)|0)+Math.imul(k,lt)|0,i=i+Math.imul(k,ct)|0,n=n+Math.imul(b,ht)|0,a=(a=a+Math.imul(b,ft)|0)+Math.imul(,ht)|0,i=i+Math.imul(,ft)|0;var St=(c+(n=n+Math.imul(v,dt)|0)|0)+((8191&(a=(a=a+Math.imul(v,gt)|0)+Math.imul(y,dt)|0))<<13)|0;c=((i=i+Math.imul(y,gt)|0)+(a>>>13)|0)+(St>>>26)|0,St&=67108863,n=Math.imul(B,J),a=(a=Math.imul(B,K))+Math.imul(N,J)|0,i=Math.imul(N,K),n=n+Math.imul(D,$)|0,a=(a=a+Math.imul(D,tt)|0)+Math.imul(R,$)|0,i=i+Math.imul(R,tt)|0,n=n+Math.imul(I,rt)|0,a=(a=a+Math.imul(I,nt)|0)+Math.imul(z,rt)|0,i=i+Math.imul(z,nt)|0,n=n+Math.imul(C,it)|0,a=(a=a+Math.imul(C,ot)|0)+Math.imul(L,it)|0,i=i+Math.imul(L,ot)|0,n=n+Math.imul(M,lt)|0,a=(a=a+Math.imul(M,ct)|0)+Math.imul(S,lt)|0,i=i+Math.imul(S,ct)|0,n=n+Math.imul(T,ht)|0,a=(a=a+Math.imul(T,ft)|0)+Math.imul(k,ht)|0,i=i+Math.imul(k,ft)|0;var Et=(c+(n=n+Math.imul(b,dt)|0)|0)+((8191&(a=(a=a+Math.imul(b,gt)|0)+Math.imul(,dt)|0))<<13)|0;c=((i=i+Math.imul(_,gt)|0)+(a>>>13)|0)+(Et>>>26)|0,Et&=67108863,n=Math.imul(B,$),a=(a=Math.imul(B,tt))+Math.imul(N,$)|0,i=Math.imul(N,tt),n=n+Math.imul(D,rt)|0,a=(a=a+Math.imul(D,nt)|0)+Math.imul(R,rt)|0,i=i+Math.imul(R,nt)|0,n=n+Math.imul(I,it)|0,a=(a=a+Math.imul(I,ot)|0)+Math.imul(z,it)|0,i=i+Math.imul(z,ot)|0,n=n+Math.imul(C,lt)|0,a=(a=a+Math.imul(C,ct)|0)+Math.imul(L,lt)|0,i=i+Math.imul(L,ct)|0,n=n+Math.imul(M,ht)|0,a=(a=a+Math.imul(M,ft)|0)+Math.imul(S,ht)|0,i=i+Math.imul(S,ft)|0;var Ct=(c+(n=n+Math.imul(T,dt)|0)|0)+((8191&(a=(a=a+Math.imul(T,gt)|0)+Math.imul(k,dt)|0))<<13)|0;c=((i=i+Math.imul(k,gt)|0)+(a>>>13)|0)+(Ct>>>26)|0,Ct&=67108863,n=Math.imul(B,rt),a=(a=Math.imul(B,nt))+Math.imul(N,rt)|0,i=Math.imul(N,nt),n=n+Math.imul(D,it)|0,a=(a=a+Math.imul(D,ot)|0)+Math.imul(R,it)|0,i=i+Math.imul(R,ot)|0,n=n+Math.imul(I,lt)|0,a=(a=a+Math.imul(I,ct)|0)+Math.imul(z,lt)|0,i=i+Math.imul(z,ct)|0,n=n+Math.imul(C,ht)|0,a=(a=a+Math.imul(C,ft)|0)+Math.imul(L,ht)|0,i=i+Math.imul(L,ft)|0;var Lt=(c+(n=n+Math.imul(M,dt)|0)|0)+((8191&(a=(a=a+Math.imul(M,gt)|0)+Math.imul(S,dt)|0))<<13)|0;c=((i=i+Math.imul(S,gt)|0)+(a>>>13)|0)+(Lt>>>26)|0,Lt&=67108863,n=Math.imul(B,it),a=(a=Math.imul(B,ot))+Math.imul(N,it)|0,i=Math.imul(N,ot),n=n+Math.imul(D,lt)|0,a=(a=a+Math.imul(D,ct)|0)+Math.imul(R,lt)|0,i=i+Math.imul(R,ct)|0,n=n+Math.imul(I,ht)|0,a=(a=a+Math.imul(I,ft)|0)+Math.imul(z,ht)|0,i=i+Math.imul(z,ft)|0;var Pt=(c+(n=n+Math.imul(C,dt)|0)|0)+((8191&(a=(a=a+Math.imul(C,gt)|0)+Math.imul(L,dt)|0))<<13)|0;c=((i=i+Math.imul(L,gt)|0)+(a>>>13)|0)+(Pt>>>26)|0,Pt&=67108863,n=Math.imul(B,lt),a=(a=Math.imul(B,ct))+Math.imul(N,lt)|0,i=Math.imul(N,ct),n=n+Math.imul(D,ht)|0,a=(a=a+Math.imul(D,ft)|0)+Math.imul(R,ht)|0,i=i+Math.imul(R,ft)|0;var It=(c+(n=n+Math.imul(I,dt)|0)|0)+((8191&(a=(a=a+Math.imul(I,gt)|0)+Math.imul(z,dt)|0))<<13)|0;c=((i=i+Math.imul(z,gt)|0)+(a>>>13)|0)+(It>>>26)|0,It&=67108863,n=Math.imul(B,ht),a=(a=Math.imul(B,ft))+Math.imul(N,ht)|0,i=Math.imul(N,ft);var zt=(c+(n=n+Math.imul(D,dt)|0)|0)+((8191&(a=(a=a+Math.imul(D,gt)|0)+Math.imul(R,dt)|0))<<13)|0;c=((i=i+Math.imul(R,gt)|0)+(a>>>13)|0)+(zt>>>26)|0,zt&=67108863;var Ot=(c+(n=Math.imul(B,dt))|0)+((8191&(a=(a=Math.imul(B,gt))+Math.imul(N,dt)|0))<<13)|0;return c=((i=Math.imul(N,gt))+(a>>>13)|0)+(Ot>>>26)|0,Ot&=67108863,l[0]=mt,l[1]=vt,l[2]=yt,l[3]=xt,l[4]=bt,l[5]=_t,l[6]=wt,l[7]=Tt,l[8]=kt,l[9]=At,l[10]=Mt,l[11]=St,l[12]=Et,l[13]=Ct,l[14]=Lt,l[15]=Pt,l[16]=It,l[17]=zt,l[18]=Ot,0!==c&&(l[19]=c,r.length++),r};function d(t,e,r){return(new g).mulp(t,e,r)}function g(t,e){this.x=t,this.y=e}Math.imul||(p=f),i.prototype.mulTo=function(t,e){var r=this.length+t.length;return 10===this.length&&10===t.length?p(this,t,e):r<63?f(this,t,e):r<1024?function(t,e,r){r.negative=e.negative^t.negative,r.length=t.length+e.length;for(var n=0,a=0,i=0;i>>26)|0)>>>26,o&=67108863}r.words[i]=s,n=o,o=a}return 0!==n?r.words[i]=n:r.length–,r.strip()}(this,t,e):d(this,t,e)},g.prototype.makeRBT=function(t){for(var e=new Array(t),r=i.prototype._countBits(t)-1,n=0;n>=1;return n},g.prototype.permute=function(t,e,r,n,a,i){for(var o=0;o>>=1)a++;return 1<>>=13,r[2*o+1]=8191&i,i>>>=13;for(o=2*e;o>=26,e+=a/67108864|0,e+=i>>>26,this.words[r]=67108863&i}return 0!==e&&(this.words[r]=e,this.length++),this},i.prototype.muln=function(t){return this.clone().imuln(t)},i.prototype.sqr=function(){return this.mul(this)},i.prototype.isqr=function(){return this.imul(this.clone())},i.prototype.pow=function(t){var e=function(t){for(var e=new Array(t.bitLength()),r=0;r>>a}return e}(t);if(0===e.length)return new i(1);for(var r=this,n=0;n=0);var e,r=t%26,a=(t-r)/26,i=67108863>>>26-r<<26-r;if(0!==r){var o=0;for(e=0;e>>26-r}o&&(this.words[e]=o,this.length++)}if(0!==a){for(e=this.length-1;e>=0;e–)this.words[e+a]=this.words[e];for(e=0;e=0),a=e?(e-e%26)/26:0;var i=t%26,o=Math.min((t-i)/26,this.length),s=67108863^67108863>>>i<o)for(this.length-=o,c=0;c=0&&(0!==u||c>=a);c–){var h=0|this.words[c];this.words[c]=u<<26-i|h>>>i,u=h&s}return l&&0!==u&&(l.words[l.length++]=u),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},i.prototype.ishrn=function(t,e,r){return n(0===this.negative),this.iushrn(t,e,r)},i.prototype.shln=function(t){return this.clone().ishln(t)},i.prototype.ushln=function(t){return this.clone().iushln(t)},i.prototype.shrn=function(t){return this.clone().ishrn(t)},i.prototype.ushrn=function(t){return this.clone().iushrn(t)},i.prototype.testn=function(t){n(“number”==typeof t&&t>=0);var e=t%26,r=(t-e)/26,a=1<=0);var e=t%26,r=(t-e)/26;if(n(0===this.negative,“imaskn works only with positive numbers”),this.length<=r)return this;if(0!==e&&r++,this.length=Math.min(r,this.length),0!==e){var a=67108863^67108863>>>e<=67108864;e++)this.words[e]-=67108864,e===this.length-1?this.words[e+1]=1:this.words[e+1]++;return this.length=Math.max(this.length,e+1),this},i.prototype.isubn=function(t){if(n(“number”==typeof t),n(t<67108864),t<0)return this.iaddn(-t);if(0!==this.negative)return this.negative=0,this.iaddn(t),this.negative=1,this;if(this.words[0]-=t,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var e=0;e>26)-(l/67108864|0),this.words[a+r]=67108863&i}for(;a>26,this.words[a+r]=67108863&i;if(0===s)return this.strip();for(n(-1===s),s=0,a=0;a>26,this.words[a]=67108863&i;return this.negative=1,this.strip()},i.prototype._wordDiv=function(t,e){var r=(this.length,t.length),n=this.clone(),a=t,o=0|a.words[a.length-1];0!==(r=26-this._countBits(o))&&(a=a.ushln®,n.iushln®,o=0|a.words[a.length-1]);var s,l=n.length-a.length;if(“mod”!==e){(s=new i(null)).length=l+1,s.words=new Array(s.length);for(var c=0;c=0;h–){var f=67108864*(0|n.words[a.length+h])+(0|n.words[a.length+h-1]);for(f=Math.min(f/o|0,67108863),n._ishlnsubmul(a,f,h);0!==n.negative;)f–,n.negative=0,n._ishlnsubmul(a,1,h),n.isZero()||(n.negative^=1);s&&(s.words[h]=f)}return s&&s.strip(),n.strip(),“div”!==e&&0!==r&&n.iushrn®,{div:s||null,mod:n}},i.prototype.divmod=function(t,e,r){return n(!t.isZero()),this.isZero()?{div:new i(0),mod:new i(0)}:0!==this.negative&&0===t.negative?(s=this.neg().divmod(t,e),“mod”!==e&&(a=s.div.neg()),“div”!==e&&(o=s.mod.neg(),r&&0!==o.negative&&o.iadd(t)),{div:a,mod:o}):0===this.negative&&0!==t.negative?(s=this.divmod(t.neg(),e),“mod”!==e&&(a=s.div.neg()),{div:a,mod:s.mod}):0!=(this.negative&t.negative)?(s=this.neg().divmod(t.neg(),e),“div”!==e&&(o=s.mod.neg(),r&&0!==o.negative&&o.isub(t)),{div:s.div,mod:o}):t.length>this.length||this.cmp(t)<0?{div:new i(0),mod:this}:1===t.length?"div"===e?{div:this.divn(t.words[0]),mod:null}:"mod"===e?{div:null,mod:new i(this.modn(t.words[0]))}:{div:this.divn(t.words[0]),mod:new i(this.modn(t.words[0]))}:this._wordDiv(t,e);var a,o,s},i.prototype.div=function(t){return this.divmod(t,"div",!1).div},i.prototype.mod=function(t){return this.divmod(t,"mod",!1).mod},i.prototype.umod=function(t){return this.divmod(t,"mod",!0).mod},i.prototype.divRound=function(t){var e=this.divmod(t);if(e.mod.isZero())return e.div;var r=0!==e.div.negative?e.mod.isub(t):e.mod,n=t.ushrn(1),a=t.andln(1),i=r.cmp(n);return i<0||1===a&&0===i?e.div:0!==e.div.negative?e.div.isubn(1):e.div.iaddn(1)},i.prototype.modn=function(t){n(t<=67108863);for(var e=(1<<26)%t,r=0,a=this.length-1;a>=0;a–)r=(e*r+(0|this.words[a]))%t;return r},i.prototype.idivn=function(t){n(t<=67108863);for(var e=0,r=this.length-1;r>=0;r–){var a=(0|this.words[r])+67108864*e;this.words[r]=a/t|0,e=a%t}return this.strip()},i.prototype.divn=function(t){return this.clone().idivn(t)},i.prototype.egcd=function(t){n(0===t.negative),n(!t.isZero());var e=this,r=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var a=new i(1),o=new i(0),s=new i(0),l=new i(1),c=0;e.isEven()&&r.isEven();)e.iushrn(1),r.iushrn(1),++c;for(var u=r.clone(),h=e.clone();!e.isZero();){for(var f=0,p=1;0==(e.words[0]&p)&&f<26;++f,p<<=1);if(f>0)for(e.iushrn(f);f– >0;)(a.isOdd()||o.isOdd())&&(a.iadd(u),o.isub(h)),a.iushrn(1),o.iushrn(1);for(var d=0,g=1;0==(r.words[0]&g)&&d<26;++d,g<<=1);if(d>0)for(r.iushrn(d);d– >0;)(s.isOdd()||l.isOdd())&&(s.iadd(u),l.isub(h)),s.iushrn(1),l.iushrn(1);e.cmp®>=0?(e.isub®,a.isub(s),o.isub(l)):(r.isub(e),s.isub(a),l.isub(o))}return{a:s,b:l,gcd:r.iushln©}},i.prototype._invmp=function(t){n(0===t.negative),n(!t.isZero());var e=this,r=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var a,o=new i(1),s=new i(0),l=r.clone();e.cmpn(1)>0&&r.cmpn(1)>0;){for(var c=0,u=1;0==(e.words[0]&u)&&c<26;++c,u<<=1);if(c>0)for(e.iushrn©;c– >0;)o.isOdd()&&o.iadd(l),o.iushrn(1);for(var h=0,f=1;0==(r.words[0]&f)&&h<26;++h,f<<=1);if(h>0)for(r.iushrn(h);h– >0;)s.isOdd()&&s.iadd(l),s.iushrn(1);e.cmp®>=0?(e.isub®,o.isub(s)):(r.isub(e),s.isub(o))}return(a=0===e.cmpn(1)?o:s).cmpn(0)<0&&a.iadd(t),a},i.prototype.gcd=function(t){if(this.isZero())return t.abs();if(t.isZero())return this.abs();var e=this.clone(),r=t.clone();e.negative=0,r.negative=0;for(var n=0;e.isEven()&&r.isEven();n++)e.iushrn(1),r.iushrn(1);for(;;){for(;e.isEven();)e.iushrn(1);for(;r.isEven();)r.iushrn(1);var a=e.cmp(r);if(a<0){var i=e;e=r,r=i}else if(0===a||0===r.cmpn(1))break;e.isub(r)}return r.iushln(n)},i.prototype.invm=function(t){return this.egcd(t).a.umod(t)},i.prototype.isEven=function(){return 0==(1&this.words[0])},i.prototype.isOdd=function(){return 1==(1&this.words[0])},i.prototype.andln=function(t){return this.words[0]&t},i.prototype.bincn=function(t){n("number"==typeof t);var e=t%26,r=(t-e)/26,a=1<>>26,s&=67108863,this.words[o]=s}return 0!==i&&(this.words[o]=i,this.length++),this},i.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},i.prototype.cmpn=function(t){var e,r=t<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this.strip(),this.length>1)e=1;else{r&&(t=-t),n(t<=67108863,“Number is too big”);var a=0|this.words[0];e=a===t?0:at.length)return 1;if(this.length=0;r–){var n=0|this.words[r],a=0|t.words[r];if(n!==a){na&&(e=1);break}}return e},i.prototype.gtn=function(t){return 1===this.cmpn(t)},i.prototype.gt=function(t){return 1===this.cmp(t)},i.prototype.gten=function(t){return this.cmpn(t)>=0},i.prototype.gte=function(t){return this.cmp(t)>=0},i.prototype.ltn=function(t){return-1===this.cmpn(t)},i.prototype.lt=function(t){return-1===this.cmp(t)},i.prototype.lten=function(t){return this.cmpn(t)<=0},i.prototype.lte=function(t){return this.cmp(t)<=0},i.prototype.eqn=function(t){return 0===this.cmpn(t)},i.prototype.eq=function(t){return 0===this.cmp(t)},i.red=function(t){return new w(t)},i.prototype.toRed=function(t){return n(!this.red,“Already a number in reduction context”),n(0===this.negative,“red works only with positives”),t.convertTo(this)._forceRed(t)},i.prototype.fromRed=function(){return n(this.red,“fromRed works only with numbers in reduction context”),this.red.convertFrom(this)},i.prototype._forceRed=function(t){return this.red=t,this},i.prototype.forceRed=function(t){return n(!this.red,“Already a number in reduction context”),this._forceRed(t)},i.prototype.redAdd=function(t){return n(this.red,“redAdd works only with red numbers”),this.red.add(this,t)},i.prototype.redIAdd=function(t){return n(this.red,“redIAdd works only with red numbers”),this.red.iadd(this,t)},i.prototype.redSub=function(t){return n(this.red,“redSub works only with red numbers”),this.red.sub(this,t)},i.prototype.redISub=function(t){return n(this.red,“redISub works only with red numbers”),this.red.isub(this,t)},i.prototype.redShl=function(t){return n(this.red,“redShl works only with red numbers”),this.red.shl(this,t)},i.prototype.redMul=function(t){return n(this.red,“redMul works only with red numbers”),this.red._verify2(this,t),this.red.mul(this,t)},i.prototype.redIMul=function(t){return n(this.red,“redMul works only with red numbers”),this.red._verify2(this,t),this.red.imul(this,t)},i.prototype.redSqr=function(){return n(this.red,“redSqr works only with red numbers”),this.red._verify1(this),this.red.sqr(this)},i.prototype.redISqr=function(){return n(this.red,“redISqr works only with red numbers”),this.red._verify1(this),this.red.isqr(this)},i.prototype.redSqrt=function(){return n(this.red,“redSqrt works only with red numbers”),this.red._verify1(this),this.red.sqrt(this)},i.prototype.redInvm=function(){return n(this.red,“redInvm works only with red numbers”),this.red._verify1(this),this.red.invm(this)},i.prototype.redNeg=function(){return n(this.red,“redNeg works only with red numbers”),this.red._verify1(this),this.red.neg(this)},i.prototype.redPow=function(t){return n(this.red&&!t.red,“redPow(normalNum)”),this.red._verify1(this),this.red.pow(this,t)};var m={k256:null,p224:null,p192:null,p25519:null};function v(t,e){this.name=t,this.p=new i(e,16),this.n=this.p.bitLength(),this.k=new i(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function y(){v.call(this,“k256”,“ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f”)}function x(){v.call(this,“p224”,“ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001”)}function b(){v.call(this,“p192”,“ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff”)}function _(){v.call(this,“25519”,“7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed”)}function w(t){if(“string”==typeof t){var e=i._prime(t);this.m=e.p,this.prime=e}else n(t.gtn(1),“modulus must be greater than 1”),this.m=t,this.prime=null}function T(t){w.call(this,t),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new i(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)}v.prototype.tmp=function(){var t=new i(null);return t.words=new Array(Math.ceil(this.n/13)),t},v.prototype.ireduce=function(t){var e,r=t;do{this.split(r,this.tmp),e=(r=(r=this.imulK®).iadd(this.tmp)).bitLength()}while(e>this.n);var n=e0?r.isub(this.p):r.strip(),r},v.prototype.split=function(t,e){t.iushrn(this.n,0,e)},v.prototype.imulK=function(t){return t.imul(this.k)},a(y,v),y.prototype.split=function(t,e){for(var r=Math.min(t.length,9),n=0;n>>22,a=i}a>>>=22,t.words[n-10]=a,0===a&&t.length>10?t.length-=10:t.length-=9},y.prototype.imulK=function(t){t.words[t.length]=0,t.words[t.length+1]=0,t.length+=2;for(var e=0,r=0;r<t.length;r++){var n=0|t.words[r];e+=977*n,t.words[r]=67108863&e,e=64*n+(e/67108864|0)}return 0===t.words[t.length-1]&&(t.length–,0===t.words[t.length-1]&&t.length–),t},a(x,v),a(b,v),a(,v),_.prototype.imulK=function(t){for(var e=0,r=0;r>>=26,t.words[r]=a,e=n}return 0!==e&&(t.words[t.length++]=e),t},i._prime=function(t){if(m[t])return m[t];var e;if(“k256”===t)e=new y;else if(“p224”===t)e=new x;else if(“p192”===t)e=new b;else{if(“p25519”!==t)throw new Error(“Unknown prime “+t);e=new _}return m[t]=e,e},w.prototype._verify1=function(t){n(0===t.negative,“red works only with positives”),n(t.red,“red works only with red numbers”)},w.prototype._verify2=function(t,e){n(0==(t.negative|e.negative),“red works only with positives”),n(t.red&&t.red===e.red,“red works only with red numbers”)},w.prototype.imod=function(t){return this.prime?this.prime.ireduce(t)._forceRed(this):t.umod(this.m)._forceRed(this)},w.prototype.neg=function(t){return t.isZero()?t.clone():this.m.sub(t)._forceRed(this)},w.prototype.add=function(t,e){this._verify2(t,e);var r=t.add(e);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},w.prototype.iadd=function(t,e){this._verify2(t,e);var r=t.iadd(e);return r.cmp(this.m)>=0&&r.isub(this.m),r},w.prototype.sub=function(t,e){this._verify2(t,e);var r=t.sub(e);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},w.prototype.isub=function(t,e){this._verify2(t,e);var r=t.isub(e);return r.cmpn(0)<0&&r.iadd(this.m),r},w.prototype.shl=function(t,e){return this._verify1(t),this.imod(t.ushln(e))},w.prototype.imul=function(t,e){return this._verify2(t,e),this.imod(t.imul(e))},w.prototype.mul=function(t,e){return this._verify2(t,e),this.imod(t.mul(e))},w.prototype.isqr=function(t){return this.imul(t,t.clone())},w.prototype.sqr=function(t){return this.mul(t,t)},w.prototype.sqrt=function(t){if(t.isZero())return t.clone();var e=this.m.andln(3);if(n(e%2==1),3===e){var r=this.m.add(new i(1)).iushrn(2);return this.pow(t,r)}for(var a=this.m.subn(1),o=0;!a.isZero()&&0===a.andln(1);)o++,a.iushrn(1);n(!a.isZero());var s=new i(1).toRed(this),l=s.redNeg(),c=this.m.subn(1).iushrn(1),u=this.m.bitLength();for(u=new i(2*u*u).toRed(this);0!==this.pow(u,c).cmp(l);)u.redIAdd(l);for(var h=this.pow(u,a),f=this.pow(t,a.addn(1).iushrn(1)),p=this.pow(t,a),d=o;0!==p.cmp(s);){for(var g=p,m=0;0!==g.cmp(s);m++)g=g.redSqr();n(m=0;n–){for(var c=e.words[n],u=l-1;u>=0;u–){var h=c>>u&1;a!==r[0]&&(a=this.sqr(a)),0!==h||0!==o?(o<<=1,o|=h,(4===++s||0===n&&0===u)&&(a=this.mul(a,r[o]),s=0,o=0)):s=0}l=26}return a},w.prototype.convertTo=function(t){var e=t.umod(this.m);return e===t?e.clone():e},w.prototype.convertFrom=function(t){var e=t.clone();return e.red=null,e},i.mont=function(t){return new T(t)},a(T,w),T.prototype.convertTo=function(t){return this.imod(t.ushln(this.shift))},T.prototype.convertFrom=function(t){var e=this.imod(t.mul(this.rinv));return e.red=null,e},T.prototype.imul=function(t,e){if(t.isZero()||e.isZero())return t.words[0]=0,t.length=1,t;var r=t.imul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),a=r.isub(n).iushrn(this.shift),i=a;return a.cmp(this.m)>=0?i=a.isub(this.m):a.cmpn(0)<0&&(i=a.iadd(this.m)),i._forceRed(this)},T.prototype.mul=function(t,e){if(t.isZero()||e.isZero())return new i(0)._forceRed(this);var r=t.mul(e),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),a=r.isub(n).iushrn(this.shift),o=a;return a.cmp(this.m)>=0?o=a.isub(this.m):a.cmpn(0)<0&&(o=a.iadd(this.m)),o._forceRed(this)},T.prototype.invm=function(t){return this.imod(t._invmp(this.m).mul(this.r2))._forceRed(this)}}("undefined"==typeof e||e,this)},{buffer:106}],98:[function(t,e,r){"use strict";e.exports=function(t){var e,r,n,a=t.length,i=0;for(e=0;e>>1;if(!(u<=0)){var h,f=a.mallocDouble(2*u*s),p=a.mallocInt32(s);if((s=l(t,u,f,p))>0){if(1===u&&n)i.init(s),h=i.sweepComplete(u,r,0,s,f,p,0,s,f,p);else{var d=a.mallocDouble(2*uc),g=a.mallocInt32©;(c=l(e,u,d,g))>0&&(i.init(s+c),h=1===u?i.sweepBipartite(u,r,0,s,f,p,0,c,d,g):o(u,r,n,s,f,p,c,d,g),a.free(d),a.free(g))}a.free(f),a.free(p)}return h}}}function u(t,e){n.push([t,e])}function h(t){return n=[],c(t,t,u,!0),n}function f(t,e){return n=[],c(t,e,u,!1),n}},{“./lib/intersect”:101,“./lib/sweep”:105,“typedarray-pool”:547}],100:[function(t,e,r){“use strict”;var n=[“d”,“ax”,“vv”,“rs”,“re”,“rb”,“ri”,“bs”,“be”,“bb”,“bi”];function a(t){var e=“bruteForce”+(t?“Full”:“Partial”),r=[],a=n.slice();t||a.splice(3,0,“fp”);var i=[“function “+e+”(“+a.join()+”){“];function o(e,a){var o=function(t,e,r){var a=“bruteForce”+(t?“Red”:“Blue”)+(e?“Flip”:“”)+(r?“Full”:“”),i=[“function “,a,”(“,n.join(),”){“,“var “,“es”,“=2”,“d”,“;”],o=“for(var i=rs,rp=es*rs;ibe-bs){“),t?(o(!0,!1),i.push(”}else{“),o(!1,!1)):(i.push(“if(fp){”),o(!0,!0),i.push(“}else{”),o(!0,!1),i.push(“}}else{if(fp){”),o(!1,!0),i.push(“}else{”),o(!1,!1),i.push(“}”)),i.push(“}}return “+e);var s=r.join(”“)+i.join(”“);return new Function(s)()}r.partial=a(!1),r.full=a(!0)},{}],101:[function(t,e,r){“use strict”;e.exports=function(t,e,r,i,u,w,T,k,A){!function(t,e){var r=8a.log2(e+1)(t+1)|0,i=a.nextPow2(6*r);v.length0;){var C=6*(S-=1),L=v[C],P=v[C+1],I=v[C+2],z=v[C+3],O=v[C+4],D=v[C+5],R=2*S,F=y[R],B=y[R+1],N=1&D,j=!!(16&D),V=u,U=w,q=k,H=A;if(N&&(V=k,U=A,q=u,H=w),!(2&D&&(I=p(t,L,P,I,V,U,B),P>=I)||4&D&&(P=d(t,L,P,I,V,U,F))>=I)){var G=I-P,Y=O-z;if(j){if(tG(G+Y)<1<<22){if(void 0!==(M=l.scanComplete(t,L,e,P,I,V,U,z,O,q,H)))return M;continue}}else{if(t*Math.min(G,Y)<128){if(void 0!==(M=o(t,L,e,N,P,I,V,U,z,O,q,H)))return M;continue}if(t*G*Y<1<<22){if(void 0!==(M=l.scanBipartite(t,L,e,N,P,I,V,U,z,O,q,H)))return M;continue}}var W=h(t,L,P,I,V,U,F,B);if(P=p0)&&!(p1>=hi)“,[“p0”,“p1”]),f=u(“lo===p0”,[“p0”]),p=u(“lo>>1,h=2*t,f=u,p=o[h*u+e];for(;l=y?(f=v,p=y):m>=b?(f=g,p=m):(f=x,p=b):y>=b?(f=v,p=y):b>=m?(f=g,p=m):(f=x,p=b);for(var =h*(c-1),w=h*f,T=0;T<h;++T,++,++w){var k=o[];o[]=o[w],o[w]=k}var A=s[c-1];s[c-1]=s[f],s[f]=A,f=n(t,e,l,c-1,o,s,p);for(=h*(c-1),w=h*f,T=0;T<h;++T,++,++w){k=o[];o[]=o[w],o[w]=k}A=s[c-1];if(s[c-1]=s[f],s[f]=A,ur&&a[h+e]>c;–u,h-=o){for(var f=h,p=h+o,d=0;d=0&&n.push(“lo=e[k+n]“);t.indexOf(“hi”)>=0&&n.push(“hi=e[k+o]“);return r.push(“for(var j=2*a,k=j*c,l=k,m=c,n=b,o=a+b,p=c;d>p;++p,k+=j){var ;if($)if(m===p)m+=1,l+=j;else{for(var s=0;j>s;++s){var t=e[k+s];e[k+s]=e[l],e[l++]=t}var u=f[p];f[p]=f[m],f[m++]=u}}return m”.replace(””,n.join()).replace(“$”,t)),Function.apply(void 0,r)}},{}],104:[function(t,e,r){“use strict”;e.exports=function(t,e){e<=128?n(0,e-1,t):function t(e,r,u){var h=(r-e+1)/6|0,f=e+h,p=r-h,d=e+r>>1,g=d-h,m=d+h,v=f,y=g,x=d,b=m,=p,w=e+1,T=r-1,k=0;l(v,y,u)&&(k=v,v=y,y=k);l(b,,u)&&(k=b,b=,=k);l(v,x,u)&&(k=v,v=x,x=k);l(y,x,u)&&(k=y,y=x,x=k);l(v,b,u)&&(k=v,v=b,b=k);l(x,b,u)&&(k=x,x=b,b=k);l(y,,u)&&(k=y,y=,=k);l(y,x,u)&&(k=y,y=x,x=k);l(b,,u)&&(k=b,b=,=k);for(var A=u[2*y],M=u[2*y+1],S=u[2*b],E=u[2*b+1],C=2*v,L=2x,P=2,I=2*f,z=2*d,O=2p,D=0;D<2;++D){var R=u[C+D],F=u[L+D],B=u[P+D];u[I+D]=R,u[z+D]=F,u[O+D]=B}i(g,e,u),i(m,r,u);for(var N=w;N<=T;++N)if(c(N,A,M,u))N!==w&&a(N,w,u),++w;else if(!c(N,S,E,u))for(;;){if(c(T,S,E,u)){c(T,A,M,u)?(o(N,w,T,u),++w,–T):(a(N,T,u),–T);break}if(–T<N)break}s(e,w-1,A,M,u),s(r,T+1,S,E,u),w-2-e<=32?n(e,w-2,u):t(e,w-2,u);r-(T+2)<=32?n(T+2,r,u):t(T+2,r,u);T-w<=32?n(w,T,u):t(w,T,u)}(0,e-1,t)};function n(t,e,r){for(var n=2(t+1),a=t+1;a<=e;++a){for(var i=r[n++],o=r[n++],s=a,l=n-2;s– >t;){var c=r[l-2],u=r[l-1];if(cr[e+1])}function c(t,e,r,n){var a=n[t*=2];return a<e||a===e&&n[t+1]<r}},{}],105:[function(t,e,r){“use strict”;e.exports={init:function(t){var e=a.nextPow2(t);o.length<e&&(n.free(o),o=n.mallocInt32(e));s.length<e&&(n.free(s),s=n.mallocInt32(e));l.length<e&&(n.free(l),l=n.mallocInt32(e));c.length<e&&(n.free©,c=n.mallocInt32(e));u.length<e&&(n.free(u),u=n.mallocInt32(e));h.length<e&&(n.free(h),h=n.mallocInt32(e));var r=8*e;f.length<r&&(n.free(f),f=n.mallocDouble®)},sweepBipartite:function(t,e,r,n,a,u,h,g,m,v){for(var y=0,x=2*t,b=t-1,=x-1,w=r;w>>1;i(f,M);var S=0,E=0;for(w=0;w=1<<28)p(l,c,E--,C=C-(1<<28)|0);else if(C>=0)p(o,s,S–,C);else if(C<=-(1<<28)){C=-C-(1<<28)|0;for(var L=0;L>>1;i(f,E);var C=0,L=0,P=0;for(k=0;k>1==f[2*k+3]>>1&&(z=2,k+=1),I<0){for(var O=-(I>>1)-1,D=0;D>1)-1;0===z?p(o,s,C–,O):1===z?p(l,c,L–,O):2===z&&p(u,h,P–,O)}}},scanBipartite:function(t,e,r,n,a,l,c,u,h,g,m,v){var y=0,x=2*t,b=e,=e+t,w=1,T=1;n?T=1<<28:w=1<<28;for(var k=a;k<l;++k){var A=k+w,M=x*k;f[y++]=c[M+b],f[y++]=-A,f[y++]=c[M+],f[y++]=A}for(k=h;k>>1;i(f,E);var C=0;for(k=0;k=1<<28?(P=!n,A-=1<<28):(P=!!n,A-=1),P)d(o,s,C++,A);else{var I=v[A],z=x*A,O=m[z+e+1],D=m[z+e+1+t];t:for(var R=0;R>>1;i(f,w);var T=0;for(y=0;y=1<<28)o[T++]=x-(1<<28);else{var A=p[x-=1],M=g*x,S=h[M+e+1],E=h[M+e+1+t];t:for(var C=0;C=0;–C)if(o[C]===x){for(z=C+1;z0&&s.length>i){s.warned=!0;var l=new Error(“Possible EventEmitter memory leak detected. “+s.length+’ “‘+String(e)+’” listeners added. Use emitter.setMaxListeners() to increase limit.‘);l.name=“MaxListenersExceededWarning”,l.emitter=t,l.type=e,l.count=s.length,“object”==typeof console&&console.warn&&console.warn(“%s: %s”,l.name,l.message)}}else s=o[e]=r,++t._eventsCount;return t}function v(){if(!this.fired)switch(this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length){case 0:return this.listener.call(this.target);case 1:return this.listener.call(this.target,arguments[0]);case 2:return this.listener.call(this.target,arguments[0],arguments[1]);case 3:return this.listener.call(this.target,arguments[0],arguments[1],arguments[2]);default:for(var t=new Array(arguments.length),e=0;e1&&(e=arguments[1]),e instanceof Error)throw e;var l=new Error(‘Unhandled “error” event. (’+e+“)”);throw l.context=e,l}if(!(r=o[t]))return!1;var c=“function”==typeof r;switch(n=arguments.length){case 1:h(r,c,this);break;case 2:f(r,c,this,arguments[1]);break;case 3:p(r,c,this,arguments[1],arguments[2]);break;case 4:d(r,c,this,arguments[1],arguments[2],arguments[3]);break;default:for(a=new Array(n-1),i=1;i=0;o–)if(r[o]===e||r[o].listener===e){s=r[o].listener,i=o;break}if(i<0)return this;0===i?r.shift():function(t,e){for(var r=e,n=r+1,a=t.length;n=0;i–)this.removeListener(t,e[i]);return this},o.prototype.listeners=function(t){return x(this,t,!0)},o.prototype.rawListeners=function(t){return x(this,t,!1)},o.listenerCount=function(t,e){return”function”==typeof t.listenerCount?t.listenerCount(e):b.call(t,e)},o.prototype.listenerCount=b,o.prototype.eventNames=function(){return this._eventsCount>0?Reflect.ownKeys(this._events):[]}},{}],108:[function(t,e,r){(function(e){ /*!
    • The buffer module from node.js, for the browser. *
    • @author Feross Aboukhadijeh https://feross.org
    • @license MIT */ “use strict”;var n=t(“base64-js”),a=t(“ieee754”);r.Buffer=e,r.SlowBuffer=function(t){+t!=t&&(t=0);return e.alloc(+t)},r.INSPECT_MAX_BYTES=50;function i(t){if(t>2147483647)throw new RangeError(‘The value “’+t+‘” is invalid for option “size”’);var r=new Uint8Array(t);return r.proto=e.prototype,r}function e(t,e,r){if(“number”==typeof t){if(“string”==typeof e)throw new TypeError(‘The “string” argument must be of type string. Received type number’);return l(t)}return o(t,e,r)}function o(t,r,n){if(“string”==typeof t)return function(t,r){“string”==typeof r&&“”!==r||(r=“utf8”);if(!e.isEncoding®)throw new TypeError(“Unknown encoding: “+r);var n=0|h(t,r),a=i(n),o=a.write(t,r);o!==n&&(a=a.slice(0,o));return a}(t,r);if(ArrayBuffer.isView(t))return c(t);if(null==t)throw TypeError(“The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type “+typeof t);if(B(t,ArrayBuffer)||t&&B(t.buffer,ArrayBuffer))return function(t,r,n){if(r<0||t.byteLength=2147483647)throw new RangeError(“Attempt to allocate Buffer larger than maximum size: 0x”+2147483647..toString(16)+” bytes”);return 0|t}function h(t,r){if(e.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||B(t,ArrayBuffer))return t.byteLength;if(“string”!=typeof t)throw new TypeError(‘The “string” argument must be one of type string, Buffer, or ArrayBuffer. Received type ‘+typeof t);var n=t.length,a=arguments.length>2&&!0===arguments[2];if(!a&&0===n)return 0;for(var i=!1;;)switch®{case”ascii”:case”latin1”:case”binary”:return n;case”utf8”:case”utf-8”:return D(t).length;case”ucs2”:case”ucs-2”:case”utf16le”:case”utf-16le”:return 2*n;case”hex”:return n>>>1;case”base64”:return R(t).length;default:if(i)return a?-1:D(t).length;r=(“”+r).toLowerCase(),i=!0}}function f(t,e,r){var n=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return”“;if((void 0===r||r>this.length)&&(r=this.length),r<=0)return”“;if((r>>>=0)<=(e>>>=0))return”“;for(t||(t=“utf8”);;)switch(t){case”hex”:return M(this,e,r);case”utf8”:case”utf-8”:return T(this,e,r);case”ascii”:return k(this,e,r);case”latin1”:case”binary”:return A(this,e,r);case”base64”:return w(this,e,r);case”ucs2”:case”ucs-2”:case”utf16le”:case”utf-16le”:return S(this,e,r);default:if(n)throw new TypeError(“Unknown encoding: “+t);t=(t+”“).toLowerCase(),n=!0}}function p(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function d(t,r,n,a,i){if(0===t.length)return-1;if(“string”==typeof n?(a=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),N(n=+n)&&(n=i?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(i)return-1;n=t.length-1}else if(n<0){if(!i)return-1;n=0}if("string"==typeof r&&(r=e.from(r,a)),e.isBuffer(r))return 0===r.length?-1:g(t,r,n,a,i);if("number"==typeof r)return r&=255,"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(t,r,n):Uint8Array.prototype.lastIndexOf.call(t,r,n):g(t,[r],n,a,i);throw new TypeError("val must be string, number or Buffer")}function g(t,e,r,n,a){var i,o=1,s=t.length,l=e.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(t.length<2||e.length<2)return-1;o=2,s/=2,l/=2,r/=2}function c(t,e){return 1===o?t[e]:t.readUInt16BE(e*o)}if(a){var u=-1;for(i=r;is&&(r=s-l),i=r;i>=0;i–){for(var h=!0,f=0;fa&&(n=a):n=a;var i=e.length;n>i/2&&(n=i/2);for(var o=0;o>8,a=r%256,i.push(a),i.push(n);return i}(e,t.length-r),t,r,n)}function w(t,e,r){return 0===e&&r===t.length?n.fromByteArray(t):n.fromByteArray(t.slice(e,r))}function T(t,e,r){r=Math.min(t.length,r);for(var n=[],a=e;a239?4:c>223?3:c>191?2:1;if(a+h<=r)switch(h){case 1:c<128&&(u=c);break;case 2:128==(192&(i=t[a+1]))&&(l=(31&c)<<6|63&i)>127&&(u=l);break;case 3:i=t[a+1],o=t[a+2],128==(192&i)&&128==(192&o)&&(l=(15&c)<<12|(63&i)<<6|63&o)>2047&&(l<55296||l>57343)&&(u=l);break;case 4:i=t[a+1],o=t[a+2],s=t[a+3],128==(192&i)&&128==(192&o)&&128==(192&s)&&(l=(15&c)<<18|(63&i)<<12|(63&o)<<6|63&s)>65535&&l<1114112&&(u=l)}null===u?(u=65533,h=1):u>65535&&(u-=65536,n.push(u>>>10&1023|55296),u=56320|1023&u),n.push(u),a+=h}return function(t){var e=t.length;if(e<=4096)return String.fromCharCode.apply(String,t);var r=“”,n=0;for(;ne&&(t+=” … “),””},e.prototype.compare=function(t,r,n,a,i){if(B(t,Uint8Array)&&(t=e.from(t,t.offset,t.byteLength)),!e.isBuffer(t))throw new TypeError(‘The “target” argument must be one of type Buffer or Uint8Array. Received type ‘+typeof t);if(void 0===r&&(r=0),void 0===n&&(n=t?t.length:0),void 0===a&&(a=0),void 0===i&&(i=this.length),r<0||n>t.length||a<0||i>this.length)throw new RangeError(“out of range index”);if(a>=i&&r>=n)return 0;if(a>=i)return-1;if(r>=n)return 1;if(this===t)return 0;for(var o=(i>>>=0)-(a>>>=0),s=(n>>>=0)-(r>>>=0),l=Math.min(o,s),c=this.slice(a,i),u=t.slice(r,n),h=0;h>>=0,isFinite®?(r>>>=0,void 0===n&&(n=“utf8”)):(n=r,r=void 0)}var a=this.length-e;if((void 0===r||r>a)&&(r=a),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError(“Attempt to write outside buffer bounds”);n||(n=“utf8”);for(var i=!1;;)switch(n){case”hex”:return m(this,t,e,r);case”utf8”:case”utf-8”:return v(this,t,e,r);case”ascii”:return y(this,t,e,r);case”latin1”:case”binary”:return x(this,t,e,r);case”base64”:return b(this,t,e,r);case”ucs2”:case”ucs-2”:case”utf16le”:case”utf-16le”:return _(this,t,e,r);default:if(i)throw new TypeError(“Unknown encoding: “+n);n=(”“+n).toLowerCase(),i=!0}},e.prototype.toJSON=function(){return{type:“Buffer”,data:Array.prototype.slice.call(this._arr||this,0)}};function k(t,e,r){var n=“”;r=Math.min(t.length,r);for(var a=e;an)&&(r=n);for(var a=“”,i=e;ir)throw new RangeError(“Trying to access beyond buffer length”)}function C(t,r,n,a,i,o){if(!e.isBuffer(t))throw new TypeError(‘“buffer” argument must be a Buffer instance’);if(r>i||rt.length)throw new RangeError(“Index out of range”)}function L(t,e,r,n,a,i){if(r+n>t.length)throw new RangeError(“Index out of range”);if(r<0)throw new RangeError("Index out of range")}function P(t,e,r,n,i){return e=+e,r>>>=0,i||L(t,0,r,4),a.write(t,e,r,n,23,4),r+4}function I(t,e,r,n,i){return e=+e,r>>>=0,i||L(t,0,r,8),a.write(t,e,r,n,52,8),r+8}e.prototype.slice=function(t,r){var n=this.length;(t=t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),(r=void 0===r?n:r)<0?(r+=n)<0&&(r=0):r>n&&(r=n),r>>=0,e>>>=0,r||E(t,e,this.length);for(var n=this[t],a=1,i=0;++i>>=0,e>>>=0,r||E(t,e,this.length);for(var n=this[t+–e],a=1;e>0&&(a*=256);)n+=this[t+–e]*a;return n},e.prototype.readUInt8=function(t,e){return t>>>=0,e||E(t,1,this.length),this[t]},e.prototype.readUInt16LE=function(t,e){return t>>>=0,e||E(t,2,this.length),this[t]|this[t+1]<<8},e.prototype.readUInt16BE=function(t,e){return t>>>=0,e||E(t,2,this.length),this[t]<<8|this[t+1]},e.prototype.readUInt32LE=function(t,e){return t>>>=0,e||E(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},e.prototype.readUInt32BE=function(t,e){return t>>>=0,e||E(t,4,this.length),16777216this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},e.prototype.readIntLE=function(t,e,r){t>>>=0,e>>>=0,r||E(t,e,this.length);for(var n=this[t],a=1,i=0;++i<e&&(a=256);)n+=this[t+i]a;return n>=(a=128)&&(n-=Math.pow(2,8e)),n},e.prototype.readIntBE=function(t,e,r){t>>>=0,e>>>=0,r||E(t,e,this.length);for(var n=e,a=1,i=this[t+–n];n>0&&(a=256);)i+=this[t+–n]a;return i>=(a=128)&&(i-=Math.pow(2,8e)),i},e.prototype.readInt8=function(t,e){return t>>>=0,e||E(t,1,this.length),128&this[t]?-1(255-this[t]+1):this[t]},e.prototype.readInt16LE=function(t,e){t>>>=0,e||E(t,2,this.length);var r=this[t]|this[t+1]<<8;return 32768&r?4294901760|r:r},e.prototype.readInt16BE=function(t,e){t>>>=0,e||E(t,2,this.length);var r=this[t+1]|this[t]<<8;return 32768&r?4294901760|r:r},e.prototype.readInt32LE=function(t,e){return t>>>=0,e||E(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},e.prototype.readInt32BE=function(t,e){return t>>>=0,e||E(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},e.prototype.readFloatLE=function(t,e){return t>>>=0,e||E(t,4,this.length),a.read(this,t,!0,23,4)},e.prototype.readFloatBE=function(t,e){return t>>>=0,e||E(t,4,this.length),a.read(this,t,!1,23,4)},e.prototype.readDoubleLE=function(t,e){return t>>>=0,e||E(t,8,this.length),a.read(this,t,!0,52,8)},e.prototype.readDoubleBE=function(t,e){return t>>>=0,e||E(t,8,this.length),a.read(this,t,!1,52,8)},e.prototype.writeUIntLE=function(t,e,r,n){(t=+t,e>>>=0,r>>>=0,n)||C(this,t,e,r,Math.pow(2,8r)-1,0);var a=1,i=0;for(this[e]=255&t;++i<r&&(a=256);)this[e+i]=t/a&255;return e+r},e.prototype.writeUIntBE=function(t,e,r,n){(t=+t,e>>>=0,r>>>=0,n)||C(this,t,e,r,Math.pow(2,8r)-1,0);var a=r-1,i=1;for(this[e+a]=255&t;–a>=0&&(i=256);)this[e+a]=t/i&255;return e+r},e.prototype.writeUInt8=function(t,e,r){return t=+t,e>>>=0,r||C(this,t,e,1,255,0),this[e]=255&t,e+1},e.prototype.writeUInt16LE=function(t,e,r){return t=+t,e>>>=0,r||C(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},e.prototype.writeUInt16BE=function(t,e,r){return t=+t,e>>>=0,r||C(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},e.prototype.writeUInt32LE=function(t,e,r){return t=+t,e>>>=0,r||C(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},e.prototype.writeUInt32BE=function(t,e,r){return t=+t,e>>>=0,r||C(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},e.prototype.writeIntLE=function(t,e,r,n){if(t=+t,e>>>=0,!n){var a=Math.pow(2,8r-1);C(this,t,e,r,a-1,-a)}var i=0,o=1,s=0;for(this[e]=255&t;++i<r&&(o=256);)t<0&&0===s&&0!==this[e+i-1]&&(s=1),this[e+i]=(t/o>>0)-s&255;return e+r},e.prototype.writeIntBE=function(t,e,r,n){if(t=+t,e>>>=0,!n){var a=Math.pow(2,8r-1);C(this,t,e,r,a-1,-a)}var i=r-1,o=1,s=0;for(this[e+i]=255&t;–i>=0&&(o=256);)t<0&&0===s&&0!==this[e+i+1]&&(s=1),this[e+i]=(t/o>>0)-s&255;return e+r},e.prototype.writeInt8=function(t,e,r){return t=+t,e>>>=0,r||C(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},e.prototype.writeInt16LE=function(t,e,r){return t=+t,e>>>=0,r||C(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},e.prototype.writeInt16BE=function(t,e,r){return t=+t,e>>>=0,r||C(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},e.prototype.writeInt32LE=function(t,e,r){return t=+t,e>>>=0,r||C(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},e.prototype.writeInt32BE=function(t,e,r){return t=+t,e>>>=0,r||C(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},e.prototype.writeFloatLE=function(t,e,r){return P(this,t,e,!0,r)},e.prototype.writeFloatBE=function(t,e,r){return P(this,t,e,!1,r)},e.prototype.writeDoubleLE=function(t,e,r){return I(this,t,e,!0,r)},e.prototype.writeDoubleBE=function(t,e,r){return I(this,t,e,!1,r)},e.prototype.copy=function(t,r,n,a){if(!e.isBuffer(t))throw new TypeError(“argument should be a Buffer”);if(n||(n=0),a||0===a||(a=this.length),r>=t.length&&(r=t.length),r||(r=0),a>0&&a=this.length)throw new RangeError(“Index out of range”);if(a<0)throw new RangeError("sourceEnd out of bounds");a>this.length&&(a=this.length),t.length-r=0;–o)t[o+r]=this[o+n];else Uint8Array.prototype.set.call(t,this.subarray(n,a),r);return i},e.prototype.fill=function(t,r,n,a){if(“string”==typeof t){if(“string”==typeof r?(a=r,r=0,n=this.length):“string”==typeof n&&(a=n,n=this.length),void 0!==a&&“string”!=typeof a)throw new TypeError(“encoding must be a string”);if(“string”==typeof a&&!e.isEncoding(a))throw new TypeError(“Unknown encoding: “+a);if(1===t.length){var i=t.charCodeAt(0);(“utf8”===a&&i<128||"latin1"===a)&&(t=i)}}else"number"==typeof t&&(t&=255);if(r<0||this.length>>=0,n=void 0===n?this.length:n>>>0,t||(t=0),“number”==typeof t)for(o=r;o55295&&r<57344){if(!a){if(r>56319){(e-=3)>-1&&i.push(239,191,189);continue}if(o+1===n){(e-=3)>-1&&i.push(239,191,189);continue}a=r;continue}if(r<56320){(e-=3)>-1&&i.push(239,191,189),a=r;continue}r=65536+(a-55296<<10|r-56320)}else a&&(e-=3)>-1&&i.push(239,191,189);if(a=null,r<128){if((e-=1)<0)break;i.push(r)}else if(r<2048){if((e-=2)<0)break;i.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;i.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;i.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return i}function R(t){return n.toByteArray(function(t){if((t=(t=t.split(“=”)[0]).trim().replace(z,“”)).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function F(t,e,r,n){for(var a=0;a=e.length||a>=t.length);++a)e[a+r]=t[a];return a}function B(t,e){return t instanceof e||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===e.name}function N(t){return t!=t}}).call(this,t(“buffer”).Buffer)},{“base64-js”:77,buffer:108,ieee754:411}],109:[function(t,e,r){“use strict”;var n=t(“./lib/monotone”),a=t(“./lib/triangulation”),i=t(“./lib/delaunay”),o=t(“./lib/filter”);function s(t){return[Math.min(t[0],t[1]),Math.max(t[0],t[1])]}function l(t,e){return t[0]-e[0]||t[1]-e[1]}function c(t,e,r){return e in t?t[e]:r}e.exports=function(t,e,r){Array.isArray(e)?(r=r||{},e=e||[]):(r=e||{},e=[]);var u=!!c(r,“delaunay”,!0),h=!!c(r,“interior”,!0),f=!!c(r,“exterior”,!0),p=!!c(r,“infinity”,!1);if(!h&&!f||0===t.length)return[];var d=n(t,e);if(u||h!==f||p){for(var g=a(t.length,function(t){return t.map(s).sort(l)}(e)),m=0;m0;){for(var p=r.pop(),d=(s=r.pop(),u=-1,h=-1,l=o[s],1);d=0||(e.flip(s,p),a(t,e,r,u,s,h),a(t,e,r,s,h,u),a(t,e,r,h,p,u),a(t,e,r,p,u,h)))}}},{“binary-search-bounds”:94,“robust-in-sphere”:498}],111:[function(t,e,r){“use strict”;var n,a=t(“binary-search-bounds”);function i(t,e,r,n,a,i,o){this.cells=t,this.neighbor=e,this.flags=n,this.constraint=r,this.active=a,this.next=i,this.boundary=o}function o(t,e){return t[0]-e[0]||t[1]-e[1]||t[2]-e[2]}e.exports=function(t,e,r){var n=function(t,e){for(var r=t.cells(),n=r.length,a=0;a0||l.length>0;){for(;s.length>0;){var p=s.pop();if(c[p]!==-a){c[p]=a;u[p];for(var d=0;d<3;++d){var g=f[3*p+d];g>=0&&0===c[g]&&(h[3*p+d]?l.push(g):(s.push(g),c[g]=a))}}}var m=l;l=s,s=m,l.length=0,a=-a}var v=function(t,e,r){for(var n=0,a=0;a1&&a(r[f[p-2]],r[f[p-1]],i)>0;)t.push([f[p-1],f[p-2],o]),p-=1;f.length=p,f.push(o);var d=h.upperIds;for(p=d.length;p>1&&a(r[d[p-2]],r[d[p-1]],i)<0;)t.push([d[p-2],d[p-1],o]),p-=1;d.length=p,d.push(o)}}function u(t,e){var r;return(r=t.a[0]d[0]&&a.push(new o(d,p,2,l),new o(p,d,1,l))}a.sort(s);for(var g=a[0].a[0]-(1+Math.abs(a[0].a[0]))*Math.pow(2,-52),m=[new i([g,1],[g,0],-1,[],[],[],[])],v=[],y=(l=0,a.length);l=0}}(),i.removeTriangle=function(t,e,r){var n=this.stars;o(n[t],e,r),o(n[e],r,t),o(n[r],t,e)},i.addTriangle=function(t,e,r){var n=this.stars;n[t].push(e,r),n[e].push(r,t),n[r].push(t,e)},i.opposite=function(t,e){for(var r=this.stars[e],n=1,a=r.length;nr?r:t:te?e:t}},{}],118:[function(t,e,r){“use strict”;e.exports=function(t,e,r){var n;if®{n=e;for(var a=new Array(e.length),i=0;ie[2]?1:0)}function v(t,e,r){if(0!==t.length){if(e)for(var n=0;n=0;–i){var x=e[u=(S=n[i])[0]],b=x[0],=x[1],w=t[b],T=t[];if((w[0]-T[0]||w[1]-T[1])<0){var k=b;b=_,_=k}x[0]=b;var A,M=x[1]=S[1];for(a&&(A=x[2]);i>0&&n[i-1][0]===u;){var S,E=(S=n[–i])[1];a?e.push([M,E,A]):e.push([M,E]),M=E}a?e.push([M,,A]):e.push([M,])}return f}(t,e,f,m,r));return v(e,y,r),!!y||(f.length>0||m.length>0)}},{“./lib/rat-seg-intersect”:119,“big-rat”:81,“big-rat/cmp”:79,“big-rat/to-float”:93,“box-intersect”:99,nextafter:449,“rat-vec”:484,“robust-segment-intersect”:503,“union-find”:548}],119:[function(t,e,r){“use strict”;e.exports=function(t,e,r,n){var i=s(e,t),h=s(n,r),f=u(i,h);if(0===o(f))return null;var p=s(t,r),d=u(h,p),g=a(d,f),m=c(i,g);return l(t,m)};var n=t(“big-rat/mul”),a=t(“big-rat/div”),i=t(“big-rat/sub”),o=t(“big-rat/sign”),s=t(“rat-vec/sub”),l=t(“rat-vec/add”),c=t(“rat-vec/muls”);function u(t,e){return i(n(t[0],e[1]),n(t[1],e[0]))}},{“big-rat/div”:80,“big-rat/mul”:90,“big-rat/sign”:91,“big-rat/sub”:92,“rat-vec/add”:483,“rat-vec/muls”:485,“rat-vec/sub”:486}],120:[function(t,e,r){“use strict”;var n=t(“clamp”);function a(t,e){null==e&&(e=!0);var r=t[0],a=t[1],i=t[2],o=t[3];return null==o&&(o=e?1:255),e&&(r=255,a=255,i=255,o=255),16777216*(r=255&n(r,0,255))+((a=255&n(a,0,255))<<16)+((i=255&n(i,0,255))<<8)+(o=255&n(o,0,255))}e.exports=a,e.exports.to=a,e.exports.from=function(t,e){var r=(t=+t)>>>24,n=(16711680&t)>>>16,a=(65280&t)>>>8,i=255&t;return!1===e?[r,n,a,i]:[r/255,n/255,a/255,i/255]}},{clamp:117}],121:[function(t,e,r){“use strict”;e.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]}},{}],122:[function(t,e,r){“use strict”;var n=t(“color-rgba”),a=t(“clamp”),i=t(“dtype”);e.exports=function(t,e){“float”!==e&&e||(e=“array”),“uint”===e&&(e=“uint8”),“uint_clamped”===e&&(e=“uint8_clamped”);var r=new(i(e))(4),o=“uint8”!==e&&“uint8_clamped”!==e;return t.length&&“string”!=typeof t||((t=n(t))[0]/=255,t[1]/=255,t[2]/=255),function(t){return t instanceof Uint8Array||t instanceof Uint8ClampedArray||!!(Array.isArray(t)&&(t[0]>1||0===t[0])&&(t[1]>1||0===t[1])&&(t[2]>1||0===t[2])&&(!t[3]||t[3]>1))}(t)?(r[0]=t[0],r[1]=t[1],r[2]=t[2],r[3]=null!=t[3]?t[3]:255,o&&(r[0]/=255,r[1]/=255,r[2]/=255,r[3]/=255),r):(o?(r[0]=t[0],r[1]=t[1],r[2]=t[2],r[3]=null!=t[3]?t[3]:1):(r[0]=a(Math.floor(255*t[0]),0,255),r[1]=a(Math.floor(255*t[1]),0,255),r[2]=a(Math.floor(255*t[2]),0,255),r[3]=null==t[3]?255:a(Math.floor(255t[3]),0,255)),r)}},{clamp:117,“color-rgba”:124,dtype:170}],123:[function(t,e,r){(function®{“use strict”;var n=t(“color-name”),a=t(“is-plain-obj”),i=t(“defined”);e.exports=function(t){var e,s,l=[],c=1;if(“string”==typeof t)if(n[t])l=n[t].slice(),s=“rgb”;else if(“transparent”===t)c=0,s=“rgb”,l=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(t)){var u=(p=t.slice(1)).length;c=1,u<=4?(l=[parseInt(p[0]+p[0],16),parseInt(p[1]+p[1],16),parseInt(p[2]+p[2],16)],4===u&&(c=parseInt(p[3]+p[3],16)/255)):(l=[parseInt(p[0]+p[1],16),parseInt(p[2]+p[3],16),parseInt(p[4]+p[5],16)],8===u&&(c=parseInt(p[6]+p[7],16)/255)),l[0]||(l[0]=0),l[1]||(l[1]=0),l[2]||(l[2]=0),s=“rgb”}else if(e=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s(([^)]))/.exec(t)){var h=e[1],f=“rgb”===h,p=h.replace(/a$/,“”);s=p;u=“cmyk”===p?4:“gray”===p?1:3;l=e[2].trim().split(/\s,\s*/).map((function(t,e){if(/%$/.test(t))return e===u?parseFloat(t)/100:“rgb”===p?255*parseFloat(t)/100:parseFloat(t);if(“h”===p[e]){if(/deg$/.test(t))return parseFloat(t);if(void 0!==o[t])return o[t]}return parseFloat(t)})),h===p&&l.push(1),c=f||void 0===l[u]?1:l[u],l=l.slice(0,u)}else t.length>10&&/0-9/.test(t)&&(l=t.match(/([0-9]+)/g).map((function(t){return parseFloat(t)})),s=t.match(/([a-z])/gi).join(“”).toLowerCase());else if(isNaN(t))if(a(t)){var d=i(t.r,t.red,t.R,null);null!==d?(s=“rgb”,l=[d,i(t.g,t.green,t.G),i(t.b,t.blue,t.B)]):(s=“hsl”,l=[i(t.h,t.hue,t.H),i(t.s,t.saturation,t.S),i(t.l,t.lightness,t.L,t.b,t.brightness)]),c=i(t.a,t.alpha,t.opacity,1),null!=t.opacity&&(c/=100)}else(Array.isArray(t)||r.ArrayBuffer&&ArrayBuffer.isView&&ArrayBuffer.isView(t))&&(l=[t[0],t[1],t[2]],s=“rgb”,c=4===t.length?t[3]:1);else s=“rgb”,l=[t>>>16,(65280&t)>>>8,255&t];return{space:s,values:l,alpha:c}};var o={red:0,orange:60,yellow:120,green:180,blue:240,purple:300}}).call(this,“undefined”!=typeof global?global:“undefined”!=typeof self?self:“undefined”!=typeof window?window:{})},{“color-name”:121,defined:165,“is-plain-obj”:422}],124:[function(t,e,r){“use strict”;var n=t(“color-parse”),a=t(“color-space/hsl”),i=t(“clamp”);e.exports=function(t){var e,r=n(t);return r.space?((e=Array(3))[0]=i(r.values[0],0,255),e[1]=i(r.values[1],0,255),e[2]=i(r.values[2],0,255),“h”===r.space[0]&&(e=a.rgb(e)),e.push(i(r.alpha,0,1)),e):[]}},{clamp:117,“color-parse”:123,“color-space/hsl”:125}],125:[function(t,e,r){“use strict”;var n=t(“./rgb”);e.exports={name:“hsl”,min:[0,0,0],max:[360,100,100],channel:[“hue”,“saturation”,“lightness”],alias:[“HSL”],rgb:function(t){var e,r,n,a,i,o=t[0]/360,s=t[1]/100,l=t[2]/100;if(0===s)return[i=255*l,i,i];e=2l-(r=l<.5?l(1+s):l+s-ls),a=[0,0,0];for(var c=0;c<3;c++)(n=o+13-(c-1))<0?n++:n>1&&n–,i=6n<1?e+6(r-e)*n:2*n<1?r:3*n<2?e+(r-e)*(2/3-n)*6:e,a[c]=255*i;return a}},n.hsl=function(t){var e,r,n=t[0]/255,a=t[1]/255,i=t[2]/255,o=Math.min(n,a,i),s=Math.max(n,a,i),l=s-o;return s===o?e=0:n===s?e=(a-i)/l:a===s?e=2+(i-n)/l:i===s&&(e=4+(n-a)/l),(e=Math.min(60*e,360))<0&&(e+=360),r=(o+s)/2,[e,100*(s===o?0:r<=.5?l/(s+o):l/(2-s-o)),100*r]}},{"./rgb":126}],126:[function(t,e,r){"use strict";e.exports={name:"rgb",min:[0,0,0],max:[255,255,255],channel:["red","green","blue"],alias:["RGB"]}},{}],127:[function(t,e,r){e.exports={jet:[{index:0,rgb:[0,0,131]},{index:.125,rgb:[0,60,170]},{index:.375,rgb:[5,255,255]},{index:.625,rgb:[255,255,0]},{index:.875,rgb:[250,0,0]},{index:1,rgb:[128,0,0]}],hsv:[{index:0,rgb:[255,0,0]},{index:.169,rgb:[253,255,2]},{index:.173,rgb:[247,255,2]},{index:.337,rgb:[0,252,4]},{index:.341,rgb:[0,252,10]},{index:.506,rgb:[1,249,255]},{index:.671,rgb:[2,0,253]},{index:.675,rgb:[8,0,253]},{index:.839,rgb:[255,0,251]},{index:.843,rgb:[255,0,245]},{index:1,rgb:[255,0,6]}],hot:[{index:0,rgb:[0,0,0]},{index:.3,rgb:[230,0,0]},{index:.6,rgb:[255,210,0]},{index:1,rgb:[255,255,255]}],cool:[{index:0,rgb:[0,255,255]},{index:1,rgb:[255,0,255]}],spring:[{index:0,rgb:[255,0,255]},{index:1,rgb:[255,255,0]}],summer:[{index:0,rgb:[0,128,102]},{index:1,rgb:[255,255,102]}],autumn:[{index:0,rgb:[255,0,0]},{index:1,rgb:[255,255,0]}],winter:[{index:0,rgb:[0,0,255]},{index:1,rgb:[0,255,128]}],bone:[{index:0,rgb:[0,0,0]},{index:.376,rgb:[84,84,116]},{index:.753,rgb:[169,200,200]},{index:1,rgb:[255,255,255]}],copper:[{index:0,rgb:[0,0,0]},{index:.804,rgb:[255,160,102]},{index:1,rgb:[255,199,127]}],greys:[{index:0,rgb:[0,0,0]},{index:1,rgb:[255,255,255]}],yignbu:[{index:0,rgb:[8,29,88]},{index:.125,rgb:[37,52,148]},{index:.25,rgb:[34,94,168]},{index:.375,rgb:[29,145,192]},{index:.5,rgb:[65,182,196]},{index:.625,rgb:[127,205,187]},{index:.75,rgb:[199,233,180]},{index:.875,rgb:[237,248,217]},{index:1,rgb:[255,255,217]}],greens:[{index:0,rgb:[0,68,27]},{index:.125,rgb:[0,109,44]},{index:.25,rgb:[35,139,69]},{index:.375,rgb:[65,171,93]},{index:.5,rgb:[116,196,118]},{index:.625,rgb:[161,217,155]},{index:.75,rgb:[199,233,192]},{index:.875,rgb:[229,245,224]},{index:1,rgb:[247,252,245]}],yiorrd:[{index:0,rgb:[128,0,38]},{index:.125,rgb:[189,0,38]},{index:.25,rgb:[227,26,28]},{index:.375,rgb:[252,78,42]},{index:.5,rgb:[253,141,60]},{index:.625,rgb:[254,178,76]},{index:.75,rgb:[254,217,118]},{index:.875,rgb:[255,237,160]},{index:1,rgb:[255,255,204]}],bluered:[{index:0,rgb:[0,0,255]},{index:1,rgb:[255,0,0]}],rdbu:[{index:0,rgb:[5,10,172]},{index:.35,rgb:[106,137,247]},{index:.5,rgb:[190,190,190]},{index:.6,rgb:[220,170,132]},{index:.7,rgb:[230,145,90]},{index:1,rgb:[178,10,28]}],picnic:[{index:0,rgb:[0,0,255]},{index:.1,rgb:[51,153,255]},{index:.2,rgb:[102,204,255]},{index:.3,rgb:[153,204,255]},{index:.4,rgb:[204,204,255]},{index:.5,rgb:[255,255,255]},{index:.6,rgb:[255,204,255]},{index:.7,rgb:[255,153,255]},{index:.8,rgb:[255,102,204]},{index:.9,rgb:[255,102,102]},{index:1,rgb:[255,0,0]}],rainbow:[{index:0,rgb:[150,0,90]},{index:.125,rgb:[0,0,200]},{index:.25,rgb:[0,25,255]},{index:.375,rgb:[0,152,255]},{index:.5,rgb:[44,255,150]},{index:.625,rgb:[151,255,0]},{index:.75,rgb:[255,234,0]},{index:.875,rgb:[255,111,0]},{index:1,rgb:[255,0,0]}],portland:[{index:0,rgb:[12,51,131]},{index:.25,rgb:[10,136,186]},{index:.5,rgb:[242,211,56]},{index:.75,rgb:[242,143,56]},{index:1,rgb:[217,30,30]}],blackbody:[{index:0,rgb:[0,0,0]},{index:.2,rgb:[230,0,0]},{index:.4,rgb:[230,210,0]},{index:.7,rgb:[255,255,255]},{index:1,rgb:[160,200,255]}],earth:[{index:0,rgb:[0,0,130]},{index:.1,rgb:[0,180,180]},{index:.2,rgb:[40,210,40]},{index:.4,rgb:[230,230,50]},{index:.6,rgb:[120,70,20]},{index:1,rgb:[255,255,255]}],electric:[{index:0,rgb:[0,0,0]},{index:.15,rgb:[30,0,100]},{index:.4,rgb:[120,0,100]},{index:.6,rgb:[160,90,0]},{index:.8,rgb:[230,200,0]},{index:1,rgb:[255,250,220]}],alpha:[{index:0,rgb:[255,255,255,0]},{index:1,rgb:[255,255,255,1]}],viridis:[{index:0,rgb:[68,1,84]},{index:.13,rgb:[71,44,122]},{index:.25,rgb:[59,81,139]},{index:.38,rgb:[44,113,142]},{index:.5,rgb:[33,144,141]},{index:.63,rgb:[39,173,129]},{index:.75,rgb:[92,200,99]},{index:.88,rgb:[170,220,50]},{index:1,rgb:[253,231,37]}],inferno:[{index:0,rgb:[0,0,4]},{index:.13,rgb:[31,12,72]},{index:.25,rgb:[85,15,109]},{index:.38,rgb:[136,34,106]},{index:.5,rgb:[186,54,85]},{index:.63,rgb:[227,89,51]},{index:.75,rgb:[249,140,10]},{index:.88,rgb:[249,201,50]},{index:1,rgb:[252,255,164]}],magma:[{index:0,rgb:[0,0,4]},{index:.13,rgb:[28,16,68]},{index:.25,rgb:[79,18,123]},{index:.38,rgb:[129,37,129]},{index:.5,rgb:[181,54,122]},{index:.63,rgb:[229,80,100]},{index:.75,rgb:[251,135,97]},{index:.88,rgb:[254,194,135]},{index:1,rgb:[252,253,191]}],plasma:[{index:0,rgb:[13,8,135]},{index:.13,rgb:[75,3,161]},{index:.25,rgb:[125,3,168]},{index:.38,rgb:[168,34,150]},{index:.5,rgb:[203,70,121]},{index:.63,rgb:[229,107,93]},{index:.75,rgb:[248,148,65]},{index:.88,rgb:[253,195,40]},{index:1,rgb:[240,249,33]}],warm:[{index:0,rgb:[125,0,179]},{index:.13,rgb:[172,0,187]},{index:.25,rgb:[219,0,170]},{index:.38,rgb:[255,0,130]},{index:.5,rgb:[255,63,74]},{index:.63,rgb:[255,123,0]},{index:.75,rgb:[234,176,0]},{index:.88,rgb:[190,228,0]},{index:1,rgb:[147,255,0]}],cool:[{index:0,rgb:[125,0,179]},{index:.13,rgb:[116,0,218]},{index:.25,rgb:[98,74,237]},{index:.38,rgb:[68,146,231]},{index:.5,rgb:[0,204,197]},{index:.63,rgb:[0,247,146]},{index:.75,rgb:[0,255,88]},{index:.88,rgb:[40,255,8]},{index:1,rgb:[147,255,0]}],"rainbow-soft":[{index:0,rgb:[125,0,179]},{index:.1,rgb:[199,0,180]},{index:.2,rgb:[255,0,121]},{index:.3,rgb:[255,108,0]},{index:.4,rgb:[222,194,0]},{index:.5,rgb:[150,255,0]},{index:.6,rgb:[0,255,55]},{index:.7,rgb:[0,246,150]},{index:.8,rgb:[50,167,222]},{index:.9,rgb:[103,51,235]},{index:1,rgb:[124,0,186]}],bathymetry:[{index:0,rgb:[40,26,44]},{index:.13,rgb:[59,49,90]},{index:.25,rgb:[64,76,139]},{index:.38,rgb:[63,110,151]},{index:.5,rgb:[72,142,158]},{index:.63,rgb:[85,174,163]},{index:.75,rgb:[120,206,163]},{index:.88,rgb:[187,230,172]},{index:1,rgb:[253,254,204]}],cdom:[{index:0,rgb:[47,15,62]},{index:.13,rgb:[87,23,86]},{index:.25,rgb:[130,28,99]},{index:.38,rgb:[171,41,96]},{index:.5,rgb:[206,67,86]},{index:.63,rgb:[230,106,84]},{index:.75,rgb:[242,149,103]},{index:.88,rgb:[249,193,135]},{index:1,rgb:[254,237,176]}],chlorophyll:[{index:0,rgb:[18,36,20]},{index:.13,rgb:[25,63,41]},{index:.25,rgb:[24,91,59]},{index:.38,rgb:[13,119,72]},{index:.5,rgb:[18,148,80]},{index:.63,rgb:[80,173,89]},{index:.75,rgb:[132,196,122]},{index:.88,rgb:[175,221,162]},{index:1,rgb:[215,249,208]}],density:[{index:0,rgb:[54,14,36]},{index:.13,rgb:[89,23,80]},{index:.25,rgb:[110,45,132]},{index:.38,rgb:[120,77,178]},{index:.5,rgb:[120,113,213]},{index:.63,rgb:[115,151,228]},{index:.75,rgb:[134,185,227]},{index:.88,rgb:[177,214,227]},{index:1,rgb:[230,241,241]}],"freesurface-blue":[{index:0,rgb:[30,4,110]},{index:.13,rgb:[47,14,176]},{index:.25,rgb:[41,45,236]},{index:.38,rgb:[25,99,212]},{index:.5,rgb:[68,131,200]},{index:.63,rgb:[114,156,197]},{index:.75,rgb:[157,181,203]},{index:.88,rgb:[200,208,216]},{index:1,rgb:[241,237,236]}],"freesurface-red":[{index:0,rgb:[60,9,18]},{index:.13,rgb:[100,17,27]},{index:.25,rgb:[142,20,29]},{index:.38,rgb:[177,43,27]},{index:.5,rgb:[192,87,63]},{index:.63,rgb:[205,125,105]},{index:.75,rgb:[216,162,148]},{index:.88,rgb:[227,199,193]},{index:1,rgb:[241,237,236]}],oxygen:[{index:0,rgb:[64,5,5]},{index:.13,rgb:[106,6,15]},{index:.25,rgb:[144,26,7]},{index:.38,rgb:[168,64,3]},{index:.5,rgb:[188,100,4]},{index:.63,rgb:[206,136,11]},{index:.75,rgb:[220,174,25]},{index:.88,rgb:[231,215,44]},{index:1,rgb:[248,254,105]}],par:[{index:0,rgb:[51,20,24]},{index:.13,rgb:[90,32,35]},{index:.25,rgb:[129,44,34]},{index:.38,rgb:[159,68,25]},{index:.5,rgb:[182,99,19]},{index:.63,rgb:[199,134,22]},{index:.75,rgb:[212,171,35]},{index:.88,rgb:[221,210,54]},{index:1,rgb:[225,253,75]}],phase:[{index:0,rgb:[145,105,18]},{index:.13,rgb:[184,71,38]},{index:.25,rgb:[186,58,115]},{index:.38,rgb:[160,71,185]},{index:.5,rgb:[110,97,218]},{index:.63,rgb:[50,123,164]},{index:.75,rgb:[31,131,110]},{index:.88,rgb:[77,129,34]},{index:1,rgb:[145,105,18]}],salinity:[{index:0,rgb:[42,24,108]},{index:.13,rgb:[33,50,162]},{index:.25,rgb:[15,90,145]},{index:.38,rgb:[40,118,137]},{index:.5,rgb:[59,146,135]},{index:.63,rgb:[79,175,126]},{index:.75,rgb:[120,203,104]},{index:.88,rgb:[193,221,100]},{index:1,rgb:[253,239,154]}],temperature:[{index:0,rgb:[4,35,51]},{index:.13,rgb:[23,51,122]},{index:.25,rgb:[85,59,157]},{index:.38,rgb:[129,79,143]},{index:.5,rgb:[175,95,130]},{index:.63,rgb:[222,112,101]},{index:.75,rgb:[249,146,66]},{index:.88,rgb:[249,196,65]},{index:1,rgb:[232,250,91]}],turbidity:[{index:0,rgb:[34,31,27]},{index:.13,rgb:[65,50,41]},{index:.25,rgb:[98,69,52]},{index:.38,rgb:[131,89,57]},{index:.5,rgb:[161,112,59]},{index:.63,rgb:[185,140,66]},{index:.75,rgb:[202,174,88]},{index:.88,rgb:[216,209,126]},{index:1,rgb:[233,246,171]}],"velocity-blue":[{index:0,rgb:[17,32,64]},{index:.13,rgb:[35,52,116]},{index:.25,rgb:[29,81,156]},{index:.38,rgb:[31,113,162]},{index:.5,rgb:[50,144,169]},{index:.63,rgb:[87,173,176]},{index:.75,rgb:[149,196,189]},{index:.88,rgb:[203,221,211]},{index:1,rgb:[254,251,230]}],"velocity-green":[{index:0,rgb:[23,35,19]},{index:.13,rgb:[24,64,38]},{index:.25,rgb:[11,95,45]},{index:.38,rgb:[39,123,35]},{index:.5,rgb:[95,146,12]},{index:.63,rgb:[152,165,18]},{index:.75,rgb:[201,186,69]},{index:.88,rgb:[233,216,137]},{index:1,rgb:[255,253,205]}],cubehelix:[{index:0,rgb:[0,0,0]},{index:.07,rgb:[22,5,59]},{index:.13,rgb:[60,4,105]},{index:.2,rgb:[109,1,135]},{index:.27,rgb:[161,0,147]},{index:.33,rgb:[210,2,142]},{index:.4,rgb:[251,11,123]},{index:.47,rgb:[255,29,97]},{index:.53,rgb:[255,54,69]},{index:.6,rgb:[255,85,46]},{index:.67,rgb:[255,120,34]},{index:.73,rgb:[255,157,37]},{index:.8,rgb:[241,191,57]},{index:.87,rgb:[224,220,93]},{index:.93,rgb:[218,241,142]},{index:1,rgb:[227,253,198]}]}},{}],128:[function(t,e,r){"use strict";var n=t("./colorScale"),a=t("lerp");function i(t){return[t[0]/255,t[1]/255,t[2]/255,t[3]]}function o(t){for(var e,r="#",n=0;n<3;++n)r+=("00"+(e=(e=t[n]).toString(16))).substr(e.length);return r}function s(t){return"rgba("+t.join(",")+")"}e.exports=function(t){var e,r,l,c,u,h,f,p,d,g;t||(t={});p=(t.nshades||72)-1,f=t.format||"hex",(h=t.colormap)||(h="jet");if("string"==typeof h){if(h=h.toLowerCase(),!n[h])throw Error(h+" not a supported colorscale");u=n[h]}else{if(!Array.isArray(h))throw Error("unsupported colormap option",h);u=h.slice()}if(u.length>p+1)throw new Error(h+” map requires nshades to be at least size “+u.length);d=Array.isArray(t.alpha)?2!==t.alpha.length?[1,1]:t.alpha.slice():“number”==typeof t.alpha?[t.alpha,t.alpha]:[1,1];e=u.map((function(t){return Math.round(t.index*p)})),d[0]=Math.min(Math.max(d[0],0),1),d[1]=Math.min(Math.max(d[1],0),1);var m=u.map((function(t,e){var r=u[e].index,n=u[e].rgb.slice();return 4===n.length&&n[3]>=0&&n[3]<=1||(n[3]=d[0]+(d[1]-d[0])*r),n})),v=[];for(g=0;g0||l(t,e,i)?-1:1:0===s?c>0||l(t,e,r)?1:-1:a(c-s)}var f=n(t,e,r);return f>0?o>0&&n(t,e,i)>0?1:-1:f<0?o>0||n(t,e,i)>0?1:-1:n(t,e,i)>0||l(t,e,r)?1:-1};var n=t(“robust-orientation”),a=t(“signum”),i=t(“two-sum”),o=t(“robust-product”),s=t(“robust-sum”);function l(t,e,r){var n=i(t[0],-e[0]),a=i(t[1],-e[1]),l=i(r[0],-e[0]),c=i(r[1],-e[1]),u=s(o(n,l),o(a,c));return u[u.length-1]>=0}},{“robust-orientation”:500,“robust-product”:501,“robust-sum”:505,signum:506,“two-sum”:535}],130:[function(t,e,r){e.exports=function(t,e){var r=t.length,i=t.length-e.length;if(i)return i;switch®{case 0:return 0;case 1:return t[0]-e[0];case 2:return t[0]+t[1]-e[0]-e[1]||n(t[0],t[1])-n(e[0],e[1]);case 3:var o=t[0]+t[1],s=e[0]+e[1];if(i=o+t[2]-(s+e[2]))return i;var l=n(t[0],t[1]),c=n(e[0],e[1]);return n(l,t[2])-n(c,e[2])||n(l+t[2],o)-n(c+e[2],s);case 4:var u=t[0],h=t[1],f=t[2],p=t[3],d=e[0],g=e[1],m=e[2],v=e[3];return u+h+f+p-(d+g+m+v)||n(u,h,f,p)-n(d,g,m,v,d)||n(u+h,u+f,u+p,h+f,h+p,f+p)-n(d+g,d+m,d+v,g+m,g+v,m+v)||n(u+h+f,u+h+p,u+f+p,h+f+p)-n(d+g+m,d+g+v,d+m+v,g+m+v);default:for(var y=t.slice().sort(a),x=e.slice().sort(a),b=0;bt[r][0]&&(r=n);return er?[[r],[e]]:[[e]]}},{}],134:[function(t,e,r){“use strict”;e.exports=function(t){var e=n(t),r=e.length;if(r<=2)return[];for(var a=new Array®,i=e[r-1],o=0;o=e[l]&&(s+=1);i[o]=s}}return t}(n(i,!0),r)}};var n=t(“incremental-convex-hull”),a=t(“affine-hull”)},{“affine-hull”:65,“incremental-convex-hull”:412}],136:[function(t,e,r){e.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”}},{}],137:[function(t,e,r){e.exports=[“xx-small”,“x-small”,“small”,“medium”,“large”,“x-large”,“xx-large”,“larger”,“smaller”]},{}],138:[function(t,e,r){e.exports=[“normal”,“condensed”,“semi-condensed”,“extra-condensed”,“ultra-condensed”,“expanded”,“semi-expanded”,“extra-expanded”,“ultra-expanded”]},{}],139:[function(t,e,r){e.exports=[“normal”,“italic”,“oblique”]},{}],140:[function(t,e,r){e.exports=[“normal”,“bold”,“bolder”,“lighter”,“100”,“200”,“300”,“400”,“500”,“600”,“700”,“800”,“900”]},{}],141:[function(t,e,r){“use strict”;e.exports={parse:t(“./parse”),stringify:t(“./stringify”)}},{“./parse”:143,“./stringify”:144}],142:[function(t,e,r){“use strict”;var n=t(“css-font-size-keywords”);e.exports={isSize:function(t){return/1/.test(t)||-1!==t.indexOf(“/”)||-1!==n.indexOf(t)}}},{“css-font-size-keywords”:137}],143:[function(t,e,r){“use strict”;var n=t(“unquote”),a=t(“css-global-keywords”),i=t(“css-system-font-keywords”),o=t(“css-font-weight-keywords”),s=t(“css-font-style-keywords”),l=t(“css-font-stretch-keywords”),c=t(“string-split-by”),u=t(“./lib/util”).isSize;e.exports=f;var h=f.cache={};function f(t){if(“string”!=typeof t)throw new Error(“Font argument must be a string.”);if(h[t])return h[t];if(“”===t)throw new Error(“Cannot parse an empty string.”);if(-1!==i.indexOf(t))return h[t]={system:t};for(var e,r={style:“normal”,variant:“normal”,weight:“normal”,stretch:“normal”,lineHeight:“normal”,size:“1rem”,family:[“serif”]},f=c(t,/\s+/);e=f.shift();){if(-1!==a.indexOf(e))return[“style”,“variant”,“weight”,“stretch”].forEach((function(t){r[t]=e})),h[t]=r;if(-1===s.indexOf(e))if(“normal”!==e&&“small-caps”!==e)if(-1===l.indexOf(e)){if(-1===o.indexOf(e)){if(u(e)){var d=c(e,“/”);if(r.size=d[0],null!=d[1]?r.lineHeight=p(d[1]):“/”===f[0]&&(f.shift(),r.lineHeight=p(f.shift())),!f.length)throw new Error(“Missing required font-family.”);return r.family=c(f.join(” “),/\s,\s*/).map(n),h[t]=r}throw new Error(“Unknown or unsupported font token: “+e)}r.weight=e}else r.stretch=e;else r.variant=e;else r.style=e}throw new Error(“Missing required font-size.”)}function p(t){var e=parseFloat(t);return e.toString()===t?e:t}},{“./lib/util”:142,“css-font-stretch-keywords”:138,“css-font-style-keywords”:139,“css-font-weight-keywords”:140,“css-global-keywords”:145,“css-system-font-keywords”:146,“string-split-by”:520,unquote:550}],144:[function(t,e,r){“use strict”;var n=t(“pick-by-alias”),a=t(“./lib/util”).isSize,i=g(t(“css-global-keywords”)),o=g(t(“css-system-font-keywords”)),s=g(t(“css-font-weight-keywords”)),l=g(t(“css-font-style-keywords”)),c=g(t(“css-font-stretch-keywords”)),u={normal:1,“small-caps”:1},h={serif:1,“sans-serif”:1,monospace:1,cursive:1,fantasy:1,“system-ui”:1},f=“1rem”,p=“serif”;function d(t,e){if(t&&!e[t]&&!i[t])throw Error(“Unknown keyword "+t+"”);return t}function g(t){for(var e={},r=0;r=0;–p)i[p]=c*t[p]+u*e[p]+h*r[p]+f*n[p];return i}return c*t+u*e+h*r+f*n},e.exports.derivative=function(t,e,r,n,a,i){var o=6*a*a-6*a,s=3*a*a-4*a+1,l=-6*a*a+6*a,c=3*a*a-2*a;if(t.length){i||(i=new Array(t.length));for(var u=t.length-1;u>=0;–u)i[u]=o*t[u]+s*e[u]+l*r[u]+c*n[u];return i}return o*t+s*e+l*r[u]+c*n}},{}],148:[function(t,e,r){“use strict”;var n=t(“./lib/thunk.js”);function a(){this.argTypes=[],this.shimArgs=[],this.arrayArgs=[],this.arrayBlockIndices=[],this.scalarArgs=[],this.offsetArgs=[],this.offsetArgIndex=[],this.indexArgs=[],this.shapeArgs=[],this.funcName=“”,this.pre=null,this.body=null,this.post=null,this.debug=!1}e.exports=function(t){var e=new a;e.pre=t.pre,e.body=t.body,e.post=t.post;var r=t.args.slice(0);e.argTypes=r;for(var i=0;i0)throw new Error(“cwise: pre() block may not reference array args”);if(i0)throw new Error(“cwise: post() block may not reference array args”)}else if(“scalar”===o)e.scalarArgs.push(i),e.shimArgs.push(“scalar”+i);else if(“index”===o){if(e.indexArgs.push(i),i0)throw new Error(“cwise: pre() block may not reference array index”);if(i0)throw new Error(“cwise: post() block may not reference array index”)}else if(“shape”===o){if(e.shapeArgs.push(i),ir.length)throw new Error(“cwise: Too many arguments in pre() block”);if(e.body.args.length>r.length)throw new Error(“cwise: Too many arguments in body() block”);if(e.post.args.length>r.length)throw new Error(“cwise: Too many arguments in post() block”);return e.debug=!!t.printCode||!!t.debug,e.funcName=t.funcName||“cwise”,e.blockSize=t.blockSize||64,n(e)}},{“./lib/thunk.js”:150}],149:[function(t,e,r){“use strict”;var n=t(“uniq”);function a(t,e,r){var n,a,i=t.length,o=e.arrayArgs.length,s=e.indexArgs.length>0,l=[],c=[],u=0,h=0;for(n=0;n0&&l.push(“var “+c.join(”,“)),n=i-1;n>=0;–n)u=t[n],l.push([“for(i”,n,“=0;i”,n,”0&&l.push([“index[“,h,”]-=s”,h].join(“”)),l.push([“++index[“,u,”]“].join(”“))),l.push(”}“)}return l.join(”\n”)}function i(t,e,r){for(var n=t.body,a=[],i=[],o=0;o0&&(r=r&&e[n]===e[n-1])}return r?e[0]:e.join(“”)}e.exports=function(t,e){for(var r=e[1].length-Math.abs(t.arrayBlockIndices[0])|0,s=new Array(t.arrayArgs.length),l=new Array(t.arrayArgs.length),c=0;c0&&x.push(“shape=SS.slice(0)”),t.indexArgs.length>0){var b=new Array®;for(c=0;c0&&y.push(“var “+x.join(”,“)),c=0;c3&&y.push(i(t.pre,t,l));var k=i(t.body,t,l),A=function(t){for(var e=0,r=t[0].length;e0,c=[],u=0;u0;){“].join(”“)),c.push([“if(j”,u,”<“,s,”){“].join(”“)),c.push([“s”,e[u],“=j”,u].join(“”)),c.push([“j”,u,“=0”].join(“”)),c.push([“}else{s”,e[u],“=”,s].join(“”)),c.push([“j”,u,“-=”,s,“}”].join(“”)),l&&c.push([“index[“,e[u],“]=j”,u].join(“”));for(u=0;u3&&y.push(i(t.post,t,l)),t.debug&&console.log(“—–Generated cwise routine for “,e,”:\n”+y.join(”\n”)+”\n———-“);var M=[t.funcName||“unnamed”,”_cwiseloop”,s[0].join(“s”),“m”,A,o(l)].join(“”);return new Function([“function “,M,”(“,v.join(”,“),”){“,y.join(”\n”),“} return “,M].join(”“))()}},{uniq:549}],150:[function(t,e,r){“use strict”;var n=t(“./compile.js”);e.exports=function(t){var e=[“‘use strict’”,“var CACHED={}”],r=[],a=t.funcName+”_cwise_thunk”;e.push([“return function “,a,”(“,t.shimArgs.join(”,“),”){“].join(”“));for(var i=[],o=[],s=[[“array”,t.arrayArgs[0],“.shape.slice(”,Math.max(0,t.arrayBlockIndices[0]),t.arrayBlockIndices[0]<0?","+t.arrayBlockIndices[0]+")":")"].join("")],l=[],c=[],u=0;u0&&(l.push(“array”+t.arrayArgs[0]+“.shape.length===array”+h+“.shape.length+”+(Math.abs(t.arrayBlockIndices[0])-Math.abs(t.arrayBlockIndices[u]))),c.push(“array”+t.arrayArgs[0]+“.shape[shapeIndex+“+Math.max(0,t.arrayBlockIndices[0])+“]===array”+h+“.shape[shapeIndex+“+Math.max(0,t.arrayBlockIndices[u])+“]”))}for(t.arrayArgs.length>1&&(e.push(“if (!(”+l.join(” && “)+”)) throw new Error(‘cwise: Arrays do not all have the same dimensionality!‘)“),e.push(“for(var shapeIndex=array”+t.arrayArgs[0]+“.shape.length-”+Math.abs(t.arrayBlockIndices[0])+“; shapeIndex–\x3e0;) {“),e.push(“if (!(”+c.join(” && “)+”)) throw new Error(‘cwise: Arrays do not all have the same shape!‘)“),e.push(”}“)),u=0;ue?1:t>=e?0:NaN}function r(t){var r;return 1===t.length&&(r=t,t=function(t,n){return e(r(t),n)}),{left:function(e,r,n,a){for(null==n&&(n=0),null==a&&(a=e.length);n>>1;t(e[i],r)<0?n=i+1:a=i}return n},right:function(e,r,n,a){for(null==n&&(n=0),null==a&&(a=e.length);n>>1;t(e[i],r)>0?a=i:n=i+1}return n}}}var n=r(e),a=n.right,i=n.left;function o(t,e){return[t,e]}function s(t){return null===t?NaN:+t}function l(t,e){var r,n,a=t.length,i=0,o=-1,l=0,c=0;if(null==e)for(;++o1)return c/(i-1)}function c(t,e){var r=l(t,e);return r?Math.sqrt®:r}function u(t,e){var r,n,a,i=t.length,o=-1;if(null==e){for(;++o=r)for(n=a=r;++or&&(n=r),a=r)for(n=a=r;++or&&(n=r),a=0?(i>=v?10:i>=y?5:i>=x?2:1)Math.pow(10,a):-Math.pow(10,-a)/(i>=v?10:i>=y?5:i>=x?2:1)}function _(t,e,r){var n=Math.abs(e-t)/Math.max(0,r),a=Math.pow(10,Math.floor(Math.log(n)/Math.LN10)),i=n/a;return i>=v?a=10:i>=y?a=5:i>=x&&(a=2),e=1)return+r(t[n-1],n-1,t);var n,a=(n-1)e,i=Math.floor(a),o=+r(t[i],i,t);return o+(+r(t[i+1],i+1,t)-o)(a-i)}}function k(t,e){var r,n,a=t.length,i=-1;if(null==e){for(;++i=r)for(n=r;++ir&&(n=r)}else for(;++i=r)for(n=r;++ir&&(n=r);return n}function A(t){if(!(a=t.length))return[];for(var e=-1,r=k(t,M),n=new Array®;++et?1:e>=t?0:NaN},t.deviation=c,t.extent=u,t.histogram=function(){var t=g,e=u,r=w;function n(n){var i,o,s=n.length,l=new Array(s);for(i=0;ih;)f.pop(),–p;var d,g=new Array(p+1);for(i=0;i<=p;++i)(d=g[i]=[]).x0=i>0?f[i-1]:u,d.x1=i=r)for(n=r;++in&&(n=r)}else for(;++i=r)for(n=r;++in&&(n=r);return n},t.mean=function(t,e){var r,n=t.length,a=n,i=-1,o=0;if(null==e)for(;++i=0;)for(e=(n=t[a]).length;–e>=0;)r[–o]=n[e];return r},t.min=k,t.pairs=function(t,e){null==e&&(e=o);for(var r=0,n=t.length-1,a=t[0],i=new Array(n<0?0:n);r0)return[t];if((n=e0)for(t=Math.ceil(t/o),e=Math.floor(e/o),i=new Array(a=Math.ceil(e-t+1));++s=l.length)return null!=t&&n.sort(t),null!=e?e(n):n;for(var s,c,h,f=-1,p=n.length,d=l[a++],g=r(),m=i();++fl.length)return r;var a,i=c[n-1];return null!=e&&n>=l.length?a=r.entries():(a=[],r.each((function(e,r){a.push({key:r,values:t(e,n)})}))),null!=i?a.sort((function(t,e){return i(t.key,e.key)})):a}(u(t,0,i,o),0)},key:function(t){return l.push(t),s},sortKeys:function(t){return c[l.length-1]=t,s},sortValues:function(e){return t=e,s},rollup:function(t){return e=t,s}}},t.set=c,t.map=r,t.keys=function(t){var e=[];for(var r in t)e.push®;return e},t.values=function(t){var e=[];for(var r in t)e.push(t[r]);return e},t.entries=function(t){var e=[];for(var r in t)e.push({key:r,value:t[r]});return e},Object.defineProperty(t,”esModule”,{value:!0})}))},{}],155:[function(t,e,r){!function(t,n){“object”==typeof r&&“undefined”!=typeof e?n®:n((t=t||self).d3=t.d3||{})}(this,(function(t){“use strict”;function e(t,e,r){t.prototype=e.prototype=r,r.constructor=t}function r(t,e){var r=Object.create(t.prototype);for(var n in e)r[n]=e[n];return r}function n(){}var a=”\s([+-]?\d+)\s”,i=”\s([+-]?\d\.?\d+(?:[eE][+-]?\d+)?)\s”,o=”\s([+-]?\d\.?\d+(?:[eE][+-]?\d+)?)%\s”,s=/^#([0-9a-f]{3,8})$/,l=new RegExp(“^rgb\(“+[a,a,a]+”\)$“),c=new RegExp(”^rgb\(“+[o,o,o]+”\)$“),u=new RegExp(”^rgba\(“+[a,a,a,i]+”\)$“),h=new RegExp(”^rgba\(“+[o,o,o,i]+”\)$“),f=new RegExp(”^hsl\(“+[i,o,o]+”\)$“),p=new RegExp(”^hsla\(“+[i,o,o,i]+”\)$“),d={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};function g(){return this.rgb().formatHex()}function m(){return this.rgb().formatRgb()}function v(t){var e,r;return t=(t+“”).trim().toLowerCase(),(e=s.exec(t))?(r=e[1].length,e=parseInt(e[1],16),6===r?y(e):3===r?new w(e>>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):8===r?x(e>>24&255,e>>16&255,e>>8&255,(255&e)/255):4===r?x(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|240&e,((15&e)<<4|15&e)/255):null):(e=l.exec(t))?new w(e[1],e[2],e[3],1):(e=c.exec(t))?new w(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=u.exec(t))?x(e[1],e[2],e[3],e[4]):(e=h.exec(t))?x(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=f.exec(t))?M(e[1],e[2]/100,e[3]/100,1):(e=p.exec(t))?M(e[1],e[2]/100,e[3]/100,e[4]):d.hasOwnProperty(t)?y(d[t]):"transparent"===t?new w(NaN,NaN,NaN,0):null}function y(t){return new w(t>>16&255,t>>8&255,255&t,1)}function x(t,e,r,n){return n<=0&&(t=e=r=NaN),new w(t,e,r,n)}function b(t){return t instanceof n||(t=v(t)),t?new w((t=t.rgb()).r,t.g,t.b,t.opacity):new w}function (t,e,r,n){return 1===arguments.length?b(t):new w(t,e,r,null==n?1:n)}function w(t,e,r,n){this.r=+t,this.g=+e,this.b=+r,this.opacity=+n}function T(){return”#“+A(this.r)+A(this.g)+A(this.b)}function k(){var t=this.opacity;return(1===(t=isNaN(t)?1:Math.max(0,Math.min(1,t)))?“rgb(”:“rgba(”)+Math.max(0,Math.min(255,Math.round(this.r)||0))+“, “+Math.max(0,Math.min(255,Math.round(this.g)||0))+”, “+Math.max(0,Math.min(255,Math.round(this.b)||0))+(1===t?”)”:“, “+t+”)“)}function A(t){return((t=Math.max(0,Math.min(255,Math.round(t)||0)))<16?"0":"")+t.toString(16)}function M(t,e,r,n){return n<=0?t=e=r=NaN:r<=0||r>=1?t=e=NaN:e<=0&&(t=NaN),new C(t,e,r,n)}function S(t){if(t instanceof C)return new C(t.h,t.s,t.l,t.opacity);if(t instanceof n||(t=v(t)),!t)return new C;if(t instanceof C)return t;var e=(t=t.rgb()).r/255,r=t.g/255,a=t.b/255,i=Math.min(e,r,a),o=Math.max(e,r,a),s=NaN,l=o-i,c=(o+i)/2;return l?(s=e===o?(r-a)/l+6(r<a):r===o?(a-e)/l+2:(e-r)/l+4,l/=c<.5?o+i:2-o-i,s=60):l=c>0&&c<1?0:s,new C(s,l,c,t.opacity)}function E(t,e,r,n){return 1===arguments.length?S(t):new C(t,e,r,null==n?1:n)}function C(t,e,r,n){this.h=+t,this.s=+e,this.l=+r,this.opacity=+n}function L(t,e,r){return 255*(t<60?e+(r-e)t/60:t<180?r:t<240?e+(r-e)(240-t)/60:e)}e(n,v,{copy:function(t){return Object.assign(new this.constructor,this,t)},displayable:function(){return this.rgb().displayable()},hex:g,formatHex:g,formatHsl:function(){return S(this).formatHsl()},formatRgb:m,toString:m}),e(w,,r(n,{brighter:function(t){return t=null==t?1/.7:Math.pow(1/.7,t),new w(this.r*t,this.g*t,this.b*t,this.opacity)},darker:function(t){return t=null==t?.7:Math.pow(.7,t),new w(this.r*t,this.g*t,this.b*t,this.opacity)},rgb:function(){return this},displayable:function(){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:T,formatHex:T,formatRgb:k,toString:k})),e(C,E,r(n,{brighter:function(t){return t=null==t?1/.7:Math.pow(1/.7,t),new C(this.h,this.s,this.l*t,this.opacity)},darker:function(t){return t=null==t?.7:Math.pow(.7,t),new C(this.h,this.s,this.l*t,this.opacity)},rgb:function(){var t=this.h%360+360*(this.h<0),e=isNaN(t)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*e,a=2*r-n;return new w(L(t>=240?t-240:t+120,a,n),L(t,a,n),L(t<120?t+240:t-120,a,n),this.opacity)},displayable:function(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl:function(){var t=this.opacity;return(1===(t=isNaN(t)?1:Math.max(0,Math.min(1,t)))?"hsl(":"hsla(")+(this.h||0)+", "+100*(this.s||0)+"%, "+100*(this.l||0)+"%"+(1===t?")":", "+t+")")}}));var P=Math.PI/180,I=180/Math.PI,z=6/29,O=3*z*z;function D(t){if(t instanceof F)return new F(t.l,t.a,t.b,t.opacity);if(t instanceof H)return G(t);t instanceof w||(t=b(t));var e,r,n=V(t.r),a=V(t.g),i=V(t.b),o=B((.2225045*n+.7168786*a+.0606169*i)/1);return n===a&&a===i?e=r=o:(e=B((.4360747*n+.3850649*a+.1430804*i)/.96422),r=B((.0139322*n+.0971045*a+.7141733*i)/.82521)),new F(116*o-16,500*(e-o),200*(o-r),t.opacity)}function R(t,e,r,n){return 1===arguments.length?D(t):new F(t,e,r,null==n?1:n)}function F(t,e,r,n){this.l=+t,this.a=+e,this.b=+r,this.opacity=+n}function B(t){return t>.008856451679035631?Math.pow(t,13):t/O+429}function N(t){return t>z?t*tt:O(t-429)}function j(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,12.4)-.055)}function V(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function U(t){if(t instanceof H)return new H(t.h,t.c,t.l,t.opacity);if(t instanceof F||(t=D(t)),0===t.a&&0===t.b)return new H(NaN,0<t.l&&t.l<100?0:NaN,t.l,t.opacity);var e=Math.atan2(t.b,t.a)*I;return new H(e<0?e+360:e,Math.sqrt(t.a*t.a+t.b*t.b),t.l,t.opacity)}function q(t,e,r,n){return 1===arguments.length?U(t):new H(t,e,r,null==n?1:n)}function H(t,e,r,n){this.h=+t,this.c=+e,this.l=+r,this.opacity=+n}function G(t){if(isNaN(t.h))return new F(t.l,0,0,t.opacity);var e=t.h*P;return new F(t.l,Math.cos(e)*t.c,Math.sin(e)t.c,t.opacity)}e(F,R,r(n,{brighter:function(t){return new F(this.l+18(null==t?1:t),this.a,this.b,this.opacity)},darker:function(t){return new F(this.l-18(null==t?1:t),this.a,this.b,this.opacity)},rgb:function(){var t=(this.l+16)/116,e=isNaN(this.a)?t:t+this.a/500,r=isNaN(this.b)?t:t-this.b/200;return new w(j(3.1338561(e=.96422N(e))-1.6168667(t=1N(t))-.4906146(r=.82521*N®)),j(-.9787684*e+1.9161415*t+.033454*r),j(.0719453*e-.2289914*t+1.4052427r),this.opacity)}})),e(H,q,r(n,{brighter:function(t){return new H(this.h,this.c,this.l+18(null==t?1:t),this.opacity)},darker:function(t){return new H(this.h,this.c,this.l-18*(null==t?1:t),this.opacity)},rgb:function(){return G(this).rgb()}}));var Y=-.14861,W=1.78277,Z=-.29227,X=-.90649,J=1.97294,K=J*X,Q=J*W,$=W*Z-X*Y;function tt(t){if(t instanceof rt)return new rt(t.h,t.s,t.l,t.opacity);t instanceof w||(t=b(t));var e=t.r/255,r=t.g/255,n=t.b/255,a=($*n+K*e-Qr)/($+K-Q),i=n-a,o=(J(r-a)-Z*i)/X,s=Math.sqrt(o*o+i*i)/(Ja(1-a)),l=s?Math.atan2(o,i)*I-120:NaN;return new rt(l<0?l+360:l,s,a,t.opacity)}function et(t,e,r,n){return 1===arguments.length?tt(t):new rt(t,e,r,null==n?1:n)}function rt(t,e,r,n){this.h=+t,this.s=+e,this.l=+r,this.opacity=+n}e(rt,et,r(n,{brighter:function(t){return t=null==t?1/.7:Math.pow(1/.7,t),new rt(this.h,this.s,this.l*t,this.opacity)},darker:function(t){return t=null==t?.7:Math.pow(.7,t),new rt(this.h,this.s,this.l*t,this.opacity)},rgb:function(){var t=isNaN(this.h)?0:(this.h+120)*P,e=+this.l,r=isNaN(this.s)?0:this.se(1-e),n=Math.cos(t),a=Math.sin(t);return new w(255(e+r(Y*n+Wa)),255(e+r*(Z*n+Xa)),255(e+r*(J*n)),this.opacity)}})),t.color=v,t.cubehelix=et,t.gray=function(t,e){return new F(t,0,0,null==e?1:e)},t.hcl=q,t.hsl=E,t.lab=R,t.lch=function(t,e,r,n){return 1===arguments.length?U(t):new H(r,e,t,null==n?1:n)},t.rgb=_,Object.defineProperty(t,”esModule”,{value:!0})}))},{}],156:[function(t,e,r){!function(t,n){“object”==typeof r&&“undefined”!=typeof e?n®:n((t=t||self).d3=t.d3||{})}(this,(function(t){“use strict”;var e={value:function(){}};function r(){for(var t,e=0,r=arguments.length,a={};e=0&&(r=t.slice(n+1),t=t.slice(0,n)),t&&!e.hasOwnProperty(t))throw new Error(“unknown type: “+t);return{type:t,name:r}}))}function i(t,e){for(var r,n=0,a=t.length;n0)for(var r,n,a=new Array®,i=0;if+c||np+c||iu.index){var h=f-s.x-s.vx,m=p-s.y-s.vy,v=h*h+m*m;vt.r&&(t.r=t[e].r)}function f(){if®{var e,a,i=r.length;for(n=new Array(i),e=0;e=c)){(t.data!==r||t.next)&&(0===h&&(d+=(h=o())*h),0===f&&(d+=(f=o())*f),d1?(null==r?u.remove(t):u.set(t,v®),e):u.get(t)},find:function(e,r,n){var a,i,o,s,l,c=0,u=t.length;for(null==n?n=10:n*=n,c=0;c1?(f.on(t,r),e):f.on(t)}}},t.forceX=function(t){var e,r,n,a=i(.1);function o(t){for(var a,i=0,o=e.length;i=0;)e+=r[n].value;else e=1;t.value=e}function i(t,e){var r,n,a,i,s,u=new c(t),h=+t.value&&(u.value=t.value),f=[u];for(null==e&&(e=o);r=f.pop();)if(h&&(r.value=+r.data.value),(a=e(r.data))&&(s=a.length))for(r.children=new Array(s),i=s-1;i>=0;–i)f.push(n=r.children[i]=new c(a[i])),n.parent=r,n.depth=r.depth+1;return u.eachBefore(l)}function o(t){return t.children}function s(t){t.data=t.data.data}function l(t){var e=0;do{t.height=e}while((t=t.parent)&&t.height<++e)}function c(t){this.data=t,this.depth=this.height=0,this.parent=null}c.prototype=i.prototype={constructor:c,count:function(){return this.eachAfter(a)},each:function(t){var e,r,n,a,i=this,o=[i];do{for(e=o.reverse(),o=[];i=e.pop();)if(t(i),r=i.children)for(n=0,a=r.length;n=0;–r)a.push(e[r]);return this},sum:function(t){return this.eachAfter((function(e){for(var r=+t(e.data)||0,n=e.children,a=n&&n.length;–a>=0;)r+=n[a].value;e.value=r}))},sort:function(t){return this.eachBefore((function(e){e.children&&e.children.sort(t)}))},path:function(t){for(var e=this,r=function(t,e){if(t===e)return t;var r=t.ancestors(),n=e.ancestors(),a=null;t=r.pop(),e=n.pop();for(;t===e;)a=t,t=r.pop(),e=n.pop();return a}(e,t),n=[e];e!==r;)e=e.parent,n.push(e);for(var a=n.length;t!==r;)n.splice(a,0,t),t=t.parent;return n},ancestors:function(){for(var t=this,e=[t];t=t.parent;)e.push(t);return e},descendants:function(){var t=[];return this.each((function(e){t.push(e)})),t},leaves:function(){var t=[];return this.eachBefore((function(e){e.children||t.push(e)})),t},links:function(){var t=this,e=[];return t.each((function®{r!==t&&e.push({source:r.parent,target:r})})),e},copy:function(){return i(this).eachBefore(s)}};var u=Array.prototype.slice;function h(t){for(var e,r,n=0,a=(t=function(t){for(var e,r,n=t.length;n;)r=Math.random()*n–|0,e=t[n],t[n]=t[r],t[r]=e;return t}(u.call(t))).length,i=[];n0&&r*r>n*n+a*a}function g(t,e){for(var r=0;r(o*=o)?(n=(c+o-a)/(2*c),i=Math.sqrt(Math.max(0,o/c-n*n)),r.x=t.x-n*s-i*l,r.y=t.y-n*l+i*s):(n=(c+a-o)/(2*c),i=Math.sqrt(Math.max(0,a/c-n*n)),r.x=e.x+n*s-i*l,r.y=e.y+n*l+i*s)):(r.x=e.x+r.r,r.y=e.y)}function b(t,e){var r=t.r+e.r-1e-6,n=e.x-t.x,a=e.y-t.y;return r>0&&r*r>n*n+a*a}function (t){var e=t.,r=t.next.,n=e.r+r.r,a=(e.x*r.r+r.x*e.r)/n,i=(e.y*r.r+r.y*e.r)/n;return a*a+i*i}function w(t){this.=t,this.next=null,this.previous=null}function T(t){if(!(a=t.length))return 0;var e,r,n,a,i,o,s,l,c,u,f;if((e=t[0]).x=0,e.y=0,!(a>1))return e.r;if(r=t[1],e.x=-r.r,r.x=e.r,r.y=0,!(a>2))return e.r+r.r;x(r,e,n=t[2]),e=new w(e),r=new w®,n=new w(n),e.next=n.previous=r,r.next=e.previous=n,n.next=r.previous=e;t:for(s=3;sf&&(f=s),m=u*u*g,(p=Math.max(f/m,m/h))>d){u-=s;break}d=p}v.push(o={value:u,dice:l1?e:1)},r}(G);var Z=function t(e){function r(t,r,n,a,i){if((o=t._squarify)&&o.ratio===e)for(var o,s,l,c,u,h=-1,f=o.length,p=t.value;++h1?e:1)},r}(G);t.cluster=function(){var t=e,a=1,i=1,o=!1;function s(e){var s,l=0;e.eachAfter((function(e){var a=e.children;a?(e.x=function(t){return t.reduce(r,0)/t.length}(a),e.y=function(t){return 1+t.reduce(n,0)}(a)):(e.x=s?l+=t(e,s):0,e.y=0,s=e)}));var c=function(t){for(var e;e=t.children;)t=e[0];return t}(e),u=function(t){for(var e;e=t.children;)t=e[e.length-1];return t}(e),h=c.x-t(c,u)/2,f=u.x+t(u,c)/2;return e.eachAfter(o?function(t){t.x=(t.x-e.x)*a,t.y=(e.y-t.y)*i}:function(t){t.x=(t.x-h)/(f-h)*a,t.y=(1-(e.y?t.y/e.y:1))*i})}return s.separation=function(e){return arguments.length?(t=e,s):t},s.size=function(t){return arguments.length?(o=!1,a=+t[0],i=+t[1],s):o?null:[a,i]},s.nodeSize=function(t){return arguments.length?(o=!0,a=+t[0],i=+t[1],s):o?[a,i]:null},s},t.hierarchy=i,t.pack=function(){var t=null,e=1,r=1,n=M;function a(a){return a.x=e/2,a.y=r/2,t?a.eachBefore(C(t)).eachAfter(L(n,.5)).eachBefore(P(1)):a.eachBefore(C(E)).eachAfter(L(M,1)).eachAfter(L(n,a.r/Math.min(e,r))).eachBefore(P(Math.min(e,r)/(2a.r))),a}return a.radius=function(e){return arguments.length?(t=k(e),a):t},a.size=function(t){return arguments.length?(e=+t[0],r=+t[1],a):[e,r]},a.padding=function(t){return arguments.length?(n=“function”==typeof t?t:S(+t),a):n},a},t.packEnclose=h,t.packSiblings=function(t){return T(t),t},t.partition=function(){var t=1,e=1,r=0,n=!1;function a(a){var i=a.height+1;return a.x0=a.y0=r,a.x1=t,a.y1=e/i,a.eachBefore(function(t,e){return function(n){n.children&&z(n,n.x0,t(n.depth+1)/e,n.x1,t*(n.depth+2)/e);var a=n.x0,i=n.y0,o=n.x1-r,s=n.y1-r;o0)throw new Error(“cycle”);return i}return r.id=function(e){return arguments.length?(t=A(e),r):t},r.parentId=function(t){return arguments.length?(e=A(t),r):e},r},t.tree=function(){var t=B,e=1,r=1,n=null;function a(a){var l=function(t){for(var e,r,n,a,i,o=new q(t,0),s=[o];e=s.pop();)if(n=e..children)for(e.children=new Array(i=n.length),a=i-1;a>=0;–a)s.push(r=e.children[a]=new q(n[a],a)),r.parent=e;return(o.parent=new q(null,0)).children=[o],o}(a);if(l.eachAfter(i),l.parent.m=-l.z,l.eachBefore(o),n)a.eachBefore(s);else{var c=a,u=a,h=a;a.eachBefore((function(t){t.xu.x&&(u=t),t.depth>h.depth&&(h=t)}));var f=c===u?1:t(c,u)/2,p=f-c.x,d=e/(u.x+f+p),g=r/(h.depth||1);a.eachBefore((function(t){t.x=(t.x+p)*d,t.y=t.depth*g}))}return a}function i(e){var r=e.children,n=e.parent.children,a=e.i?n[e.i-1]:null;if®{!function(t){for(var e,r=0,n=0,a=t.children,i=a.length;–i>=0;)(e=a[i]).z+=r,e.m+=r,r+=e.s+(n+=e.c)}(e);var i=(r[0].z+r[r.length-1].z)/2;a?(e.z=a.z+t(e.,a.),e.m=e.z-i):e.z=i}else a&&(e.z=a.z+t(e.,a.));e.parent.A=function(e,r,n){if®{for(var a,i=e,o=e,s=r,l=i.parent.children[0],c=i.m,u=o.m,h=s.m,f=l.m;s=j(s),i=N(i),s&&i;)l=N(l),(o=j(o)).a=e,(a=s.z+h-i.z-c+t(s.,i.))>0&&(V(U(s,e,n),e,a),c+=a,u+=a),h+=s.m,c+=i.m,f+=l.m,u+=o.m;s&&!j(o)&&(o.t=s,o.m+=h-u),i&&!N(l)&&(l.t=i,l.m+=c-f,n=e)}return n}(e,a,e.parent.A||n[0])}function o(t){t..x=t.z+t.parent.m,t.m+=t.parent.m}function s(t){t.x*=e,t.y=t.depth*r}return a.separation=function(e){return arguments.length?(t=e,a):t},a.size=function(t){return arguments.length?(n=!1,e=+t[0],r=+t[1],a):n?null:[e,r]},a.nodeSize=function(t){return arguments.length?(n=!0,e=+t[0],r=+t[1],a):n?[e,r]:null},a},t.treemap=function(){var t=W,e=!1,r=1,n=1,a=[0],i=M,o=M,s=M,l=M,c=M;function u(t){return t.x0=t.y0=0,t.x1=r,t.y1=n,t.eachBefore(h),a=[0],e&&t.eachBefore(I),t}function h(e){var r=a[e.depth],n=e.x0+r,u=e.y0+r,h=e.x1-r,f=e.y1-r;h=r-1){var u=s[e];return u.x0=a,u.y0=i,u.x1=o,void(u.y1=l)}var h=c[e],f=n/2+h,p=e+1,d=r-1;for(;p>>1;c[g]l-i){var y=(a*v+o*m)/n;t(e,p,m,a,i,y,l),t(p,r,v,y,i,o,l)}else{var x=(i*v+l*m)/n;t(e,p,m,a,i,o,x),t(p,r,v,a,x,o,l)}}(0,l,t.value,e,r,n,a)},t.treemapDice=z,t.treemapResquarify=Z,t.treemapSlice=H,t.treemapSliceDice=function(t,e,r,n,a){(1&t.depth?H:z)(t,e,r,n,a)},t.treemapSquarify=W,Object.defineProperty(t,”esModule”,{value:!0})}))},{}],159:[function(t,e,r){!function(n,a){“object”==typeof r&&“undefined”!=typeof e?a(r,t(“d3-color”)):a((n=n||self).d3=n.d3||{},n.d3)}(this,(function(t,e){“use strict”;function r(t,e,r,n,a){var i=t*t,o=i*t;return((1-3*t+3*i-o)*e+(4-6*i+3*o)*r+(1+3*t+3*i-3*o)*n+o*a)/6}function n(t){var e=t.length-1;return function(n){var a=n<=0?n=0:n>=1?(n=1,e-1):Math.floor(n*e),i=t[a],o=t[a+1],s=a>0?t[a-1]:2*i-o,l=a180||r<-180?r-360*Math.round(r/360):r):i(isNaN(t)?e:t)}function l(t){return 1==(t=+t)?c:function(e,r){return r-e?function(t,e,r){return t=Math.pow(t,r),e=Math.pow(e,r)-t,r=1/r,function(n){return Math.pow(t+ne,r)}}(e,r,t):i(isNaN(e)?r:e)}}function c(t,e){var r=e-t;return r?o(t,r):i(isNaN(t)?e:t)}var u=function t®{var n=l®;function a(t,r){var a=n((t=e.rgb(t)).r,(r=e.rgb®).r),i=n(t.g,r.g),o=n(t.b,r.b),s=c(t.opacity,r.opacity);return function(e){return t.r=a(e),t.g=i(e),t.b=o(e),t.opacity=s(e),t+“”}}return a.gamma=t,a}(1);function h(t){return function®{var n,a,i=r.length,o=new Array(i),s=new Array(i),l=new Array(i);for(n=0;n<i;++n)a=e.rgb(r[n]),o[n]=a.r||0,s[n]=a.g||0,l[n]=a.b||0;return o=t(o),s=t(s),l=t(l),a.opacity=1,function(t){return a.r=o(t),a.g=s(t),a.b=l(t),a+“”}}}var f=h(n),p=h(a);function d(t,e){e||(e=[]);var r,n=t?Math.min(e.length,t.length):0,a=e.slice();return function(i){for(r=0;r<n;++r)a[r]=t[r](1-i)+e[r]i;return a}}function g(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)}function m(t,e){var r,n=e?e.length:0,a=t?Math.min(n,t.length):0,i=new Array(a),o=new Array(n);for(r=0;r<a;++r)i[r]=T(t[r],e[r]);for(;r<n;++r)o[r]=e[r];return function(t){for(r=0;r<a;++r)o[r]=ir;return o}}function v(t,e){var r=new Date;return t=+t,e=+e,function(n){return r.setTime(t(1-n)+en),r}}function y(t,e){return t=+t,e=+e,function®{return t(1-r)+er}}function x(t,e){var r,n={},a={};for(r in null!==t&&“object”==typeof t||(t={}),null!==e&&“object”==typeof e||(e={}),e)r in t?n[r]=T(t[r],e[r]):a[r]=e[r];return function(t){for(r in n)a[r]=nr;return a}}var b=/[-+]?(?:\d+.?\d|.?\d+)(?:[eE][-+]?\d+)?/g,=new RegExp(b.source,“g”);function w(t,e){var r,n,a,i=b.lastIndex=.lastIndex=0,o=-1,s=[],l=[];for(t+=“”,e+=“”;(r=b.exec(t))&&(n=.exec(e));)(a=n.index)>i&&(a=e.slice(i,a),s[o]?s[o]+=a:s[++o]=a),(r=r[0])===(n=n[0])?s[o]?s[o]+=n:s[++o]=n:(s[++o]=null,l.push({i:o,x:y(r,n)})),i=.lastIndex;return i180?e+=360:e-t>180&&(t+=360),i.push({i:r.push(a®+“rotate(”,null,n)-2,x:y(t,e)})):e&&r.push(a®+“rotate(”+e+n)}(i.rotate,o.rotate,s,l),function(t,e,r,i){t!==e?i.push({i:r.push(a®+“skewX(”,null,n)-2,x:y(t,e)}):e&&r.push(a®+“skewX(”+e+n)}(i.skewX,o.skewX,s,l),function(t,e,r,n,i,o){if(t!==r||e!==n){var s=i.push(a(i)+“scale(”,null,“,”,null,“)”);o.push({i:s-4,x:y(t,r)},{i:s-2,x:y(e,n)})}else 1===r&&1===n||i.push(a(i)+“scale(”+r+“,”+n+“)”)}(i.scaleX,i.scaleY,o.scaleX,o.scaleY,s,l),i=o=null,function(t){for(var e,r=-1,n=l.length;++r<n;)s[(e=l[r]).i]=e.x(t);return s.join(“”)}}}var I=P((function(t){return”none”===t?C:(k||(k=document.createElement(“DIV”),A=document.documentElement,M=document.defaultView),k.style.transform=t,t=M.getComputedStyle(A.appendChild(k),null).getPropertyValue(“transform”),A.removeChild(k),L(+(t=t.slice(7,-1).split(“,”))[0],+t[1],+t[2],+t[3],+t[4],+t[5]))}),“px, “,“px)”,“deg)”),z=P((function(t){return null==t?C:(S||(S=document.createElementNS(“http://www.w3.org/2000/svg","g")),S.setAttribute("transform",t),(t=S.transform.baseVal.consolidate())?L((t=t.matrix).a,t.b,t.c,t.d,t.e,t.f):C)}),", “,”)“,”)“),O=Math.SQRT2;function D(t){return((t=Math.exp(t))+1/t)/2}function R(t){return function(r,n){var a=t((r=e.hsl®).h,(n=e.hsl(n)).h),i=c(r.s,n.s),o=c(r.l,n.l),s=c(r.opacity,n.opacity);return function(t){return r.h=a(t),r.s=i(t),r.l=o(t),r.opacity=s(t),r+”“}}}var F=R(s),B=R©;function N(t){return function(r,n){var a=t((r=e.hcl®).h,(n=e.hcl(n)).h),i=c(r.c,n.c),o=c(r.l,n.l),s=c(r.opacity,n.opacity);return function(t){return r.h=a(t),r.c=i(t),r.l=o(t),r.opacity=s(t),r+”“}}}var j=N(s),V=N©;function U(t){return function r(n){function a(r,a){var i=t((r=e.cubehelix®).h,(a=e.cubehelix(a)).h),o=c(r.s,a.s),s=c(r.l,a.l),l=c(r.opacity,a.opacity);return function(t){return r.h=i(t),r.s=o(t),r.l=s(Math.pow(t,n)),r.opacity=l(t),r+”“}}return n=+n,a.gamma=r,a}(1)}var q=U(s),H=U©;t.interpolate=T,t.interpolateArray=function(t,e){return(g(e)?d:m)(t,e)},t.interpolateBasis=n,t.interpolateBasisClosed=a,t.interpolateCubehelix=q,t.interpolateCubehelixLong=H,t.interpolateDate=v,t.interpolateDiscrete=function(t){var e=t.length;return function®{return t[Math.max(0,Math.min(e-1,Math.floor(r*e)))]}},t.interpolateHcl=j,t.interpolateHclLong=V,t.interpolateHsl=F,t.interpolateHslLong=B,t.interpolateHue=function(t,e){var r=s(+t,+e);return function(t){var e=r(t);return e-360Math.floor(e/360)}},t.interpolateLab=function(t,r){var n=c((t=e.lab(t)).l,(r=e.lab®).l),a=c(t.a,r.a),i=c(t.b,r.b),o=c(t.opacity,r.opacity);return function(e){return t.l=n(e),t.a=a(e),t.b=i(e),t.opacity=o(e),t+“”}},t.interpolateNumber=y,t.interpolateNumberArray=d,t.interpolateObject=x,t.interpolateRgb=u,t.interpolateRgbBasis=f,t.interpolateRgbBasisClosed=p,t.interpolateRound=function(t,e){return t=+t,e=+e,function®{return Math.round(t(1-r)+e*r)}},t.interpolateString=w,t.interpolateTransformCss=I,t.interpolateTransformSvg=z,t.interpolateZoom=function(t,e){var r,n,a=t[0],i=t[1],o=t[2],s=e[0],l=e[1],c=e[2],u=s-a,h=l-i,f=u*u+h*h;if(f<1e-12)n=Math.log(c/o)/O,r=function(t){return[a+t*u,i+t*h,o*Math.exp(O*t*n)]};else{var p=Math.sqrt(f),d=(c*c-o*o+4*f)/(2*o*2*p),g=(c*c-o*o-4*f)/(2*c*2*p),m=Math.log(Math.sqrt(d*d+1)-d),v=Math.log(Math.sqrt(g*g+1)-g);n=(v-m)/O,r=function(t){var e,r=t*n,s=D(m),l=o/(2p)(s*(e=O*r+m,((e=Math.exp(2*e))-1)/(e+1))-function(t){return((t=Math.exp(t))-1/t)/2}(m));return[a+l*u,i+l*h,o*s/D(O*r+m)]}}return r.duration=1e3n,r},t.piecewise=function(t,e){for(var r=0,n=e.length-1,a=e[0],i=new Array(n<0?0:n);r<n;)i[r]=t(a,a=e[++r]);return function(t){var e=Math.max(0,Math.min(n-1,Math.floor(t=n)));return ie}},t.quantize=function(t,e){for(var r=new Array(e),n=0;n<e;++n)r[n]=t(n/(e-1));return r},Object.defineProperty(t,”esModule”,{value:!0})}))},{“d3-color”:155}],160:[function(t,e,r){!function(t,n){“object”==typeof r&&“undefined”!=typeof e?n®:n((t=t||self).d3=t.d3||{})}(this,(function(t){“use strict”;var e=Math.PI,r=2*e,n=r-1e-6;function a(){this._x0=this._y0=this._x1=this.y1=null,this.=“”}function i(){return new a}a.prototype=i.prototype={constructor:a,moveTo:function(t,e){this._+=“M”+(this._x0=this._x1=+t)+“,”+(this._y0=this._y1=+e)},closePath:function(){null!==this._x1&&(this._x1=this._x0,this._y1=this.y0,this.+=“Z”)},lineTo:function(t,e){this._+=“L”+(this._x1=+t)+“,”+(this.y1=+e)},quadraticCurveTo:function(t,e,r,n){this.+=“Q”+ +t+“,”+ +e+“,”+(this._x1=+r)+“,”+(this.y1=+n)},bezierCurveTo:function(t,e,r,n,a,i){this.+=“C”+ +t+“,”+ +e+“,”+ +r+“,”+ +n+“,”+(this._x1=+a)+“,”+(this._y1=+i)},arcTo:function(t,r,n,a,i){t=+t,r=+r,n=+n,a=+a,i=+i;var o=this._x1,s=this._y1,l=n-t,c=a-r,u=o-t,h=s-r,f=u*u+h*h;if(i<0)throw new Error("negative radius: "+i);if(null===this._x1)this._+="M"+(this._x1=t)+","+(this._y1=r);else if(f>1e-6)if(Math.abs(h*l-c*u)>1e-6&&i){var p=n-o,d=a-s,g=l*l+c*c,m=p*p+d*d,v=Math.sqrt(g),y=Math.sqrt(f),x=i*Math.tan((e-Math.acos((g+f-m)/(2*v*y)))/2),b=x/y,=x/v;Math.abs(b-1)>1e-6&&(this.+=“L”+(t+b*u)+“,”+(r+b*h)),this._+=“A”+i+“,”+i+“,0,0,”+ +(h*p>u*d)+“,”+(this.x1=t+*l)+“,”+(this.y1=r+*c)}else this._+=“L”+(this._x1=t)+“,”+(this._y1=r);else;},arc:function(t,a,i,o,s,l){t=+t,a=+a,l=!!l;var c=(i=+i)*Math.cos(o),u=i*Math.sin(o),h=t+c,f=a+u,p=1^l,d=l?o-s:s-o;if(i<0)throw new Error("negative radius: "+i);null===this._x1?this._+="M"+h+","+f:(Math.abs(this._x1-h)>1e-6||Math.abs(this.y1-f)>1e-6)&&(this.+=“L”+h+“,”+f),i&&(d<0&&(d=d%r+r),d>n?this._+=“A”+i+“,”+i+“,0,1,”+p+“,”+(t-c)+“,”+(a-u)+“A”+i+“,”+i+“,0,1,”+p+“,”+(this._x1=h)+“,”+(this.y1=f):d>1e-6&&(this.+=“A”+i+“,”+i+“,0,”+ +(d>=e)+“,”+p+“,”+(this._x1=t+i*Math.cos(s))+“,”+(this.y1=a+i*Math.sin(s))))},rect:function(t,e,r,n){this.+=“M”+(this._x0=this._x1=+t)+“,”+(this._y0=this.y1=+e)+“h”+ +r+“v”+ +n+“h”+-r+“Z”},toString:function(){return this.}},t.path=i,Object.defineProperty(t,”esModule”,{value:!0})}))},{}],161:[function(t,e,r){!function(t,n){“object”==typeof r&&“undefined”!=typeof e?n®:n((t=t||self).d3=t.d3||{})}(this,(function(t){“use strict”;function e(t,e,r,n){if(isNaN(e)||isNaN®)return t;var a,i,o,s,l,c,u,h,f,p=t._root,d={data:n},g=t._x0,m=t._y0,v=t._x1,y=t._y1;if(!p)return t._root=d,t;for(;p.length;)if((c=e>=(i=(g+v)/2))?g=i:v=i,(u=r>=(o=(m+y)/2))?m=o:y=o,a=p,!(p=p[h=u<<1|c]))return a[h]=d,t;if(s=+t._x.call(null,p.data),l=+t._y.call(null,p.data),e===s&&r===l)return d.next=p,a?a[h]=d:t._root=d,t;do{a=a?a[h]=new Array(4):t._root=new Array(4),(c=e>=(i=(g+v)/2))?g=i:v=i,(u=r>=(o=(m+y)/2))?m=o:y=o}while((h=u<<1|c)==(f=(l>=o)<<1|s>=i));return a[f]=p,a[h]=d,t}function r(t,e,r,n,a){this.node=t,this.x0=e,this.y0=r,this.x1=n,this.y1=a}function n(t){return t[0]}function a(t){return t[1]}function i(t,e,r){var i=new o(null==e?n:e,null==r?a:r,NaN,NaN,NaN,NaN);return null==t?i:i.addAll(t)}function o(t,e,r,n,a,i){this._x=t,this._y=e,this._x0=r,this._y0=n,this._x1=a,this._y1=i,this._root=void 0}function s(t){for(var e={data:t.data},r=e;t=t.next;)r=r.next={data:t.data};return e}var l=i.prototype=o.prototype;l.copy=function(){var t,e,r=new o(this._x,this._y,this._x0,this._y0,this._x1,this._y1),n=this._root;if(!n)return r;if(!n.length)return r._root=s(n),r;for(t=[{source:n,target:r._root=new Array(4)}];n=t.pop();)for(var a=0;a<4;++a)(e=n.source[a])&&(e.length?t.push({source:e,target:n.target[a]=new Array(4)}):n.target[a]=s(e));return r},l.add=function(t){var r=+this._x.call(null,t),n=+this._y.call(null,t);return e(this.cover(r,n),r,n,t)},l.addAll=function(t){var r,n,a,i,o=t.length,s=new Array(o),l=new Array(o),c=1/0,u=1/0,h=-1/0,f=-1/0;for(n=0;nh&&(h=a),if&&(f=i));if(c>h||u>f)return this;for(this.cover(c,u).cover(h,f),n=0;nt||t>=a||n>e||e>=i;)switch(s=(ep||(o=c.y0)>d||(s=c.x1)=y)<<1|t>=v)&&(c=g[g.length-1],g[g.length-1]=g[g.length-1-u],g[g.length-1-u]=c)}else{var x=t-+this._x.call(null,m.data),b=e-+this.y.call(null,m.data),=x*x+b*b;if(<n){var w=Math.sqrt(n=);h=t-w,f=e-w,p=t+w,d=e+w,a=m.data}}return a},l.remove=function(t){if(isNaN(i=+this._x.call(null,t))||isNaN(o=+this._y.call(null,t)))return this;var e,r,n,a,i,o,s,l,c,u,h,f,p=this._root,d=this._x0,g=this._y0,m=this._x1,v=this._y1;if(!p)return this;if(p.length)for(;;){if((c=i>=(s=(d+m)/2))?d=s:m=s,(u=o>=(l=(g+v)/2))?g=l:v=l,e=p,!(p=p[h=u<<1|c]))return this;if(!p.length)break;(e[h+1&3]||e[h+2&3]||e[h+3&3])&&(r=e,f=h)}for(;p.data!==t;)if(n=p,!(p=p.next))return this;return(a=p.next)&&delete p.next,n?(a?n.next=a:delete n.next,this):e?(a?e[h]=a:delete e[h],(p=e[0]||e[1]||e[2]||e[3])&&p===(e[3]||e[2]||e[1]||e[0])&&!p.length&&(r?r[f]=p:this._root=p),this):(this._root=a,this)},l.removeAll=function(t){for(var e=0,r=t.length;e<r;++e)this.remove(t[e]);return this},l.root=function(){return this._root},l.size=function(){var t=0;return this.visit((function(e){if(!e.length)do{++t}while(e=e.next)})),t},l.visit=function(t){var e,n,a,i,o,s,l=[],c=this._root;for(c&&l.push(new r(c,this._x0,this._y0,this._x1,this._y1));e=l.pop();)if(!t(c=e.node,a=e.x0,i=e.y0,o=e.x1,s=e.y1)&&c.length){var u=(a+o)/2,h=(i+s)/2;(n=c[3])&&l.push(new r(n,u,h,o,s)),(n=c[2])&&l.push(new r(n,a,h,u,s)),(n=c[1])&&l.push(new r(n,u,i,o,h)),(n=c[0])&&l.push(new r(n,a,i,u,h))}return this},l.visitAfter=function(t){var e,n=[],a=[];for(this._root&&n.push(new r(this._root,this._x0,this._y0,this._x1,this._y1));e=n.pop();){var i=e.node;if(i.length){var o,s=e.x0,l=e.y0,c=e.x1,u=e.y1,h=(s+c)/2,f=(l+u)/2;(o=i[0])&&n.push(new r(o,s,l,h,f)),(o=i[1])&&n.push(new r(o,h,l,c,f)),(o=i[2])&&n.push(new r(o,s,f,h,u)),(o=i[3])&&n.push(new r(o,h,f,c,u))}a.push(e)}for(;e=a.pop();)t(e.node,e.x0,e.y0,e.x1,e.y1);return this},l.x=function(t){return arguments.length?(this._x=t,this):this._x},l.y=function(t){return arguments.length?(this._y=t,this):this._y},t.quadtree=i,Object.defineProperty(t,”esModule”,{value:!0})}))},{}],162:[function(t,e,r){!function(n,a){“object”==typeof r&&“undefined”!=typeof e?a(r,t(“d3-path”)):a((n=n||self).d3=n.d3||{},n.d3)}(this,(function(t,e){“use strict”;function r(t){return function(){return t}}var n=Math.abs,a=Math.atan2,i=Math.cos,o=Math.max,s=Math.min,l=Math.sin,c=Math.sqrt,u=Math.PI,h=u/2,f=2*u;function p(t){return t>1?0:t<-1?u:Math.acos(t)}function d(t){return t>=1?h:t<=-1?-h:Math.asin(t)}function g(t){return t.innerRadius}function m(t){return t.outerRadius}function v(t){return t.startAngle}function y(t){return t.endAngle}function x(t){return t&&t.padAngle}function b(t,e,r,n,a,i,o,s){var l=r-t,c=n-e,u=o-a,h=s-i,f=h*l-u*c;if(!(ff<1e-12))return[t+(f=(u(e-i)-h*(t-a))/f)*l,e+f*c]}function (t,e,r,n,a,i,s){var l=t-r,u=e-n,h=(s?i:-i)/c(l*l+u*u),f=h*u,p=-h*l,d=t+f,g=e+p,m=r+f,v=n+p,y=(d+m)/2,x=(g+v)/2,b=m-d,=v-g,w=bb+_,T=a-i,k=d*v-m*g,A=(<0?-1:1)*c(o(0,T*T*w-k*k)),M=(k*_-b*A)/w,S=(-k*b-_*A)/w,E=(k*_+b*A)/w,C=(-k*b+_*A)/w,L=M-y,P=S-x,I=E-y,z=C-x;return L*L+P*P>I*I+zz&&(M=E,S=C),{cx:M,cy:S,x01:-f,y01:-p,x11:M(a/T-1),y11:S*(a/T-1)}}function w(t){this._context=t}function T(t){return new w(t)}function k(t){return t[0]}function A(t){return t[1]}function M(){var t=k,n=A,a=r(!0),i=null,o=T,s=null;function l®{var l,c,u,h=r.length,f=!1;for(null==i&&(s=o(u=e.path())),l=0;l<=h;++l)!(l=h;–f)c.point(v[f],y[f]);c.lineEnd(),c.areaEnd()}m&&(v[u]=+t(p,u,r),y[u]=+a(p,u,r),c.point(n?+n(p,u,r):v[u],i?+i(p,u,r):y[u]))}if(d)return c=null,d+“”||null}function h(){return M().defined(o).curve(l).context(s)}return u.x=function(e){return arguments.length?(t=“function”==typeof e?e:r(+e),n=null,u):t},u.x0=function(e){return arguments.length?(t=“function”==typeof e?e:r(+e),u):t},u.x1=function(t){return arguments.length?(n=null==t?null:“function”==typeof t?t:r(+t),u):n},u.y=function(t){return arguments.length?(a=“function”==typeof t?t:r(+t),i=null,u):a},u.y0=function(t){return arguments.length?(a=“function”==typeof t?t:r(+t),u):a},u.y1=function(t){return arguments.length?(i=null==t?null:“function”==typeof t?t:r(+t),u):i},u.lineX0=u.lineY0=function(){return h().x(t).y(a)},u.lineY1=function(){return h().x(t).y(i)},u.lineX1=function(){return h().x(n).y(a)},u.defined=function(t){return arguments.length?(o=“function”==typeof t?t:r(!!t),u):o},u.curve=function(t){return arguments.length?(l=t,null!=s&&(c=l(s)),u):l},u.context=function(t){return arguments.length?(null==t?s=c=null:c=l(s=t),u):s},u}function E(t,e){return et?1:e>=t?0:NaN}function C(t){return t}w.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:this._context.lineTo(t,e)}}};var L=I(T);function P(t){this._curve=t}function I(t){function e(e){return new P(t(e))}return e._curve=t,e}function z(t){var e=t.curve;return t.angle=t.x,delete t.x,t.radius=t.y,delete t.y,t.curve=function(t){return arguments.length?e(I(t)):e()._curve},t}function O(){return z(M().curve(L))}function D(){var t=S().curve(L),e=t.curve,r=t.lineX0,n=t.lineX1,a=t.lineY0,i=t.lineY1;return t.angle=t.x,delete t.x,t.startAngle=t.x0,delete t.x0,t.endAngle=t.x1,delete t.x1,t.radius=t.y,delete t.y,t.innerRadius=t.y0,delete t.y0,t.outerRadius=t.y1,delete t.y1,t.lineStartAngle=function(){return z(r())},delete t.lineX0,t.lineEndAngle=function(){return z(n())},delete t.lineX1,t.lineInnerRadius=function(){return z(a())},delete t.lineY0,t.lineOuterRadius=function(){return z(i())},delete t.lineY1,t.curve=function(t){return arguments.length?e(I(t)):e()._curve},t}function R(t,e){return[(e=+e)*Math.cos(t-=Math.PI/2),e*Math.sin(t)]}P.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(t,e){this._curve.point(eMath.sin(t),e-Math.cos(t))}};var F=Array.prototype.slice;function B(t){return t.source}function N(t){return t.target}function j(t){var n=B,a=N,i=k,o=A,s=null;function l(){var r,l=F.call(arguments),c=n.apply(this,l),u=a.apply(this,l);if(s||(s=r=e.path()),t(s,+i.apply(this,(l[0]=c,l)),+o.apply(this,l),+i.apply(this,(l[0]=u,l)),+o.apply(this,l)),r)return s=null,r+“”||null}return l.source=function(t){return arguments.length?(n=t,l):n},l.target=function(t){return arguments.length?(a=t,l):a},l.x=function(t){return arguments.length?(i=“function”==typeof t?t:r(+t),l):i},l.y=function(t){return arguments.length?(o=“function”==typeof t?t:r(+t),l):o},l.context=function(t){return arguments.length?(s=null==t?null:t,l):s},l}function V(t,e,r,n,a){t.moveTo(e,r),t.bezierCurveTo(e=(e+n)/2,r,e,a,n,a)}function U(t,e,r,n,a){t.moveTo(e,r),t.bezierCurveTo(e,r=(r+a)/2,n,r,n,a)}function q(t,e,r,n,a){var i=R(e,r),o=R(e,r=(r+a)/2),s=R(n,r),l=R(n,a);t.moveTo(i[0],i[1]),t.bezierCurveTo(o[0],o[1],s[0],s[1],l[0],l[1])}var H={draw:function(t,e){var r=Math.sqrt(e/u);t.moveTo(r,0),t.arc(0,0,r,0,f)}},G={draw:function(t,e){var r=Math.sqrt(e/5)/2;t.moveTo(-3*r,-r),t.lineTo(-r,-r),t.lineTo(-r,-3*r),t.lineTo(r,-3*r),t.lineTo(r,-r),t.lineTo(3*r,-r),t.lineTo(3*r,r),t.lineTo(r,r),t.lineTo(r,3*r),t.lineTo(-r,3*r),t.lineTo(-r,r),t.lineTo(-3*r,r),t.closePath()}},Y=Math.sqrt(13),W=2*Y,Z={draw:function(t,e){var r=Math.sqrt(e/W),n=r*Y;t.moveTo(0,-r),t.lineTo(n,0),t.lineTo(0,r),t.lineTo(-n,0),t.closePath()}},X=Math.sin(u/10)/Math.sin(7*u/10),J=Math.sin(f/10)*X,K=-Math.cos(f/10)*X,Q={draw:function(t,e){var r=Math.sqrt(.8908130915292852*e),n=J*r,a=K*r;t.moveTo(0,-r),t.lineTo(n,a);for(var i=1;i<5;++i){var o=f*i/5,s=Math.cos(o),l=Math.sin(o);t.lineTo(l*r,-s*r),t.lineTo(s*n-l*a,l*n+s*a)}t.closePath()}},$={draw:function(t,e){var r=Math.sqrt(e),n=-r/2;t.rect(n,n,r,r)}},tt=Math.sqrt(3),et={draw:function(t,e){var r=-Math.sqrt(e/(3*tt));t.moveTo(0,2*r),t.lineTo(-tt*r,-r),t.lineTo(tt*r,-r),t.closePath()}},rt=-.5,nt=Math.sqrt(3)/2,at=1/Math.sqrt(12),it=3*(at/2+1),ot={draw:function(t,e){var r=Math.sqrt(e/it),n=r/2,a=r*at,i=n,o=r*at+r,s=-i,l=o;t.moveTo(n,a),t.lineTo(i,o),t.lineTo(s,l),t.lineTo(rt*n-nt*a,nt*n+rt*a),t.lineTo(rt*i-nt*o,nt*i+rt*o),t.lineTo(rt*s-nt*l,nt*s+rt*l),t.lineTo(rt*n+nt*a,rt*a-nt*n),t.lineTo(rt*i+nt*o,rt*o-nt*i),t.lineTo(rt*s+nt*l,rt*l-nt*s),t.closePath()}},st=[H,G,Z,$,Q,et,ot];function lt(){}function ct(t,e,r){t._context.bezierCurveTo((2*t._x0+t._x1)/3,(2*t._y0+t._y1)/3,(t._x0+2*t._x1)/3,(t._y0+2*t._y1)/3,(t._x0+4*t._x1+e)/6,(t._y0+4*t._y1+r)/6)}function ut(t){this._context=t}function ht(t){this._context=t}function ft(t){this._context=t}function pt(t,e){this._basis=new ut(t),this._beta=e}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(){switch(this._point){case 3:ct(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);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:ct(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}},ht.prototype={areaStart:lt,areaEnd:lt,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)}},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x2=t,this._y2=e;break;case 1:this._point=2,this._x3=t,this._y3=e;break;case 2:this._point=3,this._x4=t,this._y4=e,this._context.moveTo((this._x0+4*this._x1+t)/6,(this._y0+4*this._y1+e)/6);break;default:ct(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}},ft.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||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var r=(this._x0+4*this._x1+t)/6,n=(this._y0+4*this._y1+e)/6;this._line?this._context.lineTo(r,n):this._context.moveTo(r,n);break;case 3:this._point=4;default:ct(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}},pt.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var t=this._x,e=this._y,r=t.length-1;if(r>0)for(var n,a=t[0],i=e[0],o=t[r]-a,s=e[r]-i,l=-1;++l<=r;)n=l/r,this._basis.point(this._betat[l]+(1-this._beta)(a+n*o),this._betae[l]+(1-this._beta)(i+ns));this._x=this._y=null,this._basis.lineEnd()},point:function(t,e){this._x.push(+t),this._y.push(+e)}};var dt=function t(e){function r(t){return 1===e?new ut(t):new pt(t,e)}return r.beta=function(e){return t(+e)},r}(.85);function gt(t,e,r){t._context.bezierCurveTo(t._x1+t._k(t._x2-t._x0),t._y1+t._k(t._y2-t._y0),t._x2+t._k(t._x1-e),t._y2+t._k*(t._y1-r),t._x2,t._y2)}function mt(t,e){this._context=t,this._k=(1-e)/6}mt.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:gt(this,this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2,this._x1=t,this._y1=e;break;case 2:this._point=3;default:gt(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var vt=function t(e){function r(t){return new mt(t,e)}return r.tension=function(e){return t(+e)},r}(0);function yt(t,e){this._context=t,this._k=(1-e)/6}yt.prototype={areaStart:lt,areaEnd:lt,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)}},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:gt(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var xt=function t(e){function r(t){return new yt(t,e)}return r.tension=function(e){return t(+e)},r}(0);function bt(t,e){this._context=t,this._k=(1-e)/6}bt.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||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,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:gt(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var _t=function t(e){function r(t){return new bt(t,e)}return r.tension=function(e){return t(+e)},r}(0);function wt(t,e,r){var n=t._x1,a=t._y1,i=t._x2,o=t._y2;if(t._l01_a>1e-12){var s=2*t._l01_2a+3*t._l01_a*t._l12_a+t._l12_2a,l=3t._l01_a(t._l01_a+t._l12_a);n=(n*s-t._x0*t._l12_2a+t._x2*t._l01_2a)/l,a=(a*s-t._y0*t._l12_2a+t._y2*t._l01_2a)/l}if(t._l23_a>1e-12){var c=2*t._l23_2a+3*t._l23_a*t._l12_a+t._l12_2a,u=3t._l23_a(t._l23_a+t._l12_a);i=(i*c+t._x1*t._l23_2a-e*t._l12_2a)/u,o=(o*c+t._y1*t._l23_2a-r*t._l12_2a)/u}t._context.bezierCurveTo(n,a,i,o,t._x2,t._y2)}function Tt(t,e){this._context=t,this._alpha=e}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._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)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3;default:wt(this,t,e)}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=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var kt=function t(e){function r(t){return e?new Tt(t,e):new mt(t,0)}return r.alpha=function(e){return t(+e)},r}(.5);function At(t,e){this._context=t,this._alpha=e}At.prototype={areaStart:lt,areaEnd:lt,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)}},point:function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:wt(this,t,e)}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=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var Mt=function t(e){function r(t){return e?new At(t,e):new yt(t,0)}return r.alpha=function(e){return t(+e)},r}(.5);function St(t,e){this._context=t,this._alpha=e}St.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||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t=+t,e=+e,this._point){var r=this._x2-t,n=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(r*r+n*n,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:wt(this,t,e)}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=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};var Et=function t(e){function r(t){return e?new St(t,e):new bt(t,0)}return r.alpha=function(e){return t(+e)},r}(.5);function Ct(t){this._context=t}function Lt(t){return t<0?-1:1}function Pt(t,e,r){var n=t._x1-t._x0,a=e-t._x1,i=(t._y1-t._y0)/(n||a<0&&-0),o=(r-t._y1)/(a||n<0&&-0),s=(i*a+o*n)/(n+a);return(Lt(i)+Lt(o))*Math.min(Math.abs(i),Math.abs(o),.5*Math.abs(s))||0}function It(t,e){var r=t._x1-t._x0;return r?(3*(t._y1-t._y0)/r-e)/2:e}function zt(t,e,r){var n=t._x0,a=t._y0,i=t._x1,o=t._y1,s=(i-n)/3;t._context.bezierCurveTo(n+s,a+s*e,i-s,o-s*r,i,o)}function Ot(t){this._context=t}function Dt(t){this._context=new Rt(t)}function Rt(t){this._context=t}function Ft(t){this._context=t}function Bt(t){var e,r,n=t.length-1,a=new Array(n),i=new Array(n),o=new Array(n);for(a[0]=0,i[0]=2,o[0]=t[0]+2*t[1],e=1;e=0;–e)a[e]=(o[e]-a[e+1])/i[e];for(i[n-1]=(t[n]+a[n-1])/2,e=0;e1)for(var r,n,a,i=1,o=t[e[0]],s=o.length;i=0;)r[e]=e;return r}function Ut(t,e){return t[e]}function qt(t){var e=t.map(Ht);return Vt(t).sort((function(t,r){return e[t]-e[r]}))}function Ht(t){for(var e,r=-1,n=0,a=t.length,i=-10;++ri&&(i=e,n=r);return n}function Gt(t){var e=t.map(Yt);return Vt(t).sort((function(t,r){return e[t]-e[r]}))}function Yt(t){for(var e,r=0,n=-1,a=t.length;++n=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,e),this._context.lineTo(t,e);else{var r=this._x*(1-this._t)+t*this._t;this._context.lineTo(r,this._y),this._context.lineTo(r,e)}}this._x=t,this.y=e}},t.arc=function(){var t=g,o=m,w=r(0),T=null,k=v,A=y,M=x,S=null;function E(){var r,g,m=+t.apply(this,arguments),v=+o.apply(this,arguments),y=k.apply(this,arguments)-h,x=A.apply(this,arguments)-h,E=n(x-y),C=x>y;if(S||(S=r=e.path()),v1e-12)if(E>f-1e-12)S.moveTo(v*i(y),v*l(y)),S.arc(0,0,v,y,x,!C),m>1e-12&&(S.moveTo(m*i(x),m*l(x)),S.arc(0,0,m,x,y,C));else{var L,P,I=y,z=x,O=y,D=x,R=E,F=E,B=M.apply(this,arguments)/2,N=B>1e-12&&(T?+T.apply(this,arguments):c(m*m+v*v)),j=s(n(v-m)/2,+w.apply(this,arguments)),V=j,U=j;if(N>1e-12){var q=d(N/m*l(B)),H=d(N/v*l(B));(R-=2q)>1e-12?(O+=q=C?1:-1,D-=q):(R=0,O=D=(y+x)/2),(F-=2H)>1e-12?(I+=H=C?1:-1,z-=H):(F=0,I=z=(y+x)/2)}var G=v*i(I),Y=v*l(I),W=m*i(D),Z=m*l(D);if(j>1e-12){var X,J=v*i(z),K=v*l(z),Q=m*i(O),$=m*l(O);if(E1e-12?U>1e-12?(L=(Q,$,G,Y,v,U,C),P=(J,K,W,Z,v,U,C),S.moveTo(L.cx+L.x01,L.cy+L.y01),U1e-12&&R>1e-12?V>1e-12?(L=(W,Z,J,K,m,-V,C),P=_(G,Y,Q,$,m,-V,C),S.lineTo(L.cx+L.x01,L.cy+L.y01),V0&&(d+=h);for(null!=e?g.sort((function(t,r){return e(m[t],m[r])})):null!=n&&g.sort((function(t,e){return n(r[t],r[e])})),s=0,c=d?(y-p*b)/d:0;s0?h*c:0)+b,m[l]={data:r[l],index:s,value:h,startAngle:v,endAngle:u,padAngle:x};return m}return s.value=function(e){return arguments.length?(t=“function”==typeof e?e:r(+e),s):t},s.sortValues=function(t){return arguments.length?(e=t,n=null,s):e},s.sort=function(t){return arguments.length?(n=t,e=null,s):n},s.startAngle=function(t){return arguments.length?(a=“function”==typeof t?t:r(+t),s):a},s.endAngle=function(t){return arguments.length?(i=“function”==typeof t?t:r(+t),s):i},s.padAngle=function(t){return arguments.length?(o=“function”==typeof t?t:r(+t),s):o},s},t.pointRadial=R,t.radialArea=D,t.radialLine=O,t.stack=function(){var t=r([]),e=Vt,n=jt,a=Ut;function i®{var i,o,s=t.apply(this,arguments),l=r.length,c=s.length,u=new Array©;for(i=0;i0)for(var r,n,a,i,o,s,l=0,c=t[e[0]].length;l0?(n[0]=i,n[1]=i+=a):a<0?(n[1]=o,n[0]=o+=a):(n[0]=0,n[1]=a)},t.stackOffsetExpand=function(t,e){if((n=t.length)>0){for(var r,n,a,i=0,o=t[0].length;i0){for(var r,n=0,a=t[e[0]],i=a.length;n0&&(n=(r=t[e[0]]).length)>0){for(var r,n,a,i=0,o=1;o=0&&r._call.call(null,t),r=r._next;–n}function m(){s=(o=c.now())+l,n=a=0;try{g()}finally{n=0,function(){var t,n,a=e,i=10;for(;a;)a._call?(i>a._time&&(i=a._time),t=a,a=a._next):(n=a._next,a._next=null,a=t?t._next=n:e=n);r=t,y(i)}(),s=0}}function v(){var t=c.now(),e=t-o;e>1e3&&(l-=e,o=t)}function y(t){n||(a&&(a=clearTimeout(a)),t-s>24?(t<1/0&&(a=setTimeout(m,t-c.now()-l)),i&&(i=clearInterval(i))):(i||(o=c.now(),i=setInterval(v,1e3)),n=1,u(m)))}p.prototype=d.prototype={constructor:p,restart:function(t,n,a){if("function"!=typeof t)throw new TypeError("callback is not a function");a=(null==a?h():+a)+(null==n?0:+n),this._next||r===this||(r?r._next=this:e=this,r=this),this._call=t,this._time=a,y()},stop:function(){this._call&&(this._call=null,this._time=1/0,y())}},t.interval=function(t,e,r){var n=new p,a=e;return null==e?(n.restart(t,e,r),n):(e=+e,r=null==r?h():+r,n.restart((function i(o){o+=a,n.restart(i,a+=e,r),t(o)}),e,r),n)},t.now=h,t.timeout=function(t,e,r){var n=new p;return e=null==e?0:+e,n.restart((function(r){n.stop(),t(r+e)}),e,r),n},t.timer=d,t.timerFlush=g,Object.defineProperty(t,"__esModule",{value:!0})}))},{}],164:[function(t,e,r){!function(){var t={version:"3.5.17"},r=[].slice,n=function(t){return r.call(t)},a=this.document;function i(t){return t&&(t.ownerDocument||t.document||t).documentElement}function o(t){return t&&(t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView)}if(a)try{n(a.documentElement.childNodes)[0].nodeType}catch(t){n=function(t){for(var e=t.length,r=new Array(e);e--;)r[e]=t[e];return r}}if(Date.now||(Date.now=function(){return+new Date}),a)try{a.createElement("DIV").style.setProperty("opacity",0,"")}catch(t){var s=this.Element.prototype,l=s.setAttribute,c=s.setAttributeNS,u=this.CSSStyleDeclaration.prototype,h=u.setProperty;s.setAttribute=function(t,e){l.call(this,t,e+"")},s.setAttributeNS=function(t,e,r){c.call(this,t,e,r+"")},u.setProperty=function(t,e,r){h.call(this,t,e+"",r)}}function f(t,e){return te?1:t>=e?0:NaN}function p(t){return null===t?NaN:+t}function d(t){return!isNaN(t)}function g(t){return{left:function(e,r,n,a){for(arguments.length<3&&(n=0),arguments.length<4&&(a=e.length);n>>1;t(e[i],r)<0?n=i+1:a=i}return n},right:function(e,r,n,a){for(arguments.length<3&&(n=0),arguments.length<4&&(a=e.length);n>>1;t(e[i],r)>0?a=i:n=i+1}return n}}}t.ascending=f,t.descending=function(t,e){return et?1:e>=t?0:NaN},t.min=function(t,e){var r,n,a=-1,i=t.length;if(1===arguments.length){for(;++a=n){r=n;break}for(;++an&&(r=n)}else{for(;++a=n){r=n;break}for(;++an&&(r=n)}return r},t.max=function(t,e){var r,n,a=-1,i=t.length;if(1===arguments.length){for(;++a=n){r=n;break}for(;++ar&&(r=n)}else{for(;++a=n){r=n;break}for(;++ar&&(r=n)}return r},t.extent=function(t,e){var r,n,a,i=-1,o=t.length;if(1===arguments.length){for(;++i=n){r=a=n;break}for(;++in&&(r=n),a=n){r=a=n;break}for(;++in&&(r=n),a1)return o/(l-1)},t.deviation=function(){var e=t.variance.apply(this,arguments);return e?Math.sqrt(e):e};var m=g(f);function v(t){return t.length}t.bisectLeft=m.left,t.bisect=t.bisectRight=m.right,t.bisector=function(t){return g(1===t.length?function(e,r){return f(t(e),r)}:t)},t.shuffle=function(t,e,r){(i=arguments.length)<3&&(r=t.length,i<2&&(e=0));for(var n,a,i=r-e;i;)a=Math.random()*i--|0,n=t[i+e],t[i+e]=t[a+e],t[a+e]=n;return t},t.permute=function(t,e){for(var r=e.length,n=new Array(r);r--;)n[r]=t[e[r]];return n},t.pairs=function(t){for(var e=0,r=t.length-1,n=t[0],a=new Array(r<0?0:r);e=0;)for(e=(n=t[a]).length;–e>=0;)r[–o]=n[e];return r};var y=Math.abs;function x(t){for(var e=1;te%1;)e=10;return e}function b(t,e){for(var r in e)Object.defineProperty(t.prototype,r,{value:e[r],enumerable:!1})}function (){this.=Object.create(null)}t.range=function(t,e,r){if(arguments.length<3&&(r=1,arguments.length<2&&(e=t,t=0)),(e-t)/r==1/0)throw new Error("infinite range");var n,a=[],i=x(y(r)),o=-1;if(t*=i,e*=i,(r*=i)<0)for(;(n=t+r*++o)>e;)a.push(n/i);else for(;(n=t+r++o)=a.length)return r?r.call(n,i):e?i.sort(e):i;for(var l,c,u,h,f=-1,p=i.length,d=a[s++],g=new ;++f=a.length)return e;var n=[],o=i[r++];return e.forEach((function(e,a){n.push({key:e,values:t(a,r)})})),o?n.sort((function(t,e){return o(t.key,e.key)})):n}(o(t.map,e,0),0)},n.key=function(t){return a.push(t),n},n.sortKeys=function(t){return i[a.length-1]=t,n},n.sortValues=function(t){return e=t,n},n.rollup=function(t){return r=t,n},n},t.set=function(t){var e=new C;if(t)for(var r=0,n=t.length;r<n;++r)e.add(t[r]);return e},b(C,{has:k,add:function(t){return this.[w(t+=“”)]=!0,t},remove:A,values:M,size:S,empty:E,forEach:function(t){for(var e in this._)t.call(this,T(e))}}),t.behavior={},t.rebind=function(t,e){for(var r,n=1,a=arguments.length;++n=0&&(n=t.slice(r+1),t=t.slice(0,r)),t)return arguments.length<2?this[t].on(n):this[t].on(n,e);if(2===arguments.length){if(null==e)for(t in this)this.hasOwnProperty(t)&&this[t].on(n,null);return this}},t.event=null,t.requote=function(t){return t.replace(j,”\$&“)};var j=/[\\^\$+\?|[]().{}]/g,V={}.proto?function(t,e){t.proto=e}:function(t,e){for(var r in e)t[r]=e[r]};function U(t){return V(t,Y),t}var q=function(t,e){return e.querySelector(t)},H=function(t,e){return e.querySelectorAll(t)},G=function(t,e){var r=t.matches||t[I(t,“matchesSelector”)];return(G=function(t,e){return r.call(t,e)})(t,e)};“function”==typeof Sizzle&&(q=function(t,e){return Sizzle(t,e)[0]||null},H=Sizzle,G=Sizzle.matchesSelector),t.selection=function(){return t.select(a.documentElement)};var Y=t.selection.prototype=[];function W(t){return”function”==typeof t?t:function(){return q(t,this)}}function Z(t){return”function”==typeof t?t:function(){return H(t,this)}}Y.select=function(t){var e,r,n,a,i=[];t=W(t);for(var o=-1,s=this.length;++o=0&&“xmlns”!==(r=t.slice(0,e))&&(t=t.slice(e+1)),J.hasOwnProperty®?{space:J[r],local:t}:t}},Y.attr=function(e,r){if(arguments.length<2){if("string"==typeof e){var n=this.node();return(e=t.ns.qualify(e)).local?n.getAttributeNS(e.space,e.local):n.getAttribute(e)}for(r in e)this.each(K(r,e[r]));return this}return this.each(K(e,r))},Y.classed=function(t,e){if(arguments.length<2){if("string"==typeof t){var r=this.node(),n=(t=tt(t)).length,a=-1;if(e=r.classList){for(;++a=0;)(r=n[a])&&(i&&i!==r.nextSibling&&i.parentNode.insertBefore(r,i),i=r);return this},Y.sort=function(t){t=ct.apply(this,arguments);for(var e=-1,r=this.length;++e=e&&(e=a+1);!(o=s[e])&&++e0&&(e=e.slice(0,o));var l=gt.get(e);function c(){var t=this[i];t&&(this.removeEventListener(e,t,t.$),delete this[i])}return l&&(e=l,s=vt),o?r?function(){var t=s(r,n(arguments));c.call(this),this.addEventListener(e,this[i]=t,t.$=a),t._=r}:c:r?O:function(){var r,n=new RegExp(“^on([^.]+)“+t.requote(e)+”$“);for(var a in this)if(r=a.match(n)){var i=this[a];this.removeEventListener(r[1],i,i.$),delete this[a]}}}t.selection.enter=ht,t.selection.enter.prototype=ft,ft.append=Y.append,ft.empty=Y.empty,ft.node=Y.node,ft.call=Y.call,ft.size=Y.size,ft.select=function(t){for(var e,r,n,a,i,o=[],s=-1,l=this.length;++s<l;){n=(a=this[s]).update,o.push(e=[]),e.parentNode=a.parentNode;for(var c=-1,u=a.length;++c<u;)(i=a[c])?(e.push(n[c]=r=t.call(a.parentNode,i.data,c,s)),r.data=i.data):e.push(null)}return U(o)},ft.insert=function(t,e){return arguments.length<2&&(e=pt(this)),Y.insert.call(this,t,e)},t.select=function(t){var e;return”string”==typeof t?(e=[q(t,a)]).parentNode=a.documentElement:(e=[t]).parentNode=i(t),U([e])},t.selectAll=function(t){var e;return”string”==typeof t?(e=n(H(t,a))).parentNode=a.documentElement:(e=n(t)).parentNode=null,U([e])},Y.on=function(t,e,r){var n=arguments.length;if(n<3){if(“string”!=typeof t){for(r in n<2&&(e=!1),t)this.each(dt(r,t[r],e));return this}if(n<2)return(n=this.node()[”on”+t])&&n._;r=!1}return this.each(dt(t,e,r))};var gt=t.map({mouseenter:“mouseover”,mouseleave:“mouseout”});function mt(e,r){return function(n){var a=t.event;t.event=n,r[0]=this.data;try{e.apply(this,r)}finally{t.event=a}}}function vt(t,e){var r=mt(t,e);return function(t){var e=t.relatedTarget;e&&(e===this||8&e.compareDocumentPosition(this))||r.call(this,t)}}a&&gt.forEach((function(t){“on”+t in a&&gt.remove(t)}));var yt,xt=0;function bt(e){var r=“.dragsuppress-”+ ++xt,n=“click”+r,a=t.select(o(e)).on(“touchmove”+r,F).on(“dragstart”+r,F).on(“selectstart”+r,F);if(null==yt&&(yt=!(“onselectstart”in e)&&I(e.style,“userSelect”)),yt){var s=i(e).style,l=s[yt];s[yt]=“none”}return function(t){if(a.on(r,null),yt&&(s[yt]=l),t){var e=function(){a.on(n,null)};a.on(n,(function(){F(),e()}),!0),setTimeout(e,0)}}}t.mouse=function(t){return wt(t,B())};var _t=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function wt(e,r){r.changedTouches&&(r=r.changedTouches[0]);var n=e.ownerSVGElement||e;if(n.createSVGPoint){var a=n.createSVGPoint();if(_t<0){var i=o(e);if(i.scrollX||i.scrollY){var s=(n=t.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important"))[0][0].getScreenCTM();_t=!(s.f||s.e),n.remove()}}return _t?(a.x=r.pageX,a.y=r.pageY):(a.x=r.clientX,a.y=r.clientY),[(a=a.matrixTransform(e.getScreenCTM().inverse())).x,a.y]}var l=e.getBoundingClientRect();return[r.clientX-l.left-e.clientLeft,r.clientY-l.top-e.clientTop]}function Tt(){return t.event.changedTouches[0].identifier}t.touch=function(t,e,r){if(arguments.length<3&&(r=e,e=B().changedTouches),e)for(var n,a=0,i=e.length;a0?1:t<0?-1:0}function zt(t,e,r){return(e[0]-t[0])*(r[1]-t[1])-(e[1]-t[1])*(r[0]-t[0])}function Ot(t){return t>1?0:t<-1?Mt:Math.acos(t)}function Dt(t){return t>1?Ct:t<-1?-Ct:Math.asin(t)}function Rt(t){return((t=Math.exp(t))+1/t)/2}function Ft(t){return(t=Math.sin(t/2))*t}var Bt=Math.SQRT2;t.interpolateZoom=function(t,e){var r,n,a=t[0],i=t[1],o=t[2],s=e[0],l=e[1],c=e[2],u=s-a,h=l-i,f=u*u+h*h;if(f0&&(e=e.transition().duration(g)),e.call(w.event)}function S(){c&&c.domain(l.range().map((function(t){return(t-f.x)/f.k})).map(l.invert)),h&&h.domain(u.range().map((function(t){return(t-f.y)/f.k})).map(u.invert))}function E(t){m++||t({type:“zoomstart”})}function C(t){S(),t({type:“zoom”,scale:f.k,translate:[f.x,f.y]})}function L(t){–m||(t({type:“zoomend”}),r=null)}function P(){var e=this,r=.of(e,arguments),n=0,a=t.select(o(e)).on(y,l).on(x,c),i=T(t.mouse(e)),s=bt(e);function l(){n=1,A(t.mouse(e),i),C®}function c(){a.on(y,null).on(x,null),s(n),L®}vs.call(e),E®}function I(){var e,r=this,n=.of(r,arguments),a={},i=0,o=“.zoom-”+t.event.changedTouches[0].identifier,l=“touchmove”+o,c=“touchend”+o,u=[],h=t.select®,p=bt®;function d(){var n=t.touches®;return e=f.k,n.forEach((function(t){t.identifier in a&&(a[t.identifier]=T(t))})),n}function g(){var e=t.event.target;t.select(e).on(l,m).on(c,y),u.push(e);for(var n=t.event.changedTouches,o=0,h=n.length;o1){v=p[0];var x=p[1],b=v[0]-x[0],=v[1]-x[1];i=b*b+*}}function m(){var o,l,c,u,h=t.touches®;vs.call®;for(var f=0,p=h.length;f<p;++f,u=null)if(c=h[f],u=a[c.identifier]){if(l)break;o=c,l=u}if(u){var d=(d=c[0]-o[0])*d+(d=c[1]-o[1])*d,g=i&&Math.sqrt(d/i);o=[(o[0]+c[0])/2,(o[1]+c[1])/2],l=[(l[0]+u[0])/2,(l[1]+u[1])/2],k(g*e)}s=null,A(o,l),C(n)}function y(){if(t.event.touches.length){for(var e=t.event.changedTouches,r=0,i=e.length;r<i;++r)delete a[e[r].identifier];for(var s in a)return void d()}t.selectAll(u).on(o,null),h.on(v,P).on(b,I),p(),L(n)}g(),E(n),h.on(v,null).on(b,g)}function z(){var a=.of(this,arguments);i?clearTimeout(i):(vs.call(this),e=T(r=n||t.mouse(this)),E(a)),i=setTimeout((function(){i=null,L(a)}),50),F(),k(Math.pow(2,.002*Nt())f.k),A(r,e),C(a)}function O(){var e=t.mouse(this),r=Math.log(f.k)/Math.LN2;M(this,e,T(e),t.event.shiftKey?Math.ceil®-1:Math.floor®+1)}return jt||(jt=“onwheel”in a?(Nt=function(){return-t.event.deltaY(t.event.deltaMode?120:1)},“wheel”):“onmousewheel”in a?(Nt=function(){return t.event.wheelDelta},“mousewheel”):(Nt=function(){return-t.event.detail},“MozMousePixelScroll”)),w.event=function(e){e.each((function(){var e=_.of(this,arguments),n=f;bs?t.select(this).transition().each(“start.zoom”,(function(){f=this.chart||{x:0,y:0,k:1},E(e)})).tween(“zoom:zoom”,(function(){var a=p[0],i=p[1],o=r?r[0]:a/2,s=r?r[1]:i/2,l=t.interpolateZoom([(o-f.x)/f.k,(s-f.y)/f.k,a/f.k],[(o-n.x)/n.k,(s-n.y)/n.k,a/n.k]);return function(t){var r=l(t),n=a/r[2];this.chart=f={x:o-r[0]*n,y:s-r[1]*n,k:n},C(e)}})).each(“interrupt.zoom”,(function(){L(e)})).each(“end.zoom”,(function(){L(e)})):(this.chart=f,E(e),C(e),L(e))}))},w.translate=function(t){return arguments.length?(f={x:+t[0],y:+t[1],k:f.k},S(),w):[f.x,f.y]},w.scale=function(t){return arguments.length?(f={x:f.x,y:f.y,k:null},k(+t),S(),w):f.k},w.scaleExtent=function(t){return arguments.length?(d=null==t?Vt:[+t[0],+t[1]],w):d},w.center=function(t){return arguments.length?(n=t&&[+t[0],+t[1]],w):n},w.size=function(t){return arguments.length?(p=t&&[+t[0],+t[1]],w):p},w.duration=function(t){return arguments.length?(g=+t,w):g},w.x=function(t){return arguments.length?(c=t,l=t.copy(),f={x:0,y:0,k:1},w):c},w.y=function(t){return arguments.length?(h=t,u=t.copy(),f={x:0,y:0,k:1},w):h},t.rebind(w,_,“on”)};var Nt,jt,Vt=[0,10];function Ut(){}function qt(t,e,r){return this instanceof qt?(this.h=+t,this.s=+e,void(this.l=+r)):arguments.length<2?t instanceof qt?new qt(t.h,t.s,t.l):le(""+t,ce,qt):new qt(t,e,r)}t.color=Ut,Ut.prototype.toString=function(){return this.rgb()+""},t.hsl=qt;var Ht=qt.prototype=new Ut;function Gt(t,e,r){var n,a;function i(t){return Math.round(255*function(t){return t>360?t-=360:t<0&&(t+=360),t<60?n+(a-n)*t/60:t<180?a:t<240?n+(a-n)*(240-t)/60:n}(t))}return t=isNaN(t)?0:(t%=360)<0?t+360:t,e=isNaN(e)||e<0?0:e>1?1:e,n=2(r=r<0?0:r>1?1:r)-(a=r<=.5?r(1+e):r+e-r*e),new ne(i(t+120),i(t),i(t-120))}function Yt(e,r,n){return this instanceof Yt?(this.h=+e,this.c=+r,void(this.l=+n)):arguments.length<2?e instanceof Yt?new Yt(e.h,e.c,e.l):$t(e instanceof Xt?e.l:(e=ue((e=t.rgb(e)).r,e.g,e.b)).l,e.a,e.b):new Yt(e,r,n)}Ht.brighter=function(t){return t=Math.pow(.7,arguments.length?t:1),new qt(this.h,this.s,this.l/t)},Ht.darker=function(t){return t=Math.pow(.7,arguments.length?t:1),new qt(this.h,this.s,t*this.l)},Ht.rgb=function(){return Gt(this.h,this.s,this.l)},t.hcl=Yt;var Wt=Yt.prototype=new Ut;function Zt(t,e,r){return isNaN(t)&&(t=0),isNaN(e)&&(e=0),new Xt(r,Math.cos(t*=Lt)*e,Math.sin(t)*e)}function Xt(t,e,r){return this instanceof Xt?(this.l=+t,this.a=+e,void(this.b=+r)):arguments.length<2?t instanceof Xt?new Xt(t.l,t.a,t.b):t instanceof Yt?Zt(t.h,t.c,t.l):ue((t=ne(t)).r,t.g,t.b):new Xt(t,e,r)}Wt.brighter=function(t){return new Yt(this.h,this.c,Math.min(100,this.l+Jt*(arguments.length?t:1)))},Wt.darker=function(t){return new Yt(this.h,this.c,Math.max(0,this.l-Jt*(arguments.length?t:1)))},Wt.rgb=function(){return Zt(this.h,this.c,this.l).rgb()},t.lab=Xt;var Jt=18,Kt=Xt.prototype=new Ut;function Qt(t,e,r){var n=(t+16)/116,a=n+e/500,i=n-r/200;return new ne(re(3.2404542*(a=.95047*te(a))-1.5371385*(n=1*te(n))-.4985314*(i=1.08883*te(i))),re(-.969266*a+1.8760108*n+.041556*i),re(.0556434*a-.2040259*n+1.0572252*i))}function $t(t,e,r){return t>0?new Yt(Math.atan2(r,e)*Pt,Math.sqrt(e*e+r*r),t):new Yt(NaN,NaN,t)}function te(t){return t>.206893034?t*t*t:(t-429)/7.787037}function ee(t){return t>.008856?Math.pow(t,13):7.787037t+429}function re(t){return Math.round(255(t<=.00304?12.92*t:1.055Math.pow(t,12.4)-.055))}function ne(t,e,r){return this instanceof ne?(this.r=t,this.g=e,void(this.b=~~r)):arguments.length<2?t instanceof ne?new ne(t.r,t.g,t.b):le(""+t,ne,Gt):new ne(t,e,r)}function ae(t){return new ne(t>>16,t>>8&255,255&t)}function ie(t){return ae(t)+“”}Kt.brighter=function(t){return new Xt(Math.min(100,this.l+Jt(arguments.length?t:1)),this.a,this.b)},Kt.darker=function(t){return new Xt(Math.max(0,this.l-Jt(arguments.length?t:1)),this.a,this.b)},Kt.rgb=function(){return Qt(this.l,this.a,this.b)},t.rgb=ne;var oe=ne.prototype=new Ut;function se(t){return t<16?“0”+Math.max(0,t).toString(16):Math.min(255,t).toString(16)}function le(t,e,r){var n,a,i,o=0,s=0,l=0;if(n=/([a-z]+)((.))/.exec(t=t.toLowerCase()))switch(a=n[2].split(“,”),n[1]){case”hsl”:return r(parseFloat(a[0]),parseFloat(a[1])/100,parseFloat(a[2])/100);case”rgb”:return e(fe(a[0]),fe(a[1]),fe(a[2]))}return(i=pe.get(t))?e(i.r,i.g,i.b):(null==t||“#”!==t.charAt(0)||isNaN(i=parseInt(t.slice(1),16))||(4===t.length?(o=(3840&i)>>4,o|=o>>4,s=240&i,s|=s>>4,l=15&i,l|=l<<4):7===t.length&&(o=(16711680&i)>>16,s=(65280&i)>>8,l=255&i)),e(o,s,l))}function ce(t,e,r){var n,a,i=Math.min(t/=255,e/=255,r/=255),o=Math.max(t,e,r),s=o-i,l=(o+i)/2;return s?(a=l<.5?s/(o+i):s/(2-o-i),n=t==o?(e-r)/s+(e0&&l<1?0:n),new qt(n,a,l)}function ue(t,e,r){var n=ee((.4124564*(t=he(t))+.3575761*(e=he(e))+.1804375*(r=he(r)))/.95047),a=ee((.2126729*t+.7151522*e+.072175*r)/1);return Xt(116*a-16,500*(n-a),200*(a-ee((.0193339*t+.119192*e+.9503041*r)/1.08883)))}function he(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function fe(t){var e=parseFloat(t);return"%"===t.charAt(t.length-1)?Math.round(2.55*e):e}oe.brighter=function(t){t=Math.pow(.7,arguments.length?t:1);var e=this.r,r=this.g,n=this.b,a=30;return e||r||n?(e&&e=200&&e<300||304===e){try{t=a.call(o,c)}catch(t){return void s.error.call(o,t)}s.load.call(o,t)}else s.error.call(o,c)}return this.XDomainRequest&&!("withCredentials"in c)&&/^(http(s)?:)?\/\//.test(e)&&(c=new XDomainRequest),"onload"in c?c.onload=c.onerror=h:c.onreadystatechange=function(){c.readyState>3&&h()},c.onprogress=function(e){var r=t.event;t.event=e;try{s.progress.call(o,c)}finally{t.event=r}},o.header=function(t,e){return t=(t+“”).toLowerCase(),arguments.length<2?l[t]:(null==e?delete l[t]:l[t]=e+"",o)},o.mimeType=function(t){return arguments.length?(r=null==t?null:t+"",o):r},o.responseType=function(t){return arguments.length?(u=t,o):u},o.response=function(t){return a=t,o},["get","post"].forEach((function(t){o[t]=function(){return o.send.apply(o,[t].concat(n(arguments)))}})),o.send=function(t,n,a){if(2===arguments.length&&"function"==typeof n&&(a=n,n=null),c.open(t,e,!0),null==r||"accept"in l||(l.accept=r+",*/*"),c.setRequestHeader)for(var i in l)c.setRequestHeader(i,l[i]);return null!=r&&c.overrideMimeType&&c.overrideMimeType(r),null!=u&&(c.responseType=u),null!=a&&o.on("error",a).on("load",(function(t){a(null,t)})),s.beforesend.call(o,c),c.send(null==n?null:n),o},o.abort=function(){return c.abort(),o},t.rebind(o,s,"on"),null==i?o:o.get(function(t){return 1===t.length?function(e,r){t(null==e?r:null)}:t}(i))}pe.forEach((function(t,e){pe.set(t,ae(e))})),t.functor=de,t.xhr=ge(L),t.dsv=function(t,e){var r=new RegExp('["'+t+"\n]"),n=t.charCodeAt(0);function a(t,r,n){arguments.length<3&&(n=r,r=null);var a=me(t,e,null==r?i:o(r),n);return a.row=function(t){return arguments.length?a.response(null==(r=t)?i:o(t)):r},a}function i(t){return a.parse(t.responseText)}function o(t){return function(e){return a.parse(e.responseText,t)}}function s(e){return e.map(l).join(t)}function l(t){return r.test(t)?'"'+t.replace(/\"/g,'""')+'"':t}return a.parse=function(t,e){var r;return a.parseRows(t,(function(t,n){if(r)return r(t,n-1);var a=new Function("d","return {"+t.map((function(t,e){return JSON.stringify(t)+": d["+e+"]"})).join(",")+"}");r=e?function(t,r){return e(a(t),r)}:a}))},a.parseRows=function(t,e){var r,a,i={},o={},s=[],l=t.length,c=0,u=0;function h(){if(c>=l)return o;if(a)return a=!1,i;var e=c;if(34===t.charCodeAt(e)){for(var r=e;r++24?(isFinite(e)&&(clearTimeout(be),be=setTimeout(Te,e)),xe=0):(xe=1,_e(Te))}function ke(){for(var t=Date.now(),e=ve;e;)t>=e.t&&e.c(t-e.t)&&(e.c=null),e=e.n;return t}function Ae(){for(var t,e=ve,r=10;e;)e.c?(e.t8?function(t){return t/r}:function(t){return tr},symbol:t}}));function Ee(e){var r=e.decimal,n=e.thousands,a=e.grouping,i=e.currency,o=a&&n?function(t,e){for(var r=t.length,i=[],o=0,s=a[0],l=0;r>0&&s>0&&(l+s+1>e&&(s=Math.max(1,e-l)),i.push(t.substring(r-=s,r+s)),!((l+=s+1)>e));)s=a[o=(o+1)%a.length];return i.reverse().join(n)}:L;return function(e){var n=Ce.exec(e),a=n[1]||” “,s=n[2]||“>”,l=n[3]||“-”,c=n[4]||“”,u=n[5],h=+n[6],f=n[7],p=n[8],d=n[9],g=1,m=“”,v=“”,y=!1,x=!0;switch(p&&(p=+p.substring(1)),(u||“0”===a&&“=”===s)&&(u=a=“0”,s=“=”),d){case”n”:f=!0,d=“g”;break;case”%”:g=100,v=“%”,d=“f”;break;case”p”:g=100,v=“%”,d=“r”;break;case”b”:case”o”:case”x”:case”X”:“#”===c&&(m=“0”+d.toLowerCase());case”c”:x=!1;case”d”:y=!0,p=0;break;case”s”:g=-1,d=“r”}“$”===c&&(m=i[0],v=i[1]),“r”!=d||p||(d=“g”),null!=p&&(“g”==d?p=Math.max(1,Math.min(21,p)):“e”!=d&&“f”!=d||(p=Math.max(0,Math.min(20,p)))),d=Le.get(d)||Pe;var b=u&&f;return function(e){var n=v;if(y&&e%1)return”“;var i=e<0||0===e&&1/e<0?(e=-e,“-”):“-”===l?“”:l;if(g<0){var c=t.formatPrefix(e,p);e=c.scale(e),n=c.symbol+v}else e=g;var ,w,T=(e=d(e,p)).lastIndexOf(“.”);if(T<0){var k=x?e.lastIndexOf(“e”):-1;k<0?(=e,w=“”):(_=e.substring(0,k),w=e.substring(k))}else =e.substring(0,T),w=r+e.substring(T+1);!u&&f&&(=o(,10));var A=m.length+.length+w.length+(b?0:i.length),M=A”===s?M+i+e:“^”===s?M.substring(0,A>>=1)+i+e+M.substring(A):i+(b?e:M+e))+n}}}t.formatPrefix=function(e,r){var n=0;return(e=+e)&&(e<0&&(e*=-1),r&&(e=t.round(e,Me(e,r))),n=1+Math.floor(1e-12+Math.log(e)/Math.LN10),n=Math.max(-24,Math.min(24,3*Math.floor((n-1)/3)))),Se[8+n/3]};var Ce=/(?:([^{])?([<>=^]))?([+- ])?([$#])?(0)?(\d+)?(,)?(.-?\d+)?([a-z%])?/i,Le=t.map({b:function(t){return t.toString(2)},c:function(t){return String.fromCharCode(t)},o:function(t){return t.toString(8)},x:function(t){return t.toString(16)},X:function(t){return t.toString(16).toUpperCase()},g:function(t,e){return t.toPrecision(e)},e:function(t,e){return t.toExponential(e)},f:function(t,e){return t.toFixed(e)},r:function(e,r){return(e=t.round(e,Me(e,r))).toFixed(Math.max(0,Math.min(20,Me(e*(1+1e-15),r))))}});function Pe(t){return t+“”}var Ie=t.time={},ze=Date;function Oe(){this.=new Date(arguments.length>1?Date.UTC.apply(this,arguments):arguments[0])}Oe.prototype={getDate:function(){return this..getUTCDate()},getDay:function(){return this..getUTCDay()},getFullYear:function(){return this..getUTCFullYear()},getHours:function(){return this..getUTCHours()},getMilliseconds:function(){return this..getUTCMilliseconds()},getMinutes:function(){return this..getUTCMinutes()},getMonth:function(){return this..getUTCMonth()},getSeconds:function(){return this..getUTCSeconds()},getTime:function(){return this..getTime()},getTimezoneOffset:function(){return 0},valueOf:function(){return this..valueOf()},setDate:function(){De.setUTCDate.apply(this.,arguments)},setDay:function(){De.setUTCDay.apply(this.,arguments)},setFullYear:function(){De.setUTCFullYear.apply(this.,arguments)},setHours:function(){De.setUTCHours.apply(this.,arguments)},setMilliseconds:function(){De.setUTCMilliseconds.apply(this.,arguments)},setMinutes:function(){De.setUTCMinutes.apply(this.,arguments)},setMonth:function(){De.setUTCMonth.apply(this.,arguments)},setSeconds:function(){De.setUTCSeconds.apply(this.,arguments)},setTime:function(){De.setTime.apply(this.,arguments)}};var De=Date.prototype;function Re(t,e,r){function n(e){var r=t(e),n=i(r,1);return e-r1)for(;o=c)return-1;if(37===(a=e.charCodeAt(s++))){if(o=e.charAt(s++),!(i=w[o in Ne?e.charAt(s++):o])||(n=i(t,r,n))<0)return-1}else if(a!=r.charCodeAt(n++))return-1}return n}u.utc=function(t){var e=u(t);function r(t){try{var r=new(ze=Oe);return r._=t,e(r)}finally{ze=Date}}return r.parse=function(t){try{ze=Oe;var r=e.parse(t);return r&&r._}finally{ze=Date}},r.toString=e.toString,r},u.multi=u.utc.multi=or;var f=t.map(),p=qe(o),d=He(o),g=qe(s),m=He(s),v=qe(l),y=He(l),x=qe(c),b=He(c);i.forEach((function(t,e){f.set(t.toLowerCase(),e)}));var _={a:function(t){return s[t.getDay()]},A:function(t){return o[t.getDay()]},b:function(t){return c[t.getMonth()]},B:function(t){return l[t.getMonth()]},c:u(r),d:function(t,e){return Ue(t.getDate(),e,2)},e:function(t,e){return Ue(t.getDate(),e,2)},H:function(t,e){return Ue(t.getHours(),e,2)},I:function(t,e){return Ue(t.getHours()%12||12,e,2)},j:function(t,e){return Ue(1+Ie.dayOfYear(t),e,3)},L:function(t,e){return Ue(t.getMilliseconds(),e,3)},m:function(t,e){return Ue(t.getMonth()+1,e,2)},M:function(t,e){return Ue(t.getMinutes(),e,2)},p:function(t){return i[+(t.getHours()>=12)]},S:function(t,e){return Ue(t.getSeconds(),e,2)},U:function(t,e){return Ue(Ie.sundayOfYear(t),e,2)},w:function(t){return t.getDay()},W:function(t,e){return Ue(Ie.mondayOfYear(t),e,2)},x:u(n),X:u(a),y:function(t,e){return Ue(t.getFullYear()%100,e,2)},Y:function(t,e){return Ue(t.getFullYear()%1e4,e,4)},Z:ar,“%”:function(){return”%“}},w={a:function(t,e,r){g.lastIndex=0;var n=g.exec(e.slice®);return n?(t.w=m.get(n[0].toLowerCase()),r+n[0].length):-1},A:function(t,e,r){p.lastIndex=0;var n=p.exec(e.slice®);return n?(t.w=d.get(n[0].toLowerCase()),r+n[0].length):-1},b:function(t,e,r){x.lastIndex=0;var n=x.exec(e.slice®);return n?(t.m=b.get(n[0].toLowerCase()),r+n[0].length):-1},B:function(t,e,r){v.lastIndex=0;var n=v.exec(e.slice®);return n?(t.m=y.get(n[0].toLowerCase()),r+n[0].length):-1},c:function(t,e,r){return h(t,.c.toString(),e,r)},d:Qe,e:Qe,H:tr,I:tr,j:$e,L:nr,m:Ke,M:er,p:function(t,e,r){var n=f.get(e.slice(r,r+=2).toLowerCase());return null==n?-1:(t.p=n,r)},S:rr,U:Ye,w:Ge,W:We,x:function(t,e,r){return h(t,.x.toString(),e,r)},X:function(t,e,r){return h(t,.X.toString(),e,r)},y:Xe,Y:Ze,Z:Je,“%”:ir};return u}Ie.year=Re((function(t){return(t=Ie.day(t)).setMonth(0,1),t}),(function(t,e){t.setFullYear(t.getFullYear()+e)}),(function(t){return t.getFullYear()})),Ie.years=Ie.year.range,Ie.years.utc=Ie.year.utc.range,Ie.day=Re((function(t){var e=new ze(2e3,0);return e.setFullYear(t.getFullYear(),t.getMonth(),t.getDate()),e}),(function(t,e){t.setDate(t.getDate()+e)}),(function(t){return t.getDate()-1})),Ie.days=Ie.day.range,Ie.days.utc=Ie.day.utc.range,Ie.dayOfYear=function(t){var e=Ie.year(t);return Math.floor((t-e-6e4*(t.getTimezoneOffset()-e.getTimezoneOffset()))/864e5)},[“sunday”,“monday”,“tuesday”,“wednesday”,“thursday”,“friday”,“saturday”].forEach((function(t,e){e=7-e;var r=Ie[t]=Re((function(t){return(t=Ie.day(t)).setDate(t.getDate()-(t.getDay()+e)%7),t}),(function(t,e){t.setDate(t.getDate()+7*Math.floor(e))}),(function(t){var r=Ie.year(t).getDay();return Math.floor((Ie.dayOfYear(t)+(r+e)%7)/7)-(r!==e)}));Ie[t+“s”]=r.range,Ie[t+“s”].utc=r.utc.range,Ie[t+“OfYear”]=function(t){var r=Ie.year(t).getDay();return Math.floor((Ie.dayOfYear(t)+(r+e)%7)/7)}})),Ie.week=Ie.sunday,Ie.weeks=Ie.sunday.range,Ie.weeks.utc=Ie.sunday.utc.range,Ie.weekOfYear=Ie.sundayOfYear;var Ne={“-”:“”,:” “,0:“0”},je=/^\s*\d+/,Ve=/^%/;function Ue(t,e,r){var n=t<0?"-":"",a=(n?-t:t)+"",i=a.length;return n+(i68?1900:2e3),r+a[0].length):-1}function Je(t,e,r){return/2\d{4}$/.test(e=e.slice(r,r+5))?(t.Z=-e,r+5):-1}function Ke(t,e,r){je.lastIndex=0;var n=je.exec(e.slice(r,r+2));return n?(t.m=n[0]-1,r+n[0].length):-1}function Qe(t,e,r){je.lastIndex=0;var n=je.exec(e.slice(r,r+2));return n?(t.d=+n[0],r+n[0].length):-1}function $e(t,e,r){je.lastIndex=0;var n=je.exec(e.slice(r,r+3));return n?(t.j=+n[0],r+n[0].length):-1}function tr(t,e,r){je.lastIndex=0;var n=je.exec(e.slice(r,r+2));return n?(t.H=+n[0],r+n[0].length):-1}function er(t,e,r){je.lastIndex=0;var n=je.exec(e.slice(r,r+2));return n?(t.M=+n[0],r+n[0].length):-1}function rr(t,e,r){je.lastIndex=0;var n=je.exec(e.slice(r,r+2));return n?(t.S=+n[0],r+n[0].length):-1}function nr(t,e,r){je.lastIndex=0;var n=je.exec(e.slice(r,r+3));return n?(t.L=+n[0],r+n[0].length):-1}function ar(t){var e=t.getTimezoneOffset(),r=e>0?“-”:“+”,n=y(e)/60|0,a=y(e)%60;return r+Ue(n,“0”,2)+Ue(a,“0”,2)}function ir(t,e,r){Ve.lastIndex=0;var n=Ve.exec(e.slice(r,r+1));return n?r+n[0].length:-1}function or(t){for(var e=t.length,r=-1;++r=0?1:-1,s=o*i,l=Math.cos(e),c=Math.sin(e),u=a*c,h=n*l+u*Math.cos(s),f=u*o*Math.sin(s);Er.add(Math.atan2(f,h)),r=t,n=l,a=c}Cr.point=function(o,s){Cr.point=i,r=(t=o)*Lt,n=Math.cos(s=(e=s)*Lt/2+Mt/4),a=Math.sin(s)},Cr.lineEnd=function(){i(t,e)}}function Pr(t){var e=t[0],r=t[1],n=Math.cos®;return[n*Math.cos(e),n*Math.sin(e),Math.sin®]}function Ir(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function zr(t,e){return[t[1]*e[2]-t[2]*e[1],t[2]*e[0]-t[0]*e[2],t[0]*e[1]-t[1]*e[0]]}function Or(t,e){t[0]+=e[0],t[1]+=e[1],t[2]+=e[2]}function Dr(t,e){return[t[0]*e,t[1]*e,t[2]*e]}function Rr(t){var e=Math.sqrt(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);t[0]/=e,t[1]/=e,t[2]/=e}function Fr(t){return[Math.atan2(t[1],t[0]),Dt(t[2])]}function Br(t,e){return y(t[0]-e[0])kt?a=90:c<-kt&&(r=-90),h[0]=e,h[1]=n}};function p(t,i){u.push(h=[e=t,n=t]),ia&&(a=i)}function d(t,o){var s=Pr([t*Lt,o*Lt]);if(l){var c=zr(l,s),u=zr([c[1],-c[0],0],c);Rr(u),u=Fr(u);var h=t-i,f=h>0?1:-1,d=u[0]*Pt*f,g=y(h)>180;if(g^(f*ia&&(a=m);else if(g^(f*i<(d=(d+360)%360-180)&&da&&(a=o);g?t(e,n)&&(n=t):(t,n)>(e,n)&&(e=t):n>=e?(tn&&(n=t)):t>i?(e,t)>(e,n)&&(n=t):(t,n)>_(e,n)&&(e=t)}else p(t,o);l=s,i=t}function g(){f.point=d}function m(){h[0]=e,h[1]=n,f.point=p,l=null}function v(t,e){if(l){var r=t-i;c+=y®>180?r+(r>0?360:-360):r}else o=t,s=e;Cr.point(t,e),d(t,e)}function x(){Cr.lineStart()}function b(){v(o,s),Cr.lineEnd(),y©>kt&&(e=-(n=180)),h[0]=e,h[1]=n,l=null}function (t,e){return(e-=t)<0?e+360:e}function w(t,e){return t[0]-e[0]}function T(t,e){return e[0]<=e[1]?e[0]<=t&&t<=e[1]:t<e[0]||e[1]<t}return function(i){if(a=n=-(e=r=10),u=[],t.geo.stream(i,f),c=u.length){u.sort(w);for(var o=1,s=[g=u[0]];o<c;++o)T((p=u[o])[0],g)||T(p[1],g)?((g[0],p[1])>(g[0],g[1])&&(g[1]=p[1]),(p[0],g[1])>(g[0],g[1])&&(g[0]=p[0])):s.push(g=p);for(var l,c,p,d=-10,g=(o=0,s[c=s.length-1]);o<=c;g=p,++o)p=s[o],(l=(g[1],p[0]))>d&&(d=l,e=p[0],n=g[1])}return u=h=null,e===10||r===10?[[NaN,NaN],[NaN,NaN]]:[[e,r],[n,a]]}}(),t.geo.centroid=function(e){vr=yr=xr=br=_r=wr=Tr=kr=Ar=Mr=Sr=0,t.geo.stream(e,Nr);var r=Ar,n=Mr,a=Sr,i=r*r+n*n+a*a;return i=0;–s)a.point((h=u[s])[0],h[1]);else n(p.x,p.p.x,-1,a);p=p.p}u=(p=p.o).z,d=!d}while(!p.v);a.lineEnd()}}}function Zr(t){if(e=t.length){for(var e,r,n=0,a=t[0];++n=0?1:-1,T=w*,k=T>Mt,A=d*x;if(Er.add(Math.atan2(A*w*Math.sin(T),g*b+A*Math.cos(T))),i+=k?+w*St:,k^f>=r^v>=r){var M=zr(Pr(h),Pr(t));Rr(M);var S=zr(a,M);Rr(S);var E=(k^>=0?-1:1)*Dt(S[2]);(n>E||n===E&&(M[0]||M[1]))&&(o+=k^_>=0?1:-1)}if(!m++)break;f=v,d=x,g=b,h=t}}return(i<-kt||i0){for(x||(o.polygonStart(),x=!0),o.lineStart();++i1&&2&e&&r.push(r.pop().concat(r.shift())),s.push(r.filter(Kr))}return u}}function Kr(t){return t.length>1}function Qr(){var t,e=[];return{lineStart:function(){e.push(t=[])},point:function(e,r){t.push([e,r])},lineEnd:O,buffer:function(){var r=e;return e=[],t=null,r},rejoin:function(){e.length>1&&e.push(e.pop().concat(e.shift()))}}}function $r(t,e){return((t=t.x)[0]<0?t[1]-Ct-kt:Ct-t[1])-((e=e.x)[0]<0?e[1]-Ct-kt:Ct-e[1])}var tn=Jr(Yr,(function(t){var e,r=NaN,n=NaN,a=NaN;return{lineStart:function(){t.lineStart(),e=1},point:function(i,o){var s=i>0?Mt:-Mt,l=y(i-r);y(l-Mt)0?Ct:-Ct),t.point(a,n),t.lineEnd(),t.lineStart(),t.point(s,n),t.point(i,n),e=0):a!==s&&l>=Mt&&(y(r-a)kt?Math.atan((Math.sin(e)*(i=Math.cos(n))Math.sin®-Math.sin(n)(a=Math.cos(e))*Math.sin(t))/(a*i*o)):(e+n)/2}(r,n,i,o),t.point(a,n),t.lineEnd(),t.lineStart(),t.point(s,n),e=0),t.point(r=i,n=o),a=s},lineEnd:function(){t.lineEnd(),r=n=NaN},clean:function(){return 2-e}}}),(function(t,e,r,n){var a;if(null==t)a=r*Ct,n.point(-Mt,a),n.point(0,a),n.point(Mt,a),n.point(Mt,0),n.point(Mt,-a),n.point(0,-a),n.point(-Mt,-a),n.point(-Mt,0),n.point(-Mt,a);else if(y(t[0]-e[0])>kt){var i=t[0]0,n=y(e)>kt;return Jr(a,(function(t){var e,s,l,c,u;return{lineStart:function(){c=l=!1,u=1},point:function(h,f){var p,d=[h,f],g=a(h,f),m=r?g?0:o(h,f):g?o(h+(h<0?Mt:-Mt),f):0;if(!e&&(c=l=g)&&t.lineStart(),g!==l&&(p=i(e,d),(Br(e,p)||Br(d,p))&&(d[0]+=kt,d[1]+=kt,g=a(d[0],d[1]))),g!==l)u=0,g?(t.lineStart(),p=i(d,e),t.point(p[0],p[1])):(p=i(e,d),t.point(p[0],p[1]),t.lineEnd()),e=p;else if(n&&e&&r^g){var v;m&s||!(v=i(d,e,!0))||(u=0,r?(t.lineStart(),t.point(v[0][0],v[0][1]),t.point(v[1][0],v[1][1]),t.lineEnd()):(t.point(v[1][0],v[1][1]),t.lineEnd(),t.lineStart(),t.point(v[0][0],v[0][1])))}!g||e&&Br(e,d)||t.point(d[0],d[1]),e=d,l=g,s=m},lineEnd:function(){l&&t.lineEnd(),e=null},clean:function(){return u|(c&&l)<<1}}}),Bn(t,6*Lt),r?[0,-t]:[-Mt,t-Mt]);function a(t,r){return Math.cos(t)*Math.cos(r)>e}function i(t,r,n){var a=[1,0,0],i=zr(Pr(t),Pr®),o=Ir(i,i),s=i[0],l=o-s*s;if(!l)return!n&&t;var c=e*o/l,u=-e*s/l,h=zr(a,i),f=Dr(a,c);Or(f,Dr(i,u));var p=h,d=Ir(f,p),g=Ir(p,p),m=dd-g(Ir(f,f)-1);if(!(m<0)){var v=Math.sqrt(m),x=Dr(p,(-d-v)/g);if(Or(x,f),x=Fr(x),!n)return x;var b,_=t[0],w=r[0],T=t[1],k=r[1];w<_&&(b=_,_=w,w=b);var A=w-_,M=y(A-Mt)0^x[1]<(y(x[0]-)Mt^(<=x[0]&&x[0]<=w)){var S=Dr(p,(-d+v)/g);return Or(S,f),[x,Fr(S)]}}}function o(e,n){var a=r?t:Mt-t,i=0;return e<-a?i|=1:e>a&&(i|=2),n<-a?i|=4:n>a&&(i|=8),i}}function rn(t,e,r,n){return function(a){var i,o=a.a,s=a.b,l=o.x,c=o.y,u=0,h=1,f=s.x-l,p=s.y-c;if(i=t-l,f||!(i>0)){if(i/=f,f<0){if(i0){if(i>h)return;i>u&&(u=i)}if(i=r-l,f||!(i<0)){if(i/=f,f<0){if(i>h)return;i>u&&(u=i)}else if(f>0){if(i0)){if(i/=p,p<0){if(i0){if(i>h)return;i>u&&(u=i)}if(i=n-c,p||!(i<0)){if(i/=p,p<0){if(i>h)return;i>u&&(u=i)}else if(p>0){if(i0&&(a.a={x:l+u*f,y:c+u*p}),h<1&&(a.b={x:l+h*f,y:c+h*p}),a}}}}}}function nn(e,r,n,a){return function(l){var c,u,h,f,p,d,g,m,v,y,x,b=l,_=Qr(),w=rn(e,r,n,a),T={point:M,lineStart:function(){T.point=S,u&&u.push(h=[]);y=!0,v=!1,g=m=NaN},lineEnd:function(){c&&(S(f,p),d&&v&&_.rejoin(),c.push(_.buffer()));T.point=M,v&&l.lineEnd()},polygonStart:function(){l=_,c=[],u=[],x=!0},polygonEnd:function(){l=b,c=t.merge(c);var r=function(t){for(var e=0,r=u.length,n=t[1],a=0;an&&zt(c,i,t)>0&&++e:i[1]<=n&&zt(c,i,t)<0&&--e,c=i;return 0!==e}([e,a]),n=x&&r,i=c.length;(n||i)&&(l.polygonStart(),n&&(l.lineStart(),k(null,null,1,l),l.lineEnd()),i&&Wr(c,o,r,k,l),l.polygonEnd()),c=u=h=null}};function k(t,o,l,c){var u=0,h=0;if(null==t||(u=i(t,l))!==(h=i(o,l))||s(t,o)<0^l>0)do{c.point(0===u||3===u?e:n,u>1?a:r)}while((u=(u+l+4)%4)!==h);else c.point(o[0],o[1])}function A(t,i){return e<=t&&t<=n&&r<=i&&i<=a}function M(t,e){A(t,e)&&l.point(t,e)}function S(t,e){var r=A(t=Math.max(-1e9,Math.min(1e9,t)),e=Math.max(-1e9,Math.min(1e9,e)));if(u&&h.push([t,e]),y)f=t,p=e,d=r,y=!1,r&&(l.lineStart(),l.point(t,e));else if(r&&v)l.point(t,e);else{var n={a:{x:g,y:m},b:{x:t,y:e}};w(n)?(v||(l.lineStart(),l.point(n.a.x,n.a.y)),l.point(n.b.x,n.b.y),r||l.lineEnd(),x=!1):r&&(l.lineStart(),l.point(t,e),x=!1)}g=t,m=e,v=r}return T};function i(t,a){return y(t[0]-e)0?0:3:y(t[0]-n)0?2:1:y(t[1]-r)0?1:0:a>0?3:2}function o(t,e){return s(t.x,e.x)}function s(t,e){var r=i(t,1),n=i(e,1);return r!==n?r-n:0===r?e[1]-t[1]:1===r?t[0]-e[0]:2===r?t[1]-e[1]:e[0]-t[0]}}function an(t){var e=0,r=Mt/3,n=Ln(t),a=n(e,r);return a.parallels=function(t){return arguments.length?n(e=t[0]*Mt/180,r=t[1]*Mt/180):[e/Mt*180,r/Mt180]},a}function on(t,e){var r=Math.sin(t),n=(r+Math.sin(e))/2,a=1+r(2*n-r),i=Math.sqrt(a)/n;function o(t,e){var r=Math.sqrt(a-2*n*Math.sin(e))/n;return[rMath.sin(t=n),i-r*Math.cos(t)]}return o.invert=function(t,e){var r=i-e;return[Math.atan2(t,r)/n,Dt((a-(t*t+r*r)*n*n)/(2*n))]},o}t.geo.clipExtent=function(){var t,e,r,n,a,i,o={stream:function(t){return a&&(a.valid=!1),(a=i(t)).valid=!0,a},extent:function(s){return arguments.length?(i=nn(t=+s[0][0],e=+s[0][1],r=+s[1][0],n=+s[1][1]),a&&(a.valid=!1,a=null),o):[[t,e],[r,n]]}};return o.extent([[0,0],[960,500]])},(t.geo.conicEqualArea=function(){return an(on)}).raw=on,t.geo.albers=function(){return t.geo.conicEqualArea().rotate([96,0]).center([-.6,38.7]).parallels([29.5,45.5]).scale(1070)},t.geo.albersUsa=function(){var e,r,n,a,i=t.geo.albers(),o=t.geo.conicEqualArea().rotate([154,0]).center([-2,58.5]).parallels([55,65]),s=t.geo.conicEqualArea().rotate([157,0]).center([-3,19.9]).parallels([8,18]),l={point:function(t,r){e=[t,r]}};function c(t){var i=t[0],o=t[1];return e=null,r(i,o),e||(n(i,o),e)||a(i,o),e}return c.invert=function(t){var e=i.scale(),r=i.translate(),n=(t[0]-r[0])/e,a=(t[1]-r[1])/e;return(a>=.12&&a<.234&&n>=-.425&&n<-.214?o:a>=.166&&a<.234&&n>=-.214&&n<-.115?s:i).invert(t)},c.stream=function(t){var e=i.stream(t),r=o.stream(t),n=s.stream(t);return{point:function(t,a){e.point(t,a),r.point(t,a),n.point(t,a)},sphere:function(){e.sphere(),r.sphere(),n.sphere()},lineStart:function(){e.lineStart(),r.lineStart(),n.lineStart()},lineEnd:function(){e.lineEnd(),r.lineEnd(),n.lineEnd()},polygonStart:function(){e.polygonStart(),r.polygonStart(),n.polygonStart()},polygonEnd:function(){e.polygonEnd(),r.polygonEnd(),n.polygonEnd()}}},c.precision=function(t){return arguments.length?(i.precision(t),o.precision(t),s.precision(t),c):i.precision()},c.scale=function(t){return arguments.length?(i.scale(t),o.scale(.35*t),s.scale(t),c.translate(i.translate())):i.scale()},c.translate=function(t){if(!arguments.length)return i.translate();var e=i.scale(),u=+t[0],h=+t[1];return r=i.translate(t).clipExtent([[u-.455*e,h-.238*e],[u+.455*e,h+.238*e]]).stream(l).point,n=o.translate([u-.307*e,h+.201*e]).clipExtent([[u-.425*e+kt,h+.12*e+kt],[u-.214*e-kt,h+.234*e-kt]]).stream(l).point,a=s.translate([u-.205*e,h+.212*e]).clipExtent([[u-.214*e+kt,h+.166*e+kt],[u-.115*e-kt,h+.234*e-kt]]).stream(l).point,c},c.scale(1070)};var sn,ln,cn,un,hn,fn,pn={point:O,lineStart:O,lineEnd:O,polygonStart:function(){ln=0,pn.lineStart=dn},polygonEnd:function(){pn.lineStart=pn.lineEnd=pn.point=O,sn+=y(ln/2)}};function dn(){var t,e,r,n;function a(t,e){ln+=n*t-r*e,r=t,n=e}pn.point=function(i,o){pn.point=a,t=r=i,e=n=o},pn.lineEnd=function(){a(t,e)}}var gn={point:function(t,e){thn&&(hn=t);efn&&(fn=e)},lineStart:O,lineEnd:O,polygonStart:O,polygonEnd:O};function mn(){var t=vn(4.5),e=[],r={point:n,lineStart:function(){r.point=a},lineEnd:o,polygonStart:function(){r.lineEnd=s},polygonEnd:function(){r.lineEnd=o,r.point=n},pointRadius:function(e){return t=vn(e),r},result:function(){if(e.length){var t=e.join(“”);return e=[],t}}};function n(r,n){e.push(“M”,r,“,”,n,t)}function a(t,n){e.push(“M”,t,“,”,n),r.point=i}function i(t,r){e.push(“L”,t,“,”,r)}function o(){r.point=n}function s(){e.push(“Z”)}return r}function vn(t){return”m0,“+t+“a”+t+“,”+t+” 0 1,1 0,“+-2*t+“a”+t+“,”+t+” 0 1,1 0,“+2*t+“z”}var yn,xn={point:bn,lineStart:_n,lineEnd:wn,polygonStart:function(){xn.lineStart=Tn},polygonEnd:function(){xn.point=bn,xn.lineStart=_n,xn.lineEnd=wn}};function bn(t,e){xr+=t,br+=e,++_r}function n(){var t,e;function r(r,n){var a=r-t,i=n-e,o=Math.sqrt(a*a+ii);wr+=o(t+r)/2,Tr+=o*(e+n)/2,kr+=o,bn(t=r,e=n)}xn.point=function(n,a){xn.point=r,bn(t=n,e=a)}}function wn(){xn.point=bn}function Tn(){var t,e,r,n;function a(t,e){var a=t-r,i=e-n,o=Math.sqrt(a*a+ii);wr+=o(r+t)/2,Tr+=o*(n+e)/2,kr+=o,Ar+=(o=n*t-re)(r+t),Mr+=o*(n+e),Sr+=3*o,bn(r=t,n=e)}xn.point=function(i,o){xn.point=a,bn(t=r=i,e=n=o)},xn.lineEnd=function(){a(t,e)}}function kn(t){var e=4.5,r={point:n,lineStart:function(){r.point=a},lineEnd:o,polygonStart:function(){r.lineEnd=s},polygonEnd:function(){r.lineEnd=o,r.point=n},pointRadius:function(t){return e=t,r},result:O};function n(r,n){t.moveTo(r+e,n),t.arc(r,n,e,0,St)}function a(e,n){t.moveTo(e,n),r.point=i}function i(e,r){t.lineTo(e,r)}function o(){r.point=n}function s(){t.closePath()}return r}function An(t){var e=.5,r=Math.cos(30*Lt),n=16;function a(t){return(n?o:i)(t)}function i(e){return En(e,(function(r,n){r=t(r,n),e.point(r[0],r[1])}))}function o(e){var r,a,i,o,l,c,u,h,f,p,d,g,m={point:v,lineStart:y,lineEnd:b,polygonStart:function(){e.polygonStart(),m.lineStart=},polygonEnd:function(){e.polygonEnd(),m.lineStart=y}};function v(r,n){r=t(r,n),e.point(r[0],r[1])}function y(){h=NaN,m.point=x,e.lineStart()}function x(r,a){var i=Pr([r,a]),o=t(r,a);s(h,f,u,p,d,g,h=o[0],f=o[1],u=r,p=i[0],d=i[1],g=i[2],n,e),e.point(h,f)}function b(){m.point=v,e.lineEnd()}function (){y(),m.point=w,m.lineEnd=T}function w(t,e){x(r=t,e),a=h,i=f,o=p,l=d,c=g,m.point=x}function T(){s(h,f,u,p,d,g,a,i,r,o,l,c,n,e),m.lineEnd=b,b()}return m}function s(n,a,i,o,l,c,u,h,f,p,d,g,m,v){var x=u-n,b=h-a,=x*x+b*b;if(>4*e&&m–){var w=o+p,T=l+d,k=c+g,A=Math.sqrt(w*w+T*T+k*k),M=Math.asin(k/=A),S=y(y(k)-1)<kt||y(i-f)<kt?(i+f)/2:Math.atan2(T,w),E=t(S,M),C=E[0],L=E[1],P=C-n,I=L-a,z=b*P-x*I;(z*z/>e||y((x*P+b*I)/_-.5)>.3||o*p+l*d+c*g0&&16,a):Math.sqrt(e)},a}function Mn(t){var e=An((function(e,r){return t([e*Pt,r*Pt])}));return function(t){return Pn(e(t))}}function Sn(t){this.stream=t}function En(t,e){return{point:e,sphere:function(){t.sphere()},lineStart:function(){t.lineStart()},lineEnd:function(){t.lineEnd()},polygonStart:function(){t.polygonStart()},polygonEnd:function(){t.polygonEnd()}}}function Cn(t){return Ln((function(){return t}))()}function Ln(e){var r,n,a,i,o,s,l=An((function(t,e){return[(t=r(t,e))[0]*c+i,o-t[1]*c]})),c=150,u=480,h=250,f=0,p=0,d=0,g=0,m=0,v=tn,y=L,x=null,b=null;function (t){return[(t=a(t[0]*Lt,t[1]*Lt))[0]*c+i,o-t[1]*c]}function w(t){return(t=a.invert((t[0]-i)/c,(o-t[1])/c))&&[t[0]*Pt,t[1]*Pt]}function T(){a=Gr(n=On(d,g,m),r);var t=r(f,p);return i=u-t[0]*c,o=h+t[1]*c,k()}function k(){return s&&(s.valid=!1,s=null),}return .stream=function(t){return s&&(s.valid=!1),(s=Pn(v(n,l(y(t))))).valid=!0,s},.clipAngle=function(t){return arguments.length?(v=null==t?(x=t,tn):en((x=+t)*Lt),k()):x},.clipExtent=function(t){return arguments.length?(b=t,y=t?nn(t[0][0],t[0][1],t[1][0],t[1][1]):L,k()):b},.scale=function(t){return arguments.length?(c=+t,T()):c},.translate=function(t){return arguments.length?(u=+t[0],h=+t[1],T()):[u,h]},.center=function(t){return arguments.length?(f=t[0]%360*Lt,p=t[1]%360*Lt,T()):[f*Pt,p*Pt]},.rotate=function(t){return arguments.length?(d=t[0]%360*Lt,g=t[1]%360*Lt,m=t.length>2?t[2]%360*Lt:0,T()):[d*Pt,g*Pt,m*Pt]},t.rebind(,l,“precision”),function(){return r=e.apply(this,arguments),_.invert=r.invert&&w,T()}}function Pn(t){return En(t,(function(e,r){t.point(e*Lt,r*Lt)}))}function In(t,e){return[t,e]}function zn(t,e){return[t>Mt?t-St:t<-Mt?t+St:t,e]}function On(t,e,r){return t?e||r?Gr(Rn(t),Fn(e,r)):Rn(t):e||r?Fn(e,r):zn}function Dn(t){return function(e,r){return[(e+=t)>Mt?e-St:e<-Mt?e+St:e,r]}}function Rn(t){var e=Dn(t);return e.invert=Dn(-t),e}function Fn(t,e){var r=Math.cos(t),n=Math.sin(t),a=Math.cos(e),i=Math.sin(e);function o(t,e){var o=Math.cos(e),s=Math.cos(t)*o,l=Math.sin(t)*o,c=Math.sin(e),u=c*r+s*n;return[Math.atan2(l*a-u*i,s*r-c*n),Dt(u*a+l*i)]}return o.invert=function(t,e){var o=Math.cos(e),s=Math.cos(t)*o,l=Math.sin(t)*o,c=Math.sin(e),u=c*a-l*i;return[Math.atan2(l*a+c*i,s*r+u*n),Dt(u*r-s*n)]},o}function Bn(t,e){var r=Math.cos(t),n=Math.sin(t);return function(a,i,o,s){var l=o*e;null!=a?(a=Nn(r,a),i=Nn(r,i),(o>0?ai)&&(a+=o*St)):(a=t+o*St,i=t-.5*l);for(var c,u=a;o>0?u>i:u2?t[2]*Lt:0),e.invert=function(e){return(e=t.invert(e[0]*Lt,e[1]Lt))[0]=Pt,e[1]*=Pt,e},e},zn.invert=In,t.geo.circle=function(){var t,e,r=[0,0],n=6;function a(){var t=“function”==typeof r?r.apply(this,arguments):r,n=On(-t[0]*Lt,-t[1]Lt,0).invert,a=[];return e(null,null,1,{point:function(t,e){a.push(t=n(t,e)),t[0]=Pt,t[1]*=Pt}}),{type:“Polygon”,coordinates:[a]}}return a.origin=function(t){return arguments.length?(r=t,a):r},a.angle=function®{return arguments.length?(e=Bn((t=+r)*Lt,n*Lt),a):t},a.precision=function®{return arguments.length?(e=Bn(t*Lt,(n=+r)*Lt),a):n},a.angle(90)},t.geo.distance=function(t,e){var r,n=(e[0]-t[0])*Lt,a=t[1]*Lt,i=e[1]*Lt,o=Math.sin(n),s=Math.cos(n),l=Math.sin(a),c=Math.cos(a),u=Math.sin(i),h=Math.cos(i);return Math.atan2(Math.sqrt((r=h*o)*r+(r=c*u-l*h*s)*r),l*u+c*h*s)},t.geo.graticule=function(){var e,r,n,a,i,o,s,l,c,u,h,f,p=10,d=p,g=90,m=360,v=2.5;function x(){return{type:“MultiLineString”,coordinates:b()}}function b(){return t.range(Math.ceil(a/g)*g,n,g).map(h).concat(t.range(Math.ceil(l/m)*m,s,m).map(f)).concat(t.range(Math.ceil(r/p)*p,e,p).filter((function(t){return y(t%g)>kt})).map©).concat(t.range(Math.ceil(o/d)*d,i,d).filter((function(t){return y(t%m)>kt})).map(u))}return x.lines=function(){return b().map((function(t){return{type:“LineString”,coordinates:t}}))},x.outline=function(){return{type:“Polygon”,coordinates:[h(a).concat(f(s).slice(1),h(n).reverse().slice(1),f(l).reverse().slice(1))]}},x.extent=function(t){return arguments.length?x.majorExtent(t).minorExtent(t):x.minorExtent()},x.majorExtent=function(t){return arguments.length?(a=+t[0][0],n=+t[1][0],l=+t[0][1],s=+t[1][1],a>n&&(t=a,a=n,n=t),l>s&&(t=l,l=s,s=t),x.precision(v)):[[a,l],[n,s]]},x.minorExtent=function(t){return arguments.length?(r=+t[0][0],e=+t[1][0],o=+t[0][1],i=+t[1][1],r>e&&(t=r,r=e,e=t),o>i&&(t=o,o=i,i=t),x.precision(v)):[[r,o],[e,i]]},x.step=function(t){return arguments.length?x.majorStep(t).minorStep(t):x.minorStep()},x.majorStep=function(t){return arguments.length?(g=+t[0],m=+t[1],x):[g,m]},x.minorStep=function(t){return arguments.length?(p=+t[0],d=+t[1],x):[p,d]},x.precision=function(t){return arguments.length?(v=+t,c=jn(o,i,90),u=Vn(r,e,v),h=jn(l,s,90),f=Vn(a,n,v),x):v},x.majorExtent([[-180,-90+kt],[180,90-kt]]).minorExtent([[-180,-80-kt],[180,80+kt]])},t.geo.greatArc=function(){var e,r,n=Un,a=qn;function i(){return{type:“LineString”,coordinates:[e||n.apply(this,arguments),r||a.apply(this,arguments)]}}return i.distance=function(){return t.geo.distance(e||n.apply(this,arguments),r||a.apply(this,arguments))},i.source=function(t){return arguments.length?(n=t,e=“function”==typeof t?null:t,i):n},i.target=function(t){return arguments.length?(a=t,r=“function”==typeof t?null:t,i):a},i.precision=function(){return arguments.length?i:0},i},t.geo.interpolate=function(t,e){return r=t[0]*Lt,n=t[1]*Lt,a=e[0]*Lt,i=e[1]*Lt,o=Math.cos(n),s=Math.sin(n),l=Math.cos(i),c=Math.sin(i),u=o*Math.cos®,h=o*Math.sin®,f=l*Math.cos(a),p=l*Math.sin(a),d=2*Math.asin(Math.sqrt(Ft(i-n)+o*lFt(a-r))),g=1/Math.sin(d),(m=d?function(t){var e=Math.sin(t=d)*g,r=Math.sin(d-t)*g,n=r*u+e*f,a=r*h+e*p,i=r*s+e*c;return[Math.atan2(a,n)*Pt,Math.atan2(i,Math.sqrt(n*n+a*a))*Pt]}:function(){return[r*Pt,nPt]}).distance=d,m;var r,n,a,i,o,s,l,c,u,h,f,p,d,g,m},t.geo.length=function(e){return yn=0,t.geo.stream(e,Hn),yn};var Hn={sphere:O,point:O,lineStart:function(){var t,e,r;function n(n,a){var i=Math.sin(a=Lt),o=Math.cos(a),s=y((n*=Lt)-t),l=Math.cos(s);yn+=Math.atan2(Math.sqrt((s=o*Math.sin(s))*s+(s=r*i-e*o*l)*s),e*i+r*o*l),t=n,e=i,r=o}Hn.point=function(a,i){t=aLt,e=Math.sin(i=Lt),r=Math.cos(i),Hn.point=n},Hn.lineEnd=function(){Hn.point=Hn.lineEnd=O}},lineEnd:O,polygonStart:O,polygonEnd:O};function Gn(t,e){function r(e,r){var n=Math.cos(e),a=Math.cos®,i=t(n*a);return[i*a*Math.sin(e),i*Math.sin®]}return r.invert=function(t,r){var n=Math.sqrt(t*t+r*r),a=e(n),i=Math.sin(a),o=Math.cos(a);return[Math.atan2(t*i,n*o),Math.asin(n&&r*i/n)]},r}var Yn=Gn((function(t){return Math.sqrt(2/(1+t))}),(function(t){return 2*Math.asin(t/2)}));(t.geo.azimuthalEqualArea=function(){return Cn(Yn)}).raw=Yn;var Wn=Gn((function(t){var e=Math.acos(t);return e&&e/Math.sin(e)}),L);function Zn(t,e){var r=Math.cos(t),n=function(t){return Math.tan(Mt/4+t/2)},a=t===e?Math.sin(t):Math.log(r/Math.cos(e))/Math.log(n(e)/n(t)),i=r*Math.pow(n(t),a)/a;if(!a)return Kn;function o(t,e){i>0?e<-Ct+kt&&(e=-Ct+kt):e>Ct-kt&&(e=Ct-kt);var r=i/Math.pow(n(e),a);return[r*Math.sin(a*t),i-r*Math.cos(a*t)]}return o.invert=function(t,e){var r=i-e,n=It(a)*Math.sqrt(t*t+r*r);return[Math.atan2(t,r)/a,2*Math.atan(Math.pow(i/n,1/a))-Ct]},o}function Xn(t,e){var r=Math.cos(t),n=t===e?Math.sin(t):(r-Math.cos(e))/(e-t),a=r/n+t;if(y(n)1&&zt(t[r[n-2]],t[r[n-1]],t[a])<=0;)–n;r[n++]=a}return r.slice(0,n)}function ia(t,e){return t[0]-e[0]||t[1]-e[1]}(t.geo.stereographic=function(){return Cn(ta)}).raw=ta,ea.invert=function(t,e){return[-e,2Math.atan(Math.exp(t))-Ct]},(t.geo.transverseMercator=function(){var t=Qn(ea),e=t.center,r=t.rotate;return t.center=function(t){return t?e([-t[1],t[0]]):[(t=e())[1],-t[0]]},t.rotate=function(t){return t?r([t[0],t[1],t.length>2?t[2]+90:90]):[(t=r())[0],t[1],t[2]-90]},r([0,0,90])}).raw=ea,t.geom={},t.geom.hull=function(t){var e=ra,r=na;if(arguments.length)return n(t);function n(t){if(t.length<3)return[];var n,a=de(e),i=de(r),o=t.length,s=[],l=[];for(n=0;n=0;–n)p.push(t[s[c[n]][2]]);for(n=+h;n<u.length-f;++n)p.push(t[s[u[n]][2]]);return p}return n.x=function(t){return arguments.length?(e=t,n):e},n.y=function(t){return arguments.length?(r=t,n):r},n},t.geom.polygon=function(t){return V(t,oa),t};var oa=t.geom.polygon.prototype=[];function sa(t,e,r){return(r[0]-e[0])(t[1]-e[1])<(r[1]-e[1])(t[0]-e[0])}function la(t,e,r,n){var a=t[0],i=r[0],o=e[0]-a,s=n[0]-i,l=t[1],c=r[1],u=e[1]-l,h=n[1]-c,f=(s(l-c)-h*(a-i))/(h*o-s*u);return[a+f*o,l+f*u]}function ca(t){var e=t[0],r=t[t.length-1];return!(e[0]-r[0]||e[1]-r[1])}oa.area=function(){for(var t,e=-1,r=this.length,n=this[r-1],a=0;++ekt)s=s.L;else{if(!((a=i-Ta(s,o))>kt)){n>-kt?(e=s.P,r=s):a>-kt?(e=s,r=s.N):e=r=s;break}if(!s.R){e=s;break}s=s.R}var l=ya(t);if(fa.insert(e,l),e||r){if(e===r)return Ea(e),r=ya(e.site),fa.insert(l,r),l.edge=r.edge=Pa(e.site,l.site),Sa(e),void Sa®;if®{Ea(e),Ea®;var c=e.site,u=c.x,h=c.y,f=t.x-u,p=t.y-h,d=r.site,g=d.x-u,m=d.y-h,v=2*(f*m-p*g),y=f*f+p*p,x=g*g+m*m,b={x:(m*y-p*x)/v+u,y:(f*x-g*y)/v+h};za(r.edge,c,d,b),l.edge=Pa(c,t,null,b),r.edge=Pa(t,d,null,b),Sa(e),Sa®}else l.edge=Pa(e.site,l.site)}}function wa(t,e){var r=t.site,n=r.x,a=r.y,i=a-e;if(!i)return n;var o=t.P;if(!o)return-10;var s=(r=o.site).x,l=r.y,c=l-e;if(!c)return s;var u=s-n,h=1/i-1/c,f=u/c;return h?(-f+Math.sqrt(f*f-2h(u*u/(-2c)-l+c/2+a-i/2)))/h+n:(n+s)/2}function Ta(t,e){var r=t.N;if®return wa(r,e);var n=t.site;return n.y===e?n.x:10}function ka(t){this.site=t,this.edges=[]}function Aa(t,e){return e.angle-t.angle}function Ma(){Ra(this),this.x=this.y=this.arc=this.site=this.cy=null}function Sa(t){var e=t.P,r=t.N;if(e&&r){var n=e.site,a=t.site,i=r.site;if(n!==i){var o=a.x,s=a.y,l=n.x-o,c=n.y-s,u=i.x-o,h=2(l*(m=i.y-s)-c*u);if(!(h>=-At)){var f=l*l+c*c,p=u*u+m*m,d=(m*f-c*p)/h,g=(l*p-u*f)/h,m=g+s,v=ma.pop()||new Ma;v.arc=t,v.site=a,v.x=d+o,v.y=m+Math.sqrt(d*d+g*g),v.cy=m,t.circle=v;for(var y=null,x=da.;x;)if(v.y=s)return;if(f>d){if(i){if(i.y>=c)return}else i={x:m,y:l};r={x:m,y:c}}else{if(i){if(i.y1)if(f>d){if(i){if(i.y>=c)return}else i={x:(l-a)/n,y:l};r={x:(c-a)/n,y:c}}else{if(i){if(i.y=s)return}else i={x:o,y:n*o+a};r={x:s,y:n*s+a}}else{if(i){if(i.x<o)return}else i={x:s,y:n*s+a};r={x:o,y:n*o+a}}return t.a=i,t.b=r,!0}function La(t,e){this.l=t,this.r=e,this.a=this.b=null}function Pa(t,e,r,n){var a=new La(t,e);return ua.push(a),r&&za(a,t,e,r),n&&za(a,e,t,n),ha[t.i].edges.push(new Oa(a,t,e)),ha[e.i].edges.push(new Oa(a,e,t)),a}function Ia(t,e,r){var n=new La(t,null);return n.a=e,n.b=r,ua.push(n),n}function za(t,e,r,n){t.a||t.b?t.l===r?t.b=n:t.a=n:(t.a=n,t.l=e,t.r=r)}function Oa(t,e,r){var n=t.a,a=t.b;this.edge=t,this.site=e,this.angle=r?Math.atan2(r.y-e.y,r.x-e.x):t.l===e?Math.atan2(a.x-n.x,n.y-a.y):Math.atan2(n.x-a.x,a.y-n.y)}function Da(){this.=null}function Ra(t){t.U=t.C=t.L=t.R=t.P=t.N=null}function Fa(t,e){var r=e,n=e.R,a=r.U;a?a.L===r?a.L=n:a.R=n:t.=n,n.U=a,r.U=n,r.R=n.L,r.R&&(r.R.U=r),n.L=r}function Ba(t,e){var r=e,n=e.L,a=r.U;a?a.L===r?a.L=n:a.R=n:t.=n,n.U=a,r.U=n,r.L=n.R,r.L&&(r.L.U=r),n.R=r}function Na(t){for(;t.L;)t=t.L;return t}function ja(t,e){var r,n,a,i=t.sort(Va).pop();for(ua=[],ha=new Array(t.length),fa=new Da,da=new Da;;)if(a=pa,i&&(!a||i.ykt||y(a-r)>kt)&&(s.splice(o,0,new Oa(Ia(i.site,u,y(n-h)kt?{x:h,y:y(e-h)kt?{x:y(r-d)kt?{x:f,y:y(e-f)kt?{x:y(r-p)=r&&c.x<=a&&c.y>=n&&c.y<=o?[[r,o],[a,o],[a,n],[r,n]]:[]).point=t[s]})),e}function s(t){return t.map((function(t,e){return{x:Math.round(n(t,e)/kt)*kt,y:Math.round(a(t,e)/kt)kt,i:e}}))}return o.links=function(t){return ja(s(t)).edges.filter((function(t){return t.l&&t.r})).map((function(e){return{source:t[e.l.i],target:t[e.r.i]}}))},o.triangles=function(t){var e=[];return ja(s(t)).cells.forEach((function(r,n){for(var a,i,o,s,l=r.site,c=r.edges.sort(Aa),u=-1,h=c.length,f=c[h-1].edge,p=f.l===l?f.r:f.l;++u<h;)f,a=p,p=(f=c[u].edge).l===l?f.r:f.l,n<a.i&&n<p.i&&(o=a,s=p,((i=l).x-s.x)(o.y-i.y)-(i.x-o.x)(s.y-i.y)<0)&&e.push([t[n],t[a.i],t[p.i]])})),e},o.x=function(t){return arguments.length?(n=de(e=t),o):e},o.y=function(t){return arguments.length?(a=de(r=t),o):r},o.clipExtent=function(t){return arguments.length?(i=null==t?Ua:t,o):i===Ua?null:i},o.size=function(t){return arguments.length?o.clipExtent(t&&[[0,0],t]):i===Ua?null:i&&i[1]},o};var Ua=[[-1e6,-1e6],[1e6,1e6]];function qa(t){return t.x}function Ha(t){return t.y}function Ga(t,e,r,n,a,i){if(!t(e,r,n,a,i)){var o=.5(r+a),s=.5*(n+i),l=e.nodes;l[0]&&Ga(t,l[0],r,n,o,s),l[1]&&Ga(t,l[1],o,n,a,s),l[2]&&Ga(t,l[2],r,s,o,i),l[3]&&Ga(t,l[3],o,s,a,i)}}function Ya(t,e,r,n,a,i,o){var s,l=10;return function t(c,u,h,f,p){if(!(u>i||h>o||f=)<<1|e>=b,T=w+4;w<T;++w)if(c=x[3&w])switch(3&w){case 0:t(c,u,h,b,);break;case 1:t(c,b,h,f,);break;case 2:t(c,u,,b,p);break;case 3:t(c,b,,f,p)}}}(t,n,a,i,o),s}function Wa(e,r){e=t.rgb(e),r=t.rgb®;var n=e.r,a=e.g,i=e.b,o=r.r-n,s=r.g-a,l=r.b-i;return function(t){return”#“+se(Math.round(n+o*t))+se(Math.round(a+s*t))+se(Math.round(i+lt))}}function Za(t,e){var r,n={},a={};for(r in t)r in e?n[r]=$a(t[r],e[r]):a[r]=t[r];for(r in e)r in t||(a[r]=e[r]);return function(t){for(r in n)a[r]=nr;return a}}function Xa(t,e){return t=+t,e=+e,function®{return t(1-r)+e*r}}function Ja(t,e){var r,n,a,i=Ka.lastIndex=Qa.lastIndex=0,o=-1,s=[],l=[];for(t+=“”,e+=“”;(r=Ka.exec(t))&&(n=Qa.exec(e));)(a=n.index)>i&&(a=e.slice(i,a),s[o]?s[o]+=a:s[++o]=a),(r=r[0])===(n=n[0])?s[o]?s[o]+=n:s[++o]=n:(s[++o]=null,l.push({i:o,x:Xa(r,n)})),i=Qa.lastIndex;return ig&&(g=l.x),l.y>m&&(m=l.y),c.push(l.x),u.push(l.y);else for(h=0;h<f;++h){var b=+v(l=t[h],h),=+x(l,h);bg&&(g=b),>m&&(m=),c.push(b),u.push(_)}var w=g-p,T=m-d;function k(t,e,r,n,a,i,o,s){if(!isNaN®&&!isNaN(n))if(t.leaf){var l=t.x,c=t.y;if(null!=l)if(y(l-r)+y(c-n)<.01)A(t,e,r,n,a,i,o,s);else{var u=t.point;t.x=t.y=t.point=null,A(t,u,l,c,a,i,o,s),A(t,e,r,n,a,i,o,s)}else t.x=r,t.y=n,t.point=e}else A(t,e,r,n,a,i,o,s)}function A(t,e,r,n,a,i,o,s){var l=.5(a+o),c=.5(i+s),u=r>=l,h=n>=c,f=h<<1|u;t.leaf=!1,u?a=l:o=l,h?i=c:s=c,k(t=t.nodes[f]||(t.nodes[f]={leaf:!0,nodes:[],point:null,x:null,y:null}),e,r,n,a,i,o,s)}w>T?m=d+w:g=p+T;var M={leaf:!0,nodes:[],point:null,x:null,y:null,add:function(t){k(M,t,+v(t,++h),+x(t,h),p,d,g,m)},visit:function(t){Ga(t,M,p,d,g,m)},find:function(t){return Ya(M,t[0],t[1],p,d,g,m)}};if(h=-1,null==e){for(;++h=0&&!(n=t.interpolatorsa););return n}function ti(t,e){var r,n=[],a=[],i=t.length,o=e.length,s=Math.min(t.length,e.length);for(r=0;r=1?1:t(e)}}function ii(t){return function(e){return 1-t(1-e)}}function oi(t){return function(e){return.5*(e<.5?t(2*e):2-t(2-2*e))}}function si(t){return t*t}function li(t){return t*t*t}function ci(t){if(t<=0)return 0;if(t>=1)return 1;var e=t*t,r=et;return 4(t<.5?r:3*(t-e)+r-.75)}function ui(t){return 1-Math.cos(tCt)}function hi(t){return Math.pow(2,10(t-1))}function fi(t){return 1-Math.sqrt(1-t*t)}function pi(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375}function di(t,e){return e-=t,function(r){return Math.round(t+e*r)}}function gi(t){var e,r,n,a=[t.a,t.b],i=[t.c,t.d],o=vi(a),s=mi(a,i),l=vi(((e=i)[0]+=(n=-s)*(r=a)[0],e[1]+=n*r[1],e))||0;a[0]*i[1]=0?t.slice(0,e):t,a=e>=0?t.slice(e+1):“in”;return n=ri.get(n)||ei,ai((a=ni.get(a)||L)(n.apply(null,r.call(arguments,1))))},t.interpolateHcl=function(e,r){e=t.hcl(e),r=t.hcl®;var n=e.h,a=e.c,i=e.l,o=r.h-n,s=r.c-a,l=r.l-i;isNaN(s)&&(s=0,a=isNaN(a)?r.c:a);isNaN(o)?(o=0,n=isNaN(n)?r.h:n):o>180?o-=360:o<-180&&(o+=360);return function(t){return Zt(n+o*t,a+s*t,i+l*t)+“”}},t.interpolateHsl=function(e,r){e=t.hsl(e),r=t.hsl®;var n=e.h,a=e.s,i=e.l,o=r.h-n,s=r.s-a,l=r.l-i;isNaN(s)&&(s=0,a=isNaN(a)?r.s:a);isNaN(o)?(o=0,n=isNaN(n)?r.h:n):o>180?o-=360:o<-180&&(o+=360);return function(t){return Gt(n+o*t,a+s*t,i+l*t)+“”}},t.interpolateLab=function(e,r){e=t.lab(e),r=t.lab®;var n=e.l,a=e.a,i=e.b,o=r.l-n,s=r.a-a,l=r.b-i;return function(t){return Qt(n+o*t,a+s*t,i+l*t)+“”}},t.interpolateRound=di,t.transform=function(e){var r=a.createElementNS(t.ns.prefix.svg,“g”);return(t.transform=function(t){if(null!=t){r.setAttribute(“transform”,t);var e=r.transform.baseVal.consolidate()}return new gi(e?e.matrix:yi)})(e)},gi.prototype.toString=function(){return”translate(“+this.translate+”)rotate(“+this.rotate+”)skewX(“+this.skew+”)scale(“+this.scale+”)“};var yi={a:1,b:0,c:0,d:1,e:0,f:0};function xi(t){return t.length?t.pop()+“,”:“”}function bi(e,r){var n=[],a=[];return e=t.transform(e),r=t.transform®,function(t,e,r,n){if(t[0]!==e[0]||t[1]!==e[1]){var a=r.push(“translate(”,null,“,”,null,“)”);n.push({i:a-4,x:Xa(t[0],e[0])},{i:a-2,x:Xa(t[1],e[1])})}else(e[0]||e[1])&&r.push(“translate(”+e+“)”)}(e.translate,r.translate,n,a),function(t,e,r,n){t!==e?(t-e>180?e+=360:e-t>180&&(t+=360),n.push({i:r.push(xi®+“rotate(”,null,“)”)-2,x:Xa(t,e)})):e&&r.push(xi®+“rotate(”+e+“)”)}(e.rotate,r.rotate,n,a),function(t,e,r,n){t!==e?n.push({i:r.push(xi®+“skewX(”,null,“)”)-2,x:Xa(t,e)}):e&&r.push(xi®+“skewX(”+e+“)”)}(e.skew,r.skew,n,a),function(t,e,r,n){if(t[0]!==e[0]||t[1]!==e[1]){var a=r.push(xi®+“scale(”,null,“,”,null,“)”);n.push({i:a-4,x:Xa(t[0],e[0])},{i:a-2,x:Xa(t[1],e[1])})}else 1===e[0]&&1===e[1]||r.push(xi®+“scale(”+e+“)”)}(e.scale,r.scale,n,a),e=r=null,function(t){for(var e,r=-1,i=a.length;++r0?n=t:(e.c=null,e.t=NaN,e=null,l.end({type:“end”,alpha:n=0})):t>0&&(l.start({type:“start”,alpha:n=t}),e=we(s.tick)),s):n},s.start=function(){var t,e,r,n=v.length,l=y.length,u=c[0],d=c[1];for(t=0;t=0;)r.push(a[n])}function Oi(t,e){for(var r=[t],n=[];null!=(t=r.pop());)if(n.push(t),(i=t.children)&&(a=i.length))for(var a,i,o=-1;++o=0;)o.push(u=c[l]),u.parent=i,u.depth=i.depth+1;r&&(i.value=0),i.children=c}else r&&(i.value=+r.call(n,i,i.depth)||0),delete i.children;return Oi(a,(function(e){var n,a;t&&(n=e.children)&&n.sort(t),r&&(a=e.parent)&&(a.value+=e.value)})),s}return n.sort=function(e){return arguments.length?(t=e,n):t},n.children=function(t){return arguments.length?(e=t,n):e},n.value=function(t){return arguments.length?(r=t,n):r},n.revalue=function(t){return r&&(zi(t,(function(t){t.children&&(t.value=0)})),Oi(t,(function(t){var e;t.children||(t.value=+r.call(n,t,t.depth)||0),(e=t.parent)&&(e.value+=t.value)}))),t},n},t.layout.partition=function(){var e=t.layout.hierarchy(),r=[1,1];function n(t,n){var a=e.call(this,t,n);return function t(e,r,n,a){var i=e.children;if(e.x=r,e.y=e.depth*a,e.dx=n,e.dy=a,i&&(o=i.length)){var o,s,l,c=-1;for(n=e.value?n/e.value:0;++cs&&(s=n),o.push(n)}for(r=0;ra&&(n=r,a=e);return n}function Zi(t){return t.reduce(Xi,0)}function Xi(t,e){return t+e[1]}function Ji(t,e){return Ki(t,Math.ceil(Math.log(e.length)/Math.LN2+1))}function Ki(t,e){for(var r=-1,n=+t[0],a=(t[1]-n)/e,i=[];++r<=e;)i[r]=a*r+n;return i}function Qi(e){return[t.min(e),t.max(e)]}function $i(t,e){return t.value-e.value}function to(t,e){var r=t._pack_next;t._pack_next=e,e._pack_prev=t,e._pack_next=r,r._pack_prev=e}function eo(t,e){t._pack_next=e,e._pack_prev=t}function ro(t,e){var r=e.x-t.x,n=e.y-t.y,a=t.r+e.r;return.999*a*a>r*r+n*n}function no(t){if((e=t.children)&&(l=e.length)){var e,r,n,a,i,o,s,l,c=10,u=-10,h=10,f=-10;if(e.forEach(ao),(r=e[0]).x=-r.r,r.y=0,x®,l>1&&((n=e[1]).x=n.r,n.y=0,x(n),l>2))for(oo(r,n,a=e[2]),x(a),to(r,a),r._pack_prev=a,to(a,n),n=r._pack_next,i=3;i0)for(o=-1;++o=h[0]&&l<=h[1]&&((s=c[t.bisect(f,l,1,d)-1]).y+=g,s.push(i[o]));return c}return i.value=function(t){return arguments.length?(r=t,i):r},i.range=function(t){return arguments.length?(n=de(t),i):n},i.bins=function(t){return arguments.length?(a=“number”==typeof t?function(e){return Ki(e,t)}:de(t),i):a},i.frequency=function(t){return arguments.length?(e=!!t,i):e},i},t.layout.pack=function(){var e,r=t.layout.hierarchy().sort($i),n=0,a=[1,1];function i(t,i){var o=r.call(this,t,i),s=o[0],l=a[0],c=a[1],u=null==e?Math.sqrt:“function”==typeof e?e:function(){return e};if(s.x=s.y=0,Oi(s,(function(t){t.r=+u(t.value)})),Oi(s,no),n){var h=n*(e?1:Math.max(2*s.r/l,2*s.r/c))/2;Oi(s,(function(t){t.r+=h})),Oi(s,no),Oi(s,(function(t){t.r-=h}))}return function t(e,r,n,a){var i=e.children;if(e.x=r+=a*e.x,e.y=n+=ae.y,e.r=a,i)for(var o=-1,s=i.length;++op.x&&(p=t),t.depth>d.depth&&(d=t)}));var g=r(f,p)/2-f.x,m=n[0]/(p.x+r(p,f)/2+g),v=n[1]/(d.depth||1);zi(u,(function(t){t.x=(t.x+g)*m,t.y=t.depthv}))}return c}function o(t){var e=t.children,n=t.parent.children,a=t.i?n[t.i-1]:null;if(e.length){!function(t){var e,r=0,n=0,a=t.children,i=a.length;for(;–i>=0;)(e=a[i]).z+=r,e.m+=r,r+=e.s+(n+=e.c)}(t);var i=(e[0].z+e[e.length-1].z)/2;a?(t.z=a.z+r(t.,a.),t.m=t.z-i):t.z=i}else a&&(t.z=a.z+r(t.,a.));t.parent.A=function(t,e,n){if(e){for(var a,i=t,o=t,s=e,l=i.parent.children[0],c=i.m,u=o.m,h=s.m,f=l.m;s=co(s),i=lo(i),s&&i;)l=lo(l),(o=co(o)).a=t,(a=s.z+h-i.z-c+r(s.,i.))>0&&(uo(ho(s,t,n),t,a),c+=a,u+=a),h+=s.m,c+=i.m,f+=l.m,u+=o.m;s&&!co(o)&&(o.t=s,o.m+=h-u),i&&!lo(l)&&(l.t=i,l.m+=c-f,n=t)}return n}(t,a,t.parent.A||n[0])}function s(t){t._.x=t.z+t.parent.m,t.m+=t.parent.m}function l(t){t.x=n[0],t.y=t.depth*n[1]}return i.separation=function(t){return arguments.length?(r=t,i):r},i.size=function(t){return arguments.length?(a=null==(n=t)?l:null,i):a?null:n},i.nodeSize=function(t){return arguments.length?(a=null==(n=t)?null:l,i):a?n:null},Ii(i,e)},t.layout.cluster=function(){var e=t.layout.hierarchy().sort(null).value(null),r=so,n=[1,1],a=!1;function i(i,o){var s,l=e.call(this,i,o),c=l[0],u=0;Oi(c,(function(e){var n=e.children;n&&n.length?(e.x=function(t){return t.reduce((function(t,e){return t+e.x}),0)/t.length}(n),e.y=function(e){return 1+t.max(e,(function(t){return t.y}))}(n)):(e.x=s?u+=r(e,s):0,e.y=0,s=e)}));var h=function t(e){var r=e.children;return r&&r.length?t(r[0]):e}©,f=function t(e){var r,n=e.children;return n&&(r=n.length)?t(n[r-1]):e}©,p=h.x-r(h,f)/2,d=f.x+r(f,h)/2;return Oi(c,a?function(t){t.x=(t.x-c.x)*n[0],t.y=(c.y-t.y)*n[1]}:function(t){t.x=(t.x-p)/(d-p)*n[0],t.y=(1-(c.y?t.y/c.y:1))n[1]}),l}return i.separation=function(t){return arguments.length?(r=t,i):r},i.size=function(t){return arguments.length?(a=null==(n=t),i):a?null:n},i.nodeSize=function(t){return arguments.length?(a=null!=(n=t),i):a?n:null},Ii(i,e)},t.layout.treemap=function(){var e,r=t.layout.hierarchy(),n=Math.round,a=[1,1],i=null,o=fo,s=!1,l=“squarify”,c=.5(1+Math.sqrt(5));function u(t,e){for(var r,n,a=-1,i=t.length;++a0;)s.push(r=c[a-1]),s.area+=r.area,“squarify”!==l||(n=p(s,g))<=f?(c.pop(),f=n):(s.area-=s.pop().area,d(s,g,i,!1),g=Math.min(i.dx,i.dy),s.length=s.area=0,f=10);s.length&&(d(s,g,i,!0),s.length=s.area=0),e.forEach(h)}}function f(t){var e=t.children;if(e&&e.length){var r,n=o(t),a=e.slice(),i=[];for(u(a,n.dxn.dy/t.value),i.area=0;r=a.pop();)i.push®,i.area+=r.area,null!=r.z&&(d(i,r.z?n.dx:n.dy,n,!a.length),i.length=i.area=0);e.forEach(f)}}function p(t,e){for(var r,n=t.area,a=0,i=10,o=-1,s=t.length;++oa&&(a=r));return e=e,(n*=n)?Math.max(e*a*c/n,n/(e*i*c)):10}function d(t,e,r,a){var i,o=-1,s=t.length,l=r.x,c=r.y,u=e?n(t.area/e):0;if(e==r.dx){for((a||u>r.dy)&&(u=r.dy);++or.dx)&&(u=r.dx);++o1);return t+e*r*Math.sqrt(-2*Math.log(a)/a)}},logNormal:function(){var e=t.random.normal.apply(t,arguments);return function(){return Math.exp(e())}},bates:function(e){var r=t.random.irwinHall(e);return function(){return r()/e}},irwinHall:function(t){return function(){for(var e=0,r=0;r2?_o:vo,s=a?wi:_i;return i=t(e,r,s,n),o=t(r,e,s,$a),l}function l(t){return i(t)}return l.invert=function(t){return o(t)},l.domain=function(t){return arguments.length?(e=t.map(Number),s()):e},l.range=function(t){return arguments.length?(r=t,s()):r},l.rangeRound=function(t){return l.range(t).interpolate(di)},l.clamp=function(t){return arguments.length?(a=t,s()):a},l.interpolate=function(t){return arguments.length?(n=t,s()):n},l.ticks=function(t){return Ao(e,t)},l.tickFormat=function(t,r){return Mo(e,t,r)},l.nice=function(t){return To(e,t),s()},l.copy=function(){return t(e,r,n,a)},s()}([0,1],[0,1],$a,!1)};var So={s:1,g:1,p:1,r:1,e:1};function Eo(t){return-Math.floor(Math.log(t)/Math.LN10+.01)}t.scale.log=function(){return function e(r,n,a,i){function o(t){return(a?Math.log(t<0?0:t):-Math.log(t>0?0:-t))/Math.log(n)}function s(t){return a?Math.pow(n,t):-Math.pow(n,-t)}function l(t){return r(o(t))}return l.invert=function(t){return s(r.invert(t))},l.domain=function(t){return arguments.length?(a=t[0]>=0,r.domain((i=t.map(Number)).map(o)),l):i},l.base=function(t){return arguments.length?(n=+t,r.domain(i.map(o)),l):n},l.nice=function(){var t=yo(i.map(o),a?Math:Lo);return r.domain(t),i=t.map(s),l},l.ticks=function(){var t=go(i),e=[],r=t[0],l=t[1],c=Math.floor(o®),u=Math.ceil(o(l)),h=n%1?2:n;if(isFinite(u-c)){if(a){for(;c0;f–)e.push(s©*f);for(c=0;e[c]l;u–);e=e.slice(c,u)}return e},l.tickFormat=function(e,r){if(!arguments.length)return Co;arguments.length<2?r=Co:"function"!=typeof r&&(r=t.format(r));var a=Math.max(1,n*e/l.ticks().length);return function(t){var e=t/s(Math.round(o(t)));return e*n0?a[t-1]:r[0],th?0:1;if(c=Et)return l(c,p)+(s?l(s,1-p):“”)+“Z”;var d,g,m,v,y,x,b,,w,T,k,A,M=0,S=0,E=[];if((v=(+o.apply(this,arguments)||0)/2)&&(m=n===Fo?Math.sqrt(s*s+cc):+n.apply(this,arguments),p||(S=-1),c&&(S=Dt(m/c*Math.sin(v))),s&&(M=Dt(m/s*Math.sin(v)))),c){y=c*Math.cos(u+S),x=c*Math.sin(u+S),b=c*Math.cos(h-S),=c*Math.sin(h-S);var C=Math.abs(h-u-2*S)<=Mt?0:1;if(S&&qo(y,x,b,)===p^C){var L=(u+h)/2;y=c*Math.cos(L),x=c*Math.sin(L),b==null}}else y=x=0;if(s){w=s*Math.cos(h-M),T=s*Math.sin(h-M),k=s*Math.cos(u+M),A=s*Math.sin(u+M);var P=Math.abs(u-h+2*M)<=Mt?0:1;if(M&&qo(w,T,k,A)===1-p^P){var I=(u+h)/2;w=s*Math.cos(I),T=s*Math.sin(I),k=A=null}}else w=T=0;if(f>kt&&(d=Math.min(Math.abs(c-s)/2,+r.apply(this,arguments)))>.001){g=s0?0:1}function Ho(t,e,r,n,a){var i=t[0]-e[0],o=t[1]-e[1],s=(a?n:-n)/Math.sqrt(i*i+o*o),l=s*o,c=-s*i,u=t[0]+l,h=t[1]+c,f=e[0]+l,p=e[1]+c,d=(u+f)/2,g=(h+p)/2,m=f-u,v=p-h,y=m*m+v*v,x=r-n,b=u*p-f*h,=(v<0?-1:1)*Math.sqrt(Math.max(0,x*x*y-b*b)),w=(bv-m)/y,T=(-bm-v)/y,k=(bv+m)/y,A=(-bm+v)/y,M=w-d,S=T-g,E=k-d,C=A-g;return M*M+S*S>E*E+C*C&&(w=k,T=A),[[w-l,T-c],[w*r/x,T*r/x]]}function Go(t){var e=ra,r=na,n=Yr,a=Wo,i=a.key,o=.7;function s(i){var s,l=[],c=[],u=-1,h=i.length,f=de(e),p=de®;function d(){l.push(“M”,a(t©,o))}for(;++u1&&a.push(“H”,n[0]);return a.join(“”)},“step-before”:Xo,“step-after”:Jo,basis:$o,“basis-open”:function(t){if(t.length<4)return Wo(t);var e,r=[],n=-1,a=t.length,i=[0],o=[0];for(;++n<3;)e=t[n],i.push(e[0]),o.push(e[1]);r.push(ts(ns,i)+","+ts(ns,o)),--n;for(;++n9&&(a=3*e/Math.sqrt(a),o[s]=a*r,o[s+1]=an));s=-1;for(;++s<=l;)a=(t[Math.min(l,s+1)][0]-t[Math.max(0,s-1)][0])/(6(1+o[s]*o[s])),i.push([a||0,o[s]*a||0]);return i}(t))}});function Wo(t){return t.length>1?t.join(“L”):t+“Z”}function Zo(t){return t.join(“L”)+“Z”}function Xo(t){for(var e=0,r=t.length,n=t[0],a=[n[0],“,”,n[1]];++e1){s=e[1],i=t[l],l++,n+=“C”+(a[0]+o[0])+“,”+(a[1]+o[1])+“,”+(i[0]-s[0])+“,”+(i[1]-s[1])+“,”+i[0]+“,”+i[1];for(var c=2;c<e.length;c++,l++)i=t[l],s=e[c],n+=“S”+(i[0]-s[0])+“,”+(i[1]-s[1])+“,”+i[0]+“,”+i[1]}if®{var u=t[l];n+=“Q”+(i[0]+2*s[0]/3)+“,”+(i[1]+2s[1]/3)+“,”+u[0]+“,”+u[1]}return n}function Qo(t,e){for(var r,n=[],a=(1-e)/2,i=t[0],o=t[1],s=1,l=t.length;++s<l;)r=i,i=o,o=t[s],n.push([a(o[0]-r[0]),a*(o[1]-r[1])]);return n}function $o(t){if(t.length<3)return Wo(t);var e=1,r=t.length,n=t[0],a=n[0],i=n[1],o=[a,a,a,(n=t[1])[0]],s=[i,i,i,n[1]],l=[a,“,”,i,“L”,ts(ns,o),“,”,ts(ns,s)];for(t.push(t[r-1]);++e<=r;)n=t[e],o.shift(),o.push(n[0]),s.shift(),s.push(n[1]),as(l,o,s);return t.pop(),l.push(“L”,n),l.join(“”)}function ts(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]}Yo.forEach((function(t,e){e.key=t,e.closed=/-closed$/.test(t)}));var es=[0,23,13,0],rs=[0,13,23,0],ns=[0,16,23,16];function as(t,e,r){t.push(“C”,ts(es,e),“,”,ts(es,r),“,”,ts(rs,e),“,”,ts(rs,r),“,”,ts(ns,e),“,”,ts(ns,r))}function is(t,e){return(e[1]-t[1])/(e[0]-t[0])}function os(t){for(var e,r,n,a=-1,i=t.length;++a<i;)r=(e=t[a])[0],n=e[1]-Ct,e[0]=r*Math.cos(n),e[1]=r*Math.sin(n);return t}function ss(t){var e=ra,r=ra,n=0,a=na,i=Yr,o=Wo,s=o.key,l=o,c=“L”,u=.7;function h(s){var h,f,p,d=[],g=[],m=[],v=-1,y=s.length,x=de(e),b=de(n),=e===r?function(){return f}:de®,w=n===a?function(){return p}:de(a);function T(){d.push(“M”,o(t(m),u),c,l(t(g.reverse()),u),“Z”)}for(;++vMt)+“,1 “+e}function l(t,e,r,n){return”Q 0,0 “+n}return i.radius=function(t){return arguments.length?(r=de(t),i):r},i.source=function(e){return arguments.length?(t=de(e),i):t},i.target=function(t){return arguments.length?(e=de(t),i):e},i.startAngle=function(t){return arguments.length?(n=de(t),i):n},i.endAngle=function(t){return arguments.length?(a=de(t),i):a},i},t.svg.diagonal=function(){var t=Un,e=qn,r=cs;function n(n,a){var i=t.call(this,n,a),o=e.call(this,n,a),s=(i.y+o.y)/2,l=[i,{x:i.x,y:s},{x:o.x,y:s},o];return”M”+(l=l.map®)[0]+“C”+l[1]+” “+l[2]+” “+l[3]}return n.source=function(e){return arguments.length?(t=de(e),n):t},n.target=function(t){return arguments.length?(e=de(t),n):e},n.projection=function(t){return arguments.length?(r=t,n):r},n},t.svg.diagonal.radial=function(){var e=t.svg.diagonal(),r=cs,n=e.projection;return e.projection=function(t){return arguments.length?n(us(r=t)):r},e},t.svg.symbol=function(){var t=fs,e=hs;function r(r,n){return(ds.get(t.call(this,r,n))||ps)(e.call(this,r,n))}return r.type=function(e){return arguments.length?(t=de(e),r):t},r.size=function(t){return arguments.length?(e=de(t),r):e},r};var ds=t.map({circle:ps,cross:function(t){var e=Math.sqrt(t/5)/2;return”M”+-3*e+“,”+-e+“H”+-e+“V”+-3*e+“H”+e+“V”+-e+“H”+3*e+“V”+e+“H”+e+“V”+3*e+“H”+-e+“V”+e+“H”+-3*e+“Z”},diamond:function(t){var e=Math.sqrt(t/(2*ms)),r=e*ms;return”M0,“+-e+“L”+r+“,0 0,”+e+” “+-r+”,0Z”},square:function(t){var e=Math.sqrt(t)/2;return”M”+-e+“,”+-e+“L”+e+“,”+-e+” “+e+”,“+e+” “+-e+”,“+e+“Z”},“triangle-down”:function(t){var e=Math.sqrt(t/gs),r=e*gs/2;return”M0,“+r+“L”+e+“,”+-r+” “+-e+”,“+-r+“Z”},“triangle-up”:function(t){var e=Math.sqrt(t/gs),r=e*gs/2;return”M0,“+-r+“L”+e+“,”+r+” “+-e+”,“+r+“Z”}});t.svg.symbolTypes=ds.keys();var gs=Math.sqrt(3),ms=Math.tan(30*Lt);Y.transition=function(t){for(var e,r,n=bs||++Ts,a=Ms(t),i=[],o=_s||{time:Date.now(),ease:ci,delay:0,duration:250},s=-1,l=this.length;++s0;)c[–f].call(t,o);if(i>=1)return h.event&&h.event.end.call(t,t.data,e),–u.count?delete u[n]:delete t[r],1}h||(i=a.time,o=we((function(t){var e=h.delay;if(o.t=e+i,e<=t)return f(t-e);o.c=f}),0,i),h=u[n]={tween:new _,time:i,timer:o,delay:a.delay,duration:a.duration,ease:a.ease,index:e},a=null,++u.count)}ws.call=Y.call,ws.empty=Y.empty,ws.node=Y.node,ws.size=Y.size,t.transition=function(e,r){return e&&e.transition?bs?e.transition®:e:t.selection().transition(e)},t.transition.prototype=ws,ws.select=function(t){var e,r,n,a=this.id,i=this.namespace,o=[];t=W(t);for(var s=-1,l=this.length;++srect,.s>rect”).attr(“width”,s[1]-s[0])}function g(t){t.select(“.extent”).attr(“y”,l[0]),t.selectAll(“.extent,.e>rect,.w>rect”).attr(“height”,l[1]-l[0])}function m(){var h,m,v=this,y=t.select(t.event.target),x=n.of(v,arguments),b=t.select(v),=y.datum(),w=!/^(n|s)$/.test()&&a,T=!/^(e|w)$/.test()&&i,k=y.classed(“extent”),A=bt(v),M=t.mouse(v),S=t.select(o(v)).on(“keydown.brush”,L).on(“keyup.brush”,P);if(t.event.changedTouches?S.on(“touchmove.brush”,I).on(“touchend.brush”,O):S.on(“mousemove.brush”,I).on(“mouseup.brush”,O),b.interrupt().selectAll(”*“).interrupt(),k)M[0]=s[0]-M[0],M[1]=l[0]-M[1];else if(){var E=+/w$/.test(),C=+/^n/.test();m=[s[1-E]-M[0],l[1-C]-M[1]],M[0]=s[E],M[1]=l[C]}else t.event.altKey&&(h=M.slice());function L(){32==t.event.keyCode&&(k||(h=null,M[0]-=s[1],M[1]-=l[1],k=2),F())}function P(){32==t.event.keyCode&&2==k&&(M[0]+=s[1],M[1]+=l[1],k=0,F())}function I(){var e=t.mouse(v),r=!1;m&&(e[0]+=m[0],e[1]+=m[1]),k||(t.event.altKey?(h||(h=[(s[0]+s[1])/2,(l[0]+l[1])/2]),M[0]=s[+(e[0]1?{floor:function(e){for(;s(e=t.floor(e));)e=Ns(e-1);return e},ceil:function(e){for(;s(e=t.ceil(e));)e=Ns(+e+1);return e}}:t))},a.ticks=function(t,e){var r=go(a.domain()),n=null==t?i(r,10):“number”==typeof t?i(r,t):!t.range&&[{range:t},e];return n&&(t=n[0],e=n[1]),t.range(r[0],Ns(+r[1]+1),e<1?1:e)},a.tickFormat=function(){return n},a.copy=function(){return Bs(e.copy(),r,n)},wo(a,e)}function Ns(t){return new Date(t)}Os.iso=Date.prototype.toISOString&&+new Date("2000-01-01T00:00:00.000Z")?Fs:Rs,Fs.parse=function(t){var e=new Date(t);return isNaN(e)?null:e},Fs.toString=Rs.toString,Ie.second=Re((function(t){return new ze(1e3*Math.floor(t/1e3))}),(function(t,e){t.setTime(t.getTime()+1e3*Math.floor(e))}),(function(t){return t.getSeconds()})),Ie.seconds=Ie.second.range,Ie.seconds.utc=Ie.second.utc.range,Ie.minute=Re((function(t){return new ze(6e4*Math.floor(t/6e4))}),(function(t,e){t.setTime(t.getTime()+6e4*Math.floor(e))}),(function(t){return t.getMinutes()})),Ie.minutes=Ie.minute.range,Ie.minutes.utc=Ie.minute.utc.range,Ie.hour=Re((function(t){var e=t.getTimezoneOffset()/60;return new ze(36e5*(Math.floor(t/36e5-e)+e))}),(function(t,e){t.setTime(t.getTime()+36e5*Math.floor(e))}),(function(t){return t.getHours()})),Ie.hours=Ie.hour.range,Ie.hours.utc=Ie.hour.utc.range,Ie.month=Re((function(t){return(t=Ie.day(t)).setDate(1),t}),(function(t,e){t.setMonth(t.getMonth()+e)}),(function(t){return t.getMonth()})),Ie.months=Ie.month.range,Ie.months.utc=Ie.month.utc.range;var js=[1e3,5e3,15e3,3e4,6e4,3e5,9e5,18e5,36e5,108e5,216e5,432e5,864e5,1728e5,6048e5,2592e6,7776e6,31536e6],Vs=[[Ie.second,1],[Ie.second,5],[Ie.second,15],[Ie.second,30],[Ie.minute,1],[Ie.minute,5],[Ie.minute,15],[Ie.minute,30],[Ie.hour,1],[Ie.hour,3],[Ie.hour,6],[Ie.hour,12],[Ie.day,1],[Ie.day,2],[Ie.week,1],[Ie.month,1],[Ie.month,3],[Ie.year,1]],Us=Os.multi([[".%L",function(t){return t.getMilliseconds()}],[":%S",function(t){return t.getSeconds()}],["%I:%M",function(t){return t.getMinutes()}],["%I %p",function(t){return t.getHours()}],["%a %d",function(t){return t.getDay()&&1!=t.getDate()}],["%b %d",function(t){return 1!=t.getDate()}],["%B",function(t){return t.getMonth()}],["%Y",Yr]]),qs={range:function(e,r,n){return t.range(Math.ceil(e/n)*n,+r,n).map(Ns)},floor:L,ceil:L};Vs.year=Ie.year,Ie.scale=function(){return Bs(t.scale.linear(),Vs,Us)};var Hs=Vs.map((function(t){return[t[0].utc,t[1]]})),Gs=Ds.multi([[".%L",function(t){return t.getUTCMilliseconds()}],[":%S",function(t){return t.getUTCSeconds()}],["%I:%M",function(t){return t.getUTCMinutes()}],["%I %p",function(t){return t.getUTCHours()}],["%a %d",function(t){return t.getUTCDay()&&1!=t.getUTCDate()}],["%b %d",function(t){return 1!=t.getUTCDate()}],["%B",function(t){return t.getUTCMonth()}],["%Y",Yr]]);function Ys(t){return JSON.parse(t.responseText)}function Ws(t){var e=a.createRange();return e.selectNode(a.body),e.createContextualFragment(t.responseText)}Hs.year=Ie.year.utc,Ie.scale.utc=function(){return Bs(t.scale.linear(),Hs,Gs)},t.text=ge((function(t){return t.responseText})),t.json=function(t,e){return me(t,"application/json",Ys,e)},t.html=function(t,e){return me(t,"text/html",Ws,e)},t.xml=ge((function(t){return t.responseXML})),"object"==typeof e&&e.exports?e.exports=t:this.d3=t}()},{}],165:[function(t,e,r){e.exports=function(){for(var t=0;t=2)return!1;t[r]=n}return!0})):.filter((function(t){for(var e=0;e<=s;++e){var r=v[t[e]];if(r<0)return!1;t[e]=r}return!0}));if(1&s)for(u=0;u<.length;++u){f=(b=_[u])[0];b[0]=b[1],b[1]=f}return _}},{“incremental-convex-hull”:412,uniq:549}],167:[function(t,e,r){“use strict”;e.exports=i;var n=(i.canvas=document.createElement(“canvas”)).getContext(“2d”),a=o([32,126]);function i(t,e){Array.isArray(t)&&(t=t.join(“, “));var r,i={},s=16,l=.05;e&&(2===e.length&&“number”==typeof e[0]?r=o(e):Array.isArray(e)?r=e:(e.o?r=o(e.o):e.pairs&&(r=e.pairs),e.fontSize&&(s=e.fontSize),null!=e.threshold&&(l=e.threshold))),r||(r=a),n.font=s+“px “+t;for(var c=0;cs*l){var p=(f-h)/s;i[u]=1e3*p}}return i}function o(t){for(var e=[],r=t[0];r<=t[1];r++)for(var n=String.fromCharCode®,a=t[0];a>>31},e.exports.exponent=function(t){return(e.exports.hi(t)<<1>>>21)-1023},e.exports.fraction=function(t){var r=e.exports.lo(t),n=e.exports.hi(t),a=1048575&n;return 2146435072&n&&(a+=1<<20),[r,a]},e.exports.denormalized=function(t){return!(2146435072&e.exports.hi(t))}}).call(this,t("buffer").Buffer)},{buffer:108}],169:[function(t,e,r){var n=t("abs-svg-path"),a=t("normalize-svg-path"),i={M:"moveTo",C:"bezierCurveTo"};e.exports=function(t,e){t.beginPath(),a(n(e)).forEach((function(e){var r=e[0],n=e.slice(1);t[i[r]].apply(t,n)})),t.closePath()}},{"abs-svg-path":63,"normalize-svg-path":450}],170:[function(t,e,r){e.exports=function(t){switch(t){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}}},{}],171:[function(t,e,r){"use strict";e.exports=function(t,e){switch("undefined"==typeof e&&(e=0),typeof t){case"number":if(t>0)return function(t,e){var r,n;for(r=new Array(t),n=0;n80r){n=l=t[0],s=c=t[1];for(var b=r;bl&&(l=u),p>c&&(c=p);d=0!==(d=Math.max(l-n,c-s))?1/d:0}return o(y,x,r,n,s,d),x}function a(t,e,r,n,a){var i,o;if(a===E(t,e,r,n)>0)for(i=e;i=e;i-=n)o=A(i,t[i],t[i+1],o);return o&&x(o,o.next)&&(M(o),o=o.next),o}function i(t,e){if(!t)return t;e||(e=t);var r,n=t;do{if(r=!1,n.steiner||!x(n,n.next)&&0!==y(n.prev,n,n.next))n=n.next;else{if(M(n),(n=e=n.prev)===n.next)break;r=!0}}while(r||n!==e);return e}function o(t,e,r,n,a,h,f){if(t){!f&&h&&function(t,e,r,n){var a=t;do{null===a.z&&(a.z=d(a.x,a.y,e,r,n)),a.prevZ=a.prev,a.nextZ=a.next,a=a.next}while(a!==t);a.prevZ.nextZ=null,a.prevZ=null,function(t){var e,r,n,a,i,o,s,l,c=1;do{for(r=t,t=null,i=null,o=0;r;){for(o++,n=r,s=0,e=0;e0||l>0&&n;)0!==s&&(0===l||!n||r.z<=n.z)?(a=r,r=r.nextZ,s–):(a=n,n=n.nextZ,l–),i?i.nextZ=a:t=a,a.prevZ=i,i=a;r=n}i.nextZ=null,c=2}while(o>1)}(a)}(t,n,a,h);for(var p,g,m=t;t.prev!==t.next;)if(p=t.prev,g=t.next,h?l(t,n,a,h):s(t))e.push(p.i/r),e.push(t.i/r),e.push(g.i/r),M(t),t=g.next,m=g.next;else if((t=g)===m){f?1===f?o(t=c(i(t),e,r),e,r,n,a,h,2):2===f&&u(t,e,r,n,a,h):o(i(t),e,r,n,a,h,1);break}}}function s(t){var e=t.prev,r=t,n=t.next;if(y(e,r,n)>=0)return!1;for(var a=t.next.next;a!==t.prev;){if(m(e.x,e.y,r.x,r.y,n.x,n.y,a.x,a.y)&&y(a.prev,a,a.next)>=0)return!1;a=a.next}return!0}function l(t,e,r,n){var a=t.prev,i=t,o=t.next;if(y(a,i,o)>=0)return!1;for(var s=a.xi.x?a.x>o.x?a.x:o.x:i.x>o.x?i.x:o.x,u=a.y>i.y?a.y>o.y?a.y:o.y:i.y>o.y?i.y:o.y,h=d(s,l,e,r,n),f=d(c,u,e,r,n),p=t.prevZ,g=t.nextZ;p&&p.z>=h&&g&&g.z<=f;){if(p!==t.prev&&p!==t.next&&m(a.x,a.y,i.x,i.y,o.x,o.y,p.x,p.y)&&y(p.prev,p,p.next)>=0)return!1;if(p=p.prevZ,g!==t.prev&&g!==t.next&&m(a.x,a.y,i.x,i.y,o.x,o.y,g.x,g.y)&&y(g.prev,g,g.next)>=0)return!1;g=g.nextZ}for(;p&&p.z>=h;){if(p!==t.prev&&p!==t.next&&m(a.x,a.y,i.x,i.y,o.x,o.y,p.x,p.y)&&y(p.prev,p,p.next)>=0)return!1;p=p.prevZ}for(;g&&g.z<=f;){if(g!==t.prev&&g!==t.next&&m(a.x,a.y,i.x,i.y,o.x,o.y,g.x,g.y)&&y(g.prev,g,g.next)>=0)return!1;g=g.nextZ}return!0}function c(t,e,r){var n=t;do{var a=n.prev,o=n.next.next;!x(a,o)&&b(a,n,n.next,o)&&T(a,o)&&T(o,a)&&(e.push(a.i/r),e.push(n.i/r),e.push(o.i/r),M(n),M(n.next),n=t=o),n=n.next}while(n!==t);return i(n)}function u(t,e,r,n,a,s){var l=t;do{for(var c=l.next.next;c!==l.prev;){if(l.i!==c.i&&v(l,c)){var u=k(l,c);return l=i(l,l.next),u=i(u,u.next),o(l,e,r,n,a,s),void o(u,e,r,n,a,s)}c=c.next}l=l.next}while(l!==t)}function h(t,e){return t.x-e.x}function f(t,e){if(e=function(t,e){var r,n=e,a=t.x,i=t.y,o=-10;do{if(i<=n.y&&i>=n.next.y&&n.next.y!==n.y){var s=n.x+(i-n.y)(n.next.x-n.x)/(n.next.y-n.y);if(s<=a&&s>o){if(o=s,s===a){if(i===n.y)return n;if(i===n.next.y)return n.next}r=n.x=n.x&&n.x>=u&&a!==n.x&&m(ir.x||n.x===r.x&&p(r,n)))&&(r=n,f=l)),n=n.next}while(n!==c);return r}(t,e)){var r=k(e,t);i(e,e.next),i(r,r.next)}}function p(t,e){return y(t.prev,t,e.prev)<0&&y(e.next,t,t.next)<0}function d(t,e,r,n,a){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767(t-r)a)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767(e-n)a)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function g(t){var e=t,r=t;do{(e.x<r.x||e.x===r.x&&e.y<r.y)&&(r=e),e=e.next}while(e!==t);return r}function m(t,e,r,n,a,i,o,s){return(a-o)(e-s)-(t-o)(i-s)>=0&&(t-o)(n-s)-(r-o)(e-s)>=0&&(r-o)(i-s)-(a-o)(n-s)>=0}function v(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!function(t,e){var r=t;do{if(r.i!==t.i&&r.next.i!==t.i&&r.i!==e.i&&r.next.i!==e.i&&b(r,r.next,t,e))return!0;r=r.next}while(r!==t);return!1}(t,e)&&(T(t,e)&&T(e,t)&&function(t,e){var r=t,n=!1,a=(t.x+e.x)/2,i=(t.y+e.y)/2;do{r.y>i!=r.next.y>i&&r.next.y!==r.y&&a<(r.next.x-r.x)(i-r.y)/(r.next.y-r.y)+r.x&&(n=!n),r=r.next}while(r!==t);return n}(t,e)&&(y(t.prev,t,e.prev)||y(t,e.prev,e))||x(t,e)&&y(t.prev,t,t.next)>0&&y(e.prev,e,e.next)>0)}function y(t,e,r){return(e.y-t.y)(r.x-e.x)-(e.x-t.x)(r.y-e.y)}function x(t,e){return t.x===e.x&&t.y===e.y}function b(t,e,r,n){var a=w(y(t,e,r)),i=w(y(t,e,n)),o=w(y(r,n,t)),s=w(y(r,n,e));return a!==i&&o!==s||(!(0!==a||!(t,r,e))||(!(0!==i||!(t,n,e))||(!(0!==o||!(r,t,n))||!(0!==s||!(r,e,n)))))}function (t,e,r){return e.x<=Math.max(t.x,r.x)&&e.x>=Math.min(t.x,r.x)&&e.y<=Math.max(t.y,r.y)&&e.y>=Math.min(t.y,r.y)}function w(t){return t>0?1:t<0?-1:0}function T(t,e){return y(t.prev,t,t.next)<0?y(t,e,t.next)>=0&&y(t,t.prev,e)>=0:y(t,e,t.prev)<0||y(t,t.next,e)<0}function k(t,e){var r=new S(t.i,t.x,t.y),n=new S(e.i,e.x,e.y),a=t.next,i=e.prev;return t.next=e,e.prev=t,r.next=a,a.prev=r,n.next=r,r.prev=n,i.next=n,n.prev=i,n}function A(t,e,r,n){var a=new S(t,e,r);return n?(a.next=n.next,a.prev=n,n.next.prev=a,n.next=a):(a.prev=a,a.next=a),a}function M(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function S(t,e,r){this.i=t,this.x=e,this.y=r,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function E(t,e,r,n){for(var a=0,i=e,o=r-n;i0&&(n+=t[a-1].length,r.holes.push(n))}return r}},{}],173:[function(t,e,r){“use strict”;e.exports=function(t,e){var r=t.length;if(“number”!=typeof e){e=0;for(var a=0;a=e}))}(e);for(var r,a=n(t).components.filter((function(t){return t.length>1})),i=10,o=0;o<a.length;o++)for(var s=0;s<a[o].length;s++)a[o][s]<i&&(i=a[o][s],r=o);var l=a[r];return!!l&&{leastVertex:i,adjList:t.map((function(t,e){return-1===l.indexOf(e)?[]:t.filter((function(t){return-1!==l.indexOf(t)}))}))}}r=0;for(var f=t.length;r<f;){var p=h®;if(r=p.leastVertex,l=p.adjList){for(var d=0;d<l.length;d++)for(var g=0;g<l[d].length;g++){var m=l[d][g];o[+m]=!1,s[m]={}}c®,r+=1}else r=f}return e?void 0:a}},{“strongly-connected-components”:521}],175:[function(t,e,r){“use strict”;var n=t(“../../object/valid-value”);e.exports=function(){return n(this).length=0,this}},{“../../object/valid-value”:206}],176:[function(t,e,r){“use strict”;e.exports=t(“./is-implemented”)()?Array.from:t(“./shim”)},{“./is-implemented”:177,“./shim”:178}],177:[function(t,e,r){“use strict”;e.exports=function(){var t,e,r=Array.from;return”function”==typeof r&&(e=r(t=[“raz”,“dwa”]),Boolean(e&&e!==t&&“dwa”===e[1]))}},{}],178:[function(t,e,r){“use strict”;var n=t(“es6-symbol”).iterator,a=t(“../../function/is-arguments”),i=t(“../../function/is-function”),o=t(“../../number/to-pos-integer”),s=t(“../../object/valid-callable”),l=t(“../../object/valid-value”),c=t(“../../object/is-value”),u=t(“../../string/is-string”),h=Array.isArray,f=Function.prototype.call,p={configurable:!0,enumerable:!0,writable:!0,value:null},d=Object.defineProperty;e.exports=function(t){var e,r,g,m,v,y,x,b,,w,T=arguments[1],k=arguments[2];if(t=Object(l(t)),c(T)&&s(T),this&&this!==Array&&i(this))e=this;else{if(!T){if(a(t))return 1!==(v=t.length)?Array.apply(null,t):((m=new Array(1))[0]=t[0],m);if(h(t)){for(m=new Array(v=t.length),r=0;r=55296&&y<=56319&&(w+=t[++r]),w=T?f.call(T,k,w,g):w,e?(p.value=w,d(m,g,p)):m[g]=w,++g;v=g}if(void 0===v)for(v=o(t.length),e&&(m=new e(v)),r=0;r0?1:-1}},{}],185:[function(t,e,r){“use strict”;var n=t(“../math/sign”),a=Math.abs,i=Math.floor;e.exports=function(t){return isNaN(t)?0:0!==(t=Number(t))&&isFinite(t)?n(t)i(a(t)):t}},{“../math/sign”:182}],186:[function(t,e,r){“use strict”;var n=t(“./to-integer”),a=Math.max;e.exports=function(t){return a(0,n(t))}},{“./to-integer”:185}],187:[function(t,e,r){“use strict”;var n=t(“./valid-callable”),a=t(“./valid-value”),i=Function.prototype.bind,o=Function.prototype.call,s=Object.keys,l=Object.prototype.propertyIsEnumerable;e.exports=function(t,e){return function(r,c){var u,h=arguments[2],f=arguments[3];return r=Object(a®),n©,u=s®,f&&u.sort(“function”==typeof f?i.call(f,r):void 0),“function”!=typeof t&&(t=u[t]),o.call(t,u,(function(t,n){return l.call(r,t)?o.call(c,h,r[t],t,r,n):e}))}}},{“./valid-callable”:204,“./valid-value”:206}],188:[function(t,e,r){“use strict”;e.exports=t(“./is-implemented”)()?Object.assign:t(“./shim”)},{“./is-implemented”:189,“./shim”:190}],189:[function(t,e,r){“use strict”;e.exports=function(){var t,e=Object.assign;return”function”==typeof e&&(e(t={foo:“raz”},{bar:“dwa”},{trzy:“trzy”}),t.foo+t.bar+t.trzy===“razdwatrzy”)}},{}],190:[function(t,e,r){“use strict”;var n=t(“../keys”),a=t(“../valid-value”),i=Math.max;e.exports=function(t,e){var r,o,s,l=i(arguments.length,2);for(t=Object(a(t)),s=function(n){try{t[n]=e[n]}catch(t){r||(r=t)}},o=1;o-1}},{}],210:[function(t,e,r){“use strict”;var n=Object.prototype.toString,a=n.call(“”);e.exports=function(t){return”string”==typeof t||t&&“object”==typeof t&&(t instanceof String||n.call(t)===a)||!1}},{}],211:[function(t,e,r){“use strict”;var n=Object.create(null),a=Math.random;e.exports=function(){var t;do{t=a().toString(36).slice(2)}while(n[t]);return t}},{}],212:[function(t,e,r){“use strict”;var n,a=t(“es5-ext/object/set-prototype-of”),i=t(“es5-ext/string/#/contains”),o=t(“d”),s=t(“es6-symbol”),l=t(“./”),c=Object.defineProperty;n=e.exports=function(t,e){if(!(this instanceof n))throw new TypeError(“Constructor requires ‘new’”);l.call(this,t),e=e?i.call(e,“key+value”)?“key+value”:i.call(e,“key”)?“key”:“value”:“value”,c(this,”kind”,o(“”,e))},a&&a(n,l),delete n.prototype.constructor,n.prototype=Object.create(l.prototype,{_resolve:o((function(t){return”value”===this.kind?this.list[t]:“key+value”===this.kind?[t,this.list[t]]:t}))}),c(n.prototype,s.toStringTag,o(“c”,“Array Iterator”))},{“./”:215,d:152,“es5-ext/object/set-prototype-of”:201,“es5-ext/string/#/contains”:207,“es6-symbol”:220}],213:[function(t,e,r){“use strict”;var n=t(“es5-ext/function/is-arguments”),a=t(“es5-ext/object/valid-callable”),i=t(“es5-ext/string/is-string”),o=t(“./get”),s=Array.isArray,l=Function.prototype.call,c=Array.prototype.some;e.exports=function(t,e){var r,u,h,f,p,d,g,m,v=arguments[2];if(s(t)||n(t)?r=“array”:i(t)?r=“string”:t=o(t),a(e),h=function(){f=!0},“array”!==r)if(“string”!==r)for(u=t.next();!u.done;){if(l.call(e,v,u.value,h),f)return;u=t.next()}else for(d=t.length,p=0;p=55296&&m<=56319&&(g+=t[++p]),l.call(e,v,g,h),!f);++p);else c.call(t,(function(t){return l.call(e,v,t,h),f}))}},{“./get”:214,“es5-ext/function/is-arguments”:179,“es5-ext/object/valid-callable”:204,“es5-ext/string/is-string”:210}],214:[function(t,e,r){“use strict”;var n=t(“es5-ext/function/is-arguments”),a=t(“es5-ext/string/is-string”),i=t(“./array”),o=t(“./string”),s=t(“./valid-iterable”),l=t(“es6-symbol”).iterator;e.exports=function(t){return”function”==typeof s(t)[l]?t[l]():n(t)?new i(t):a(t)?new o(t):new i(t)}},{“./array”:212,“./string”:217,“./valid-iterable”:218,“es5-ext/function/is-arguments”:179,“es5-ext/string/is-string”:210,“es6-symbol”:220}],215:[function(t,e,r){“use strict”;var n,a=t(“es5-ext/array/#/clear”),i=t(“es5-ext/object/assign”),o=t(“es5-ext/object/valid-callable”),s=t(“es5-ext/object/valid-value”),l=t(“d”),c=t(“d/auto-bind”),u=t(“es6-symbol”),h=Object.defineProperty,f=Object.defineProperties;e.exports=n=function(t,e){if(!(this instanceof n))throw new TypeError(“Constructor requires ‘new’”);f(this,{list:l(“w”,s(t)),context:l(“w”,e),nextIndex:l(“w”,0)}),e&&(o(e.on),e.on(”_add”,this._onAdd),e.on(”_delete”,this._onDelete),e.on(”_clear”,this._onClear))},delete n.prototype.constructor,f(n.prototype,i({_next:l((function(){var t;if(this.list)return this.redo&&void 0!==(t=this.redo.shift())?t:this.nextIndex=this.nextIndex||(++this.nextIndex,this.redo?(this.redo.forEach((function(e,r){e>=t&&(this.redo[r]=++e)}),this),this.redo.push(t)):h(this,”redo”,l(“c”,[t])))})),_onDelete:l((function(t){var e;t>=this.nextIndex||(–this.nextIndex,this.redo&&(-1!==(e=this.redo.indexOf(t))&&this.redo.splice(e,1),this.redo.forEach((function(e,r){e>t&&(this.redo[r]=–e)}),this)))})),_onClear:l((function(){this.redo&&a.call(this.redo),this.nextIndex=0}))}))),h(n.prototype,u.iterator,l((function(){return this})))},{d:152,“d/auto-bind”:151,“es5-ext/array/#/clear”:175,“es5-ext/object/assign”:188,“es5-ext/object/valid-callable”:204,“es5-ext/object/valid-value”:206,“es6-symbol”:220}],216:[function(t,e,r){“use strict”;var n=t(“es5-ext/function/is-arguments”),a=t(“es5-ext/object/is-value”),i=t(“es5-ext/string/is-string”),o=t(“es6-symbol”).iterator,s=Array.isArray;e.exports=function(t){return!!a(t)&&(!!s(t)||(!!i(t)||(!!n(t)||“function”==typeof t[o])))}},{“es5-ext/function/is-arguments”:179,“es5-ext/object/is-value”:195,“es5-ext/string/is-string”:210,“es6-symbol”:220}],217:[function(t,e,r){“use strict”;var n,a=t(“es5-ext/object/set-prototype-of”),i=t(“d”),o=t(“es6-symbol”),s=t(“./”),l=Object.defineProperty;n=e.exports=function(t){if(!(this instanceof n))throw new TypeError(“Constructor requires ‘new’”);t=String(t),s.call(this,t),l(this,”length”,i(“”,t.length))},a&&a(n,s),delete n.prototype.constructor,n.prototype=Object.create(s.prototype,{_next:i((function(){if(this.list)return this.nextIndex=55296&&e<=56319?r+this.list[this.nextIndex++]:r}))}),l(n.prototype,o.toStringTag,i(“c”,“String Iterator”))},{“./”:215,d:152,“es5-ext/object/set-prototype-of”:201,“es6-symbol”:220}],218:[function(t,e,r){“use strict”;var n=t(“./is-iterable”);e.exports=function(t){if(!n(t))throw new TypeError(t+” is not iterable”);return t}},{“./is-iterable”:216}],219:[function(t,e,r){(function(n,a){ /!
    • @overview es6-promise - a tiny implementation of Promises/A+.
    • @copyright Copyright © 2014 Yehuda Katz, Tom Dale, Stefan Penner and contributors (Conversion to ES6 API by Jake Archibald)
    • @license Licensed under MIT license
    • See https://raw.githubusercontent.com/stefanpenner/es6-promise/master/LICENSE
    • @version v4.2.8+1e68dce6 */ !function(t,n){“object”==typeof r&&“undefined”!=typeof e?e.exports=n():t.ES6Promise=n()}(this,(function(){“use strict”;function e(t){return”function”==typeof t}var r=Array.isArray?Array.isArray:function(t){return”[object Array]“===Object.prototype.toString.call(t)},i=0,o=void 0,s=void 0,l=function(t,e){g[i]=t,g[i+1]=e,2===(i+=2)&&(s?s(m):())};var c=“undefined”!=typeof window?window:void 0,u=c||{},h=u.MutationObserver||u.WebKitMutationObserver,f=“undefined”==typeof self&&“undefined”!=typeof n&&”[object process]“==={}.toString.call(n),p=“undefined”!=typeof Uint8ClampedArray&&“undefined”!=typeof importScripts&&“undefined”!=typeof MessageChannel;function d(){var t=setTimeout;return function(){return t(m,1)}}var g=new Array(1e3);function m(){for(var t=0;t<i;t+=2){(0,g[t])(g[t+1]),g[t]=void 0,g[t+1]=void 0}i=0}var v,y,x,b,=void 0;function w(t,e){var r=this,n=new this.constructor(A);void 0===n[k]&&D(n);var a=r._state;if(a){var i=arguments[a-1];l((function(){return z(a,n,i,r.result)}))}else P(r,n,t,e);return n}function T(t){if(t&&“object”==typeof t&&t.constructor===this)return t;var e=new this(A);return S(e,t),e}f?=function(){return n.nextTick(m)}:h?(y=0,x=new h(m),b=document.createTextNode(“”),x.observe(b,{characterData:!0}),=function(){b.data=y=++y%2}):p?((v=new MessageChannel).port1.onmessage=m,=function(){return v.port2.postMessage(0)}):_=void 0===c&&“function”==typeof t?function(){try{var t=Function(“return this”)().require(“vertx”);return”undefined”!=typeof(o=t.runOnLoop||t.runOnContext)?function(){o(m)}:d()}catch(t){return d()}}():d();var k=Math.random().toString(36).substring(2);function A(){}function M(t,r,n){r.constructor===t.constructor&&n===w&&r.constructor.resolve===T?function(t,e){1===e._state?C(t,e._result):2===e._state?L(t,e._result):P(e,void 0,(function(e){return S(t,e)}),(function(e){return L(t,e)}))}(t,r):void 0===n?C(t,r):e(n)?function(t,e,r){l((function(t){var n=!1,a=function(t,e,r,n){try{t.call(e,r,n)}catch(t){return t}}(r,e,(function®{n||(n=!0,e!==r?S(t,r):C(t,r))}),(function(e){n||(n=!0,L(t,e))}),t._label);!n&&a&&(n=!0,L(t,a))}),t)}(t,r,n):C(t,r)}function S(t,e){if(t===e)L(t,new TypeError(“You cannot resolve a promise with itself”));else if(a=typeof(n=e),null===n||“object”!==a&&“function”!==a)C(t,e);else{var r=void 0;try{r=e.then}catch(e){return void L(t,e)}M(t,e,r)}var n,a}function E(t){t._onerror&&t._onerror(t._result),I(t)}function C(t,e){void 0===t._state&&(t._result=e,t._state=1,0!==t._subscribers.length&&l(I,t))}function L(t,e){void 0===t._state&&(t._state=2,t._result=e,l(E,t))}function P(t,e,r,n){var a=t._subscribers,i=a.length;t._onerror=null,a[i]=e,a[i+1]=r,a[i+2]=n,0===i&&t._state&&l(I,t)}function I(t){var e=t._subscribers,r=t._state;if(0!==e.length){for(var n=void 0,a=void 0,i=t._result,o=0;o=r-1){f=l.length-1;var d=t-e[r-1];for(p=0;p=r-1)for(var u=s.length-1,h=(e[r-1],0);h=0;–r)if(t[–e])return!1;return!0},s.jump=function(t){var e=this.lastT(),r=this.dimension;if(!(t0;–h)n.push(i(l[h-1],c[h-1],arguments[h])),a.push(0)}},s.push=function(t){var e=this.lastT(),r=this.dimension;if(!(t1e-6?1/s:0;this._time.push(t);for(var f=r;f>0;–f){var p=i(c[f-1],u[f-1],arguments[f]);n.push(p),a.push((p-n[o++])*h)}}},s.set=function(t){var e=this.dimension;if(!(t0;–l)r.push(i(o[l-1],s[l-1],arguments[l])),n.push(0)}},s.move=function(t){var e=this.lastT(),r=this.dimension;if(!(t<=e||arguments.length!==r+1)){var n=this._state,a=this._velocity,o=n.length-this.dimension,s=this.bounds,l=s[0],c=s[1],u=t-e,h=u>1e-6?1/u:0;this._time.push(t);for(var f=r;f>0;–f){var p=arguments[f];n.push(i(l[f-1],c[f-1],n[o++]+p)),a.push(p*h)}}},s.idle=function(t){var e=this.lastT();if(!(t=0;–h)n.push(i(l[h],c[h],n[o]+u*a[o])),a.push(0),o+=1}}},{“binary-search-bounds”:238,“cubic-hermite”:147}],238:[function(t,e,r){“use strict”;function n(t,e,r,n,a,i){var o=[“function “,t,”(a,l,h,“,n.join(”,“),”){“,i?””:“var i=”,r?“l-1”:“h+1”,“;while(l<=h){var m=(l+h)>>>1,x=a”,a?“.get(m)”:”[m]“];return i?e.indexOf(“c”)<0?o.push(";if(x===y){return m}else if(x<=y){"):o.push(";var p=c(x,y);if(p===0){return m}else if(p<=0){"):o.push(";if(",e,"){i=m;"),r?o.push("l=m+1}else{h=m-1}"):o.push("h=m-1}else{l=m+1}"),o.push("}"),i?o.push("return -1};"):o.push("return i};"),o.join("")}function a(t,e,r,a){return new Function([n("A","x"+t+"y",e,["y"],!1,a),n("B","x"+t+"y",e,["y"],!0,a),n("P","c(x,y)"+t+"0",e,["y","c"],!1,a),n("Q","c(x,y)"+t+"0",e,["y","c"],!0,a),"function dispatchBsearch",r,"(a,y,c,l,h){if(a.shape){if(typeof(c)==='function'){return Q(a,(l===undefined)?0:l|0,(h===undefined)?a.shape[0]-1:h|0,y,c)}else{return B(a,(c===undefined)?0:c|0,(l===undefined)?a.shape[0]-1:l|0,y)}}else{if(typeof(c)==='function'){return P(a,(l===undefined)?0:l|0,(h===undefined)?a.length-1:h|0,y,c)}else{return A(a,(c===undefined)?0:c|0,(l===undefined)?a.length-1:l|0,y)}}}return dispatchBsearch",r].join(""))()}e.exports={ge:a(">=“,!1,“GE”),gt:a(“>”,!1,“GT”),lt:a(”<“,!0,“LT”),le:a(”<=“,!0,“LE”),eq:a(“-”,!0,“EQ”,!0)}},{}],239:[function(t,e,r){var n=t(“dtype”);e.exports=function(t,e,r){if(!t)throw new TypeError(“must specify data as first parameter”);if(r=0|+(r||0),Array.isArray(t)&&t[0]&&“number”==typeof t[0][0]){var a,i,o,s,l=t[0].length,c=t.length*l;e&&“string”!=typeof e||(e=new(n(e||“float32”))(c+r));var u=e.length-r;if(c!==u)throw new Error(“source length “+c+” (“+l+“x”+t.length+“) does not match destination length “+u);for(a=0,o=r;ae[0]-o[0]/2&&(f=o[0]/2,p+=o[1]);return r}},{“css-font/stringify”:144}],241:[function(t,e,r){“use strict”;function n(t,e){e||(e={}),(“string”==typeof t||Array.isArray(t))&&(e.family=t);var r=Array.isArray(e.family)?e.family.join(“, “):e.family;if(!r)throw Error(”family must be defined”);var s=e.size||e.fontSize||e.em||48,l=e.weight||e.fontWeight||“”,c=(t=[e.style||e.fontStyle||“”,l,s].join(” “)+“px “+r,e.origin||“top”);if(n.cache[r]&&s<=n.cache[r].em)return a(n.cache[r],c);var u=e.canvas||n.canvas,h=u.getContext(“2d”),f={upper:void 0!==e.upper?e.upper:“H”,lower:void 0!==e.lower?e.lower:“x”,descent:void 0!==e.descent?e.descent:“p”,ascent:void 0!==e.ascent?e.ascent:“h”,tittle:void 0!==e.tittle?e.tittle:“i”,overshoot:void 0!==e.overshoot?e.overshoot:“O”},p=Math.ceil(1.5*s);u.height=p,u.width=.5*p,h.font=t;var d={top:0};h.clearRect(0,0,p,p),h.textBaseline=“top”,h.fillStyle=“black”,h.fillText(“H”,0,0);var g=i(h.getImageData(0,0,p,p));h.clearRect(0,0,p,p),h.textBaseline=“bottom”,h.fillText(“H”,0,p);var m=i(h.getImageData(0,0,p,p));d.lineHeight=d.bottom=p-m+g,h.clearRect(0,0,p,p),h.textBaseline=“alphabetic”,h.fillText(“H”,0,p);var v=p-i(h.getImageData(0,0,p,p))-1+g;d.baseline=d.alphabetic=v,h.clearRect(0,0,p,p),h.textBaseline=“middle”,h.fillText(“H”,0,.5*p);var y=i(h.getImageData(0,0,p,p));d.median=d.middle=p-y-1+g-.5*p,h.clearRect(0,0,p,p),h.textBaseline=“hanging”,h.fillText(“H”,0,.5*p);var x=i(h.getImageData(0,0,p,p));d.hanging=p-x-1+g-.5p,h.clearRect(0,0,p,p),h.textBaseline=“ideographic”,h.fillText(“H”,0,p);var b=i(h.getImageData(0,0,p,p));if(d.ideographic=p-b-1+g,f.upper&&(h.clearRect(0,0,p,p),h.textBaseline=“top”,h.fillText(f.upper,0,0),d.upper=i(h.getImageData(0,0,p,p)),d.capHeight=d.baseline-d.upper),f.lower&&(h.clearRect(0,0,p,p),h.textBaseline=“top”,h.fillText(f.lower,0,0),d.lower=i(h.getImageData(0,0,p,p)),d.xHeight=d.baseline-d.lower),f.tittle&&(h.clearRect(0,0,p,p),h.textBaseline=“top”,h.fillText(f.tittle,0,0),d.tittle=i(h.getImageData(0,0,p,p))),f.ascent&&(h.clearRect(0,0,p,p),h.textBaseline=“top”,h.fillText(f.ascent,0,0),d.ascent=i(h.getImageData(0,0,p,p))),f.descent&&(h.clearRect(0,0,p,p),h.textBaseline=“top”,h.fillText(f.descent,0,0),d.descent=o(h.getImageData(0,0,p,p))),f.overshoot){h.clearRect(0,0,p,p),h.textBaseline=“top”,h.fillText(f.overshoot,0,0);var =o(h.getImageData(0,0,p,p));d.overshoot=-v}for(var w in d)d[w]/=s;return d.em=s,n.cache[r]=d,a(d,c)}function a(t,e){var r={};for(var n in”string”==typeof e&&(e=t[e]),t)“em”!==n&&(r[n]=t[n]-e);return r}function i(t){for(var e=t.height,r=t.data,n=3;n<r.length;n+=4)if(0!==r[n])return Math.floor(.25(n-3)/e)}function o(t){for(var e=t.height,r=t.data,n=r.length-1;n>0;n-=4)if(0!==r[n])return Math.floor(.25*(n-3)/e)}e.exports=n,n.canvas=document.createElement(“canvas”),n.cache={}},{}],242:[function(t,e,r){“use strict”;e.exports=function(t){return new s(t||g,null)};function n(t,e,r,n,a,i){this._color=t,this.key=e,this.value=r,this.left=n,this.right=a,this._count=i}function a(t){return new n(t._color,t.key,t.value,t.left,t.right,t._count)}function i(t,e){return new n(t,e.key,e.value,e.left,e.right,e._count)}function o(t){t._count=1+(t.left?t.left._count:0)+(t.right?t.right._count:0)}function s(t,e){this._compare=t,this.root=e}var l=s.prototype;function c(t,e){var r;if(e.left&&(r=c(t,e.left)))return r;return(r=t(e.key,e.value))||(e.right?c(t,e.right):void 0)}function u(t,e,r,n){if(e(t,n.key)<=0){var a;if(n.left)if(a=u(t,e,r,n.left))return a;if(a=r(n.key,n.value))return a}if(n.right)return u(t,e,r,n.right)}function h(t,e,r,n,a){var i,o=r(t,a.key),s=r(e,a.key);if(o<=0){if(a.left&&(i=h(t,e,r,n,a.left)))return i;if(s>0&&(i=n(a.key,a.value)))return i}if(s>0&&a.right)return h(t,e,r,n,a.right)}function f(t,e){this.tree=t,this._stack=e}Object.defineProperty(l,“keys”,{get:function(){var t=[];return this.forEach((function(e,r){t.push(e)})),t}}),Object.defineProperty(l,“values”,{get:function(){var t=[];return this.forEach((function(e,r){t.push®})),t}}),Object.defineProperty(l,“length”,{get:function(){return this.root?this.root._count:0}}),l.insert=function(t,e){for(var r=this._compare,a=this.root,l=[],c=[];a;){var u=r(t,a.key);l.push(a),c.push(u),a=u<=0?a.left:a.right}l.push(new n(0,t,e,null,null,1));for(var h=l.length-2;h>=0;–h){a=l[h];c[h]<=0?l[h]=new n(a._color,a.key,a.value,l[h+1],a.right,a._count+1):l[h]=new n(a._color,a.key,a.value,a.left,l[h+1],a._count+1)}for(h=l.length-1;h>1;–h){var f=l[h-1];a=l[h];if(1===f._color||1===a._color)break;var p=l[h-2];if(p.left===f)if(f.left===a){if(!(d=p.right)||0!==d._color){if(p._color=0,p.left=f.right,f._color=1,f.right=p,l[h-2]=f,l[h-1]=a,o(p),o(f),h>=3)(g=l[h-3]).left===p?g.left=f:g.right=f;break}f._color=1,p.right=i(1,d),p._color=0,h-=1}else{if(!(d=p.right)||0!==d._color){if(f.right=a.left,p._color=0,p.left=a.right,a._color=1,a.left=f,a.right=p,l[h-2]=a,l[h-1]=f,o(p),o(f),o(a),h>=3)(g=l[h-3]).left===p?g.left=a:g.right=a;break}f._color=1,p.right=i(1,d),p._color=0,h-=1}else if(f.right===a){if(!(d=p.left)||0!==d._color){if(p._color=0,p.right=f.left,f._color=1,f.left=p,l[h-2]=f,l[h-1]=a,o(p),o(f),h>=3)(g=l[h-3]).right===p?g.right=f:g.left=f;break}f._color=1,p.left=i(1,d),p._color=0,h-=1}else{var d;if(!(d=p.left)||0!==d._color){var g;if(f.left=a.right,p._color=0,p.right=a.left,a._color=1,a.right=f,a.left=p,l[h-2]=a,l[h-1]=f,o(p),o(f),o(a),h>=3)(g=l[h-3]).right===p?g.right=a:g.left=a;break}f._color=1,p.left=i(1,d),p._color=0,h-=1}}return l[0]._color=1,new s(r,l[0])},l.forEach=function(t,e,r){if(this.root)switch(arguments.length){case 1:return c(t,this.root);case 2:return u(e,this._compare,t,this.root);case 3:if(this._compare(e,r)>=0)return;return h(e,r,this._compare,t,this.root)}},Object.defineProperty(l,“begin”,{get:function(){for(var t=[],e=this.root;e;)t.push(e),e=e.left;return new f(this,t)}}),Object.defineProperty(l,“end”,{get:function(){for(var t=[],e=this.root;e;)t.push(e),e=e.right;return new f(this,t)}}),l.at=function(t){if(t<0)return new f(this,[]);for(var e=this.root,r=[];;){if(r.push(e),e.left){if(t=e.right._count)break;e=e.right}return new f(this,[])},l.ge=function(t){for(var e=this._compare,r=this.root,n=[],a=0;r;){var i=e(t,r.key);n.push®,i<=0&&(a=n.length),r=i<=0?r.left:r.right}return n.length=a,new f(this,n)},l.gt=function(t){for(var e=this._compare,r=this.root,n=[],a=0;r;){var i=e(t,r.key);n.push®,i<0&&(a=n.length),r=i<0?r.left:r.right}return n.length=a,new f(this,n)},l.lt=function(t){for(var e=this._compare,r=this.root,n=[],a=0;r;){var i=e(t,r.key);n.push(r),i>0&&(a=n.length),r=i<=0?r.left:r.right}return n.length=a,new f(this,n)},l.le=function(t){for(var e=this._compare,r=this.root,n=[],a=0;r;){var i=e(t,r.key);n.push®,i>=0&&(a=n.length),r=i<0?r.left:r.right}return n.length=a,new f(this,n)},l.find=function(t){for(var e=this._compare,r=this.root,n=[];r;){var a=e(t,r.key);if(n.push(r),0===a)return new f(this,n);r=a<=0?r.left:r.right}return new f(this,[])},l.remove=function(t){var e=this.find(t);return e?e.remove():this},l.get=function(t){for(var e=this._compare,r=this.root;r;){var n=e(t,r.key);if(0===n)return r.value;r=n<=0?r.left:r.right}};var p=f.prototype;function d(t,e){t.key=e.key,t.value=e.value,t.left=e.left,t.right=e.right,t._color=e._color,t._count=e._count}function g(t,e){return te?1:0}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 f(this.tree,this._stack.slice())},p.remove=function(){var t=this._stack;if(0===t.length)return this.tree;var e=new Array(t.length),r=t[t.length-1];e[e.length-1]=new n(r._color,r.key,r.value,r.left,r.right,r._count);for(var l=t.length-2;l>=0;–l){(r=t[l]).left===t[l+1]?e[l]=new n(r._color,r.key,r.value,e[l+1],r.right,r._count):e[l]=new n(r._color,r.key,r.value,r.left,e[l+1],r._count)}if((r=e[e.length-1]).left&&r.right){var c=e.length;for(r=r.left;r.right;)e.push®,r=r.right;var u=e[c-1];e.push(new n(r._color,u.key,u.value,r.left,r.right,r._count)),e[c-1].key=r.key,e[c-1].value=r.value;for(l=e.length-2;l>=c;–l)r=e[l],e[l]=new n(r._color,r.key,r.value,r.left,e[l+1],r._count);e[c-1].left=e[c]}if(0===(r=e[e.length-1])._color){var h=e[e.length-2];h.left===r?h.left=null:h.right===r&&(h.right=null),e.pop();for(l=0;l=0;–l){if(e=t[l],0===l)return void(e._color=1);if((r=t[l-1]).left===e){if((n=r.right).right&&0===n.right._color){if(s=(n=r.right=a(n)).right=a(n.right),r.right=n.left,n.left=r,n.right=s,n._color=r._color,e._color=1,r._color=1,s._color=1,o®,o(n),l>1)(c=t[l-2]).left===r?c.left=n:c.right=n;return void(t[l-1]=n)}if(n.left&&0===n.left._color){if(s=(n=r.right=a(n)).left=a(n.left),r.right=s.left,n.left=s.right,s.left=r,s.right=n,s._color=r._color,r._color=1,n._color=1,e._color=1,o®,o(n),o(s),l>1)(c=t[l-2]).left===r?c.left=s:c.right=s;return void(t[l-1]=s)}if(1===n._color){if(0===r._color)return r._color=1,void(r.right=i(0,n));r.right=i(0,n);continue}n=a(n),r.right=n.left,n.left=r,n._color=r._color,r._color=0,o®,o(n),l>1&&((c=t[l-2]).left===r?c.left=n:c.right=n),t[l-1]=n,t[l]=r,l+11)(c=t[l-2]).right===r?c.right=n:c.left=n;return void(t[l-1]=n)}if(n.right&&0===n.right._color){if(s=(n=r.left=a(n)).right=a(n.right),r.left=s.right,n.right=s.left,s.right=r,s.left=n,s._color=r._color,r._color=1,n._color=1,e._color=1,o®,o(n),o(s),l>1)(c=t[l-2]).right===r?c.right=s:c.left=s;return void(t[l-1]=s)}if(1===n._color){if(0===r._color)return r._color=1,void(r.left=i(0,n));r.left=i(0,n);continue}var c;n=a(n),r.left=n.right,n.right=r,n._color=r._color,r._color=0,o®,o(n),l>1&&((c=t[l-2]).right===r?c.right=n:c.left=n),t[l-1]=n,t[l]=r,l+10)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 t=0,e=this._stack;if(0===e.length){var r=this.tree.root;return r?r._count:0}e[e.length-1].left&&(t=e[e.length-1].left._count);for(var n=e.length-2;n>=0;–n)e[n+1]===e[n].right&&(++t,e[n].left&&(t+=e[n].left._count));return t},enumerable:!0}),p.next=function(){var t=this._stack;if(0!==t.length){var e=t[t.length-1];if(e.right)for(e=e.right;e;)t.push(e),e=e.left;else for(t.pop();t.length>0&&t[t.length-1].right===e;)e=t[t.length-1],t.pop()}},Object.defineProperty(p,“hasNext”,{get:function(){var t=this._stack;if(0===t.length)return!1;if(t[t.length-1].right)return!0;for(var e=t.length-1;e>0;–e)if(t[e-1].left===t[e])return!0;return!1}}),p.update=function(t){var e=this._stack;if(0===e.length)throw new Error(“Can’t update empty node!”);var r=new Array(e.length),a=e[e.length-1];r[r.length-1]=new n(a._color,a.key,t,a.left,a.right,a._count);for(var i=e.length-2;i>=0;–i)(a=e[i]).left===e[i+1]?r[i]=new n(a._color,a.key,a.value,r[i+1],a.right,a._count):r[i]=new n(a._color,a.key,a.value,a.left,r[i+1],a._count);return new s(this.tree._compare,r[0])},p.prev=function(){var t=this._stack;if(0!==t.length){var e=t[t.length-1];if(e.left)for(e=e.left;e;)t.push(e),e=e.right;else for(t.pop();t.length>0&&t[t.length-1].left===e;)e=t[t.length-1],t.pop()}},Object.defineProperty(p,“hasPrev”,{get:function(){var t=this._stack;if(0===t.length)return!1;if(t[t.length-1].left)return!0;for(var e=t.length-1;e>0;–e)if(t[e-1].right===t[e])return!0;return!1}})},{}],243:[function(t,e,r){var n=[.9999999999998099,676.5203681218851,-1259.1392167224028,771.3234287776531,-176.6150291621406,12.507343278686905,-.13857109526572012,9984369578019572e-21,1.5056327351493116e-7],a=[.9999999999999971,57.15623566586292,-59.59796035547549,14.136097974741746,-.4919138160976202,3399464998481189e-20,4652362892704858e-20,-9837447530487956e-20,.0001580887032249125,-.00021026444172410488,.00021743961811521265,-.0001643181065367639,8441822398385275e-20,-26190838401581408e-21,36899182659531625e-22];function i(t){if(t<0)return Number("0/0");for(var e=a[0],r=a.length-1;r>0;–r)e+=a[r]/(t+r);var n=t+607128+.5;return.5*Math.log(2*Math.PI)+(t+.5)*Math.log(n)-n+Math.log(e)-Math.log(t)}e.exports=function t(e){if(e<.5)return Math.PI/(Math.sin(Math.PI*e)*t(1-e));if(e>100)return Math.exp(i(e));e-=1;for(var r=n[0],a=1;a<9;a++)r+=n[a]/(e+a);var o=e+7+.5;return Math.sqrt(2*Math.PI)*Math.pow(o,e+.5)*Math.exp(-o)*r},e.exports.log=i},{}],244:[function(t,e,r){e.exports=function(t,e){if("string"!=typeof t)throw new TypeError("must specify type string");if(e=e||{},"undefined"==typeof document&&!e.canvas)return null;var r=e.canvas||document.createElement("canvas");"number"==typeof e.width&&(r.width=e.width);"number"==typeof e.height&&(r.height=e.height);var n,a=e;try{var i=[t];0===t.indexOf("webgl")&&i.push("experimental-"+t);for(var o=0;o0?(p[u]=-1,d[u]=0):(p[u]=0,d[u]=1)}}var g=[0,0,0],m={model:l,view:l,projection:l,_ortho:!1};h.isOpaque=function(){return!0},h.isTransparent=function(){return!1},h.drawTransparent=function(t){};var v=[0,0,0],y=[0,0,0],x=[0,0,0];h.draw=function(t){t=t||m;for(var e=this.gl,r=t.model||l,n=t.view||l,a=t.projection||l,i=this.bounds,s=t.ortho||!1,u=o(r,n,a,i,s),h=u.cubeEdges,f=u.axis,b=n[12],=n[13],w=n[14],T=n[15],k=(s?2:1)this.pixelRatio(a[3]b+a[7]_+a[11]*w+a[15]*T)/e.drawingBufferHeight,A=0;A<3;++A)this.lastCubeProps.cubeEdges[A]=h[A],this.lastCubeProps.axis[A]=f[A];var M=p;for(A=0;A<3;++A)d(p[A],A,this.bounds,h,f);e=this.gl;var S,E=g;for(A=0;A<3;++A)this.backgroundEnable[A]?E[A]=f[A]:E[A]=0;this._background.draw(r,n,a,i,E,this.backgroundColor),this._lines.bind(r,n,a,this);for(A=0;A<3;++A){var C=[0,0,0];f[A]>0?C[A]=i[1][A]:C[A]=i[0][A];for(var L=0;L<2;++L){var P=(A+1+L)%3,I=(A+1+(1^L))%3;this.gridEnable[P]&&this._lines.drawGrid(P,I,this.bounds,C,this.gridColor[P],this.gridWidth[P]*this.pixelRatio)}for(L=0;L<2;++L){P=(A+1+L)%3,I=(A+1+(1^L))%3;this.zeroEnable[I]&&Math.min(i[0][I],i[1][I])<=0&&Math.max(i[0][I],i[1][I])>=0&&this._lines.drawZero(P,I,this.bounds,C,this.zeroLineColor[I],this.zeroLineWidth[I]*this.pixelRatio)}}for(A=0;A<3;++A){this.lineEnable[A]&&this._lines.drawAxisLine(A,this.bounds,M[A].primalOffset,this.lineColor[A],this.lineWidth[A]*this.pixelRatio),this.lineMirror[A]&&this._lines.drawAxisLine(A,this.bounds,M[A].mirrorOffset,this.lineColor[A],this.lineWidth[A]*this.pixelRatio);var z=c(v,M[A].primalMinor),O=c(y,M[A].mirrorMinor),D=this.lineTickLength;for(L=0;L<3;++L){var R=k/r[5*L];z[L]*=D[L]*R,O[L]*=D[L]*R}this.lineTickEnable[A]&&this._lines.drawAxisTicks(A,M[A].primalOffset,z,this.lineTickColor[A],this.lineTickWidth[A]*this.pixelRatio),this.lineTickMirror[A]&&this._lines.drawAxisTicks(A,M[A].mirrorOffset,O,this.lineTickColor[A],this.lineTickWidth[A]*this.pixelRatio)}this._lines.unbind(),this._text.bind(r,n,a,this.pixelRatio);var F,B;function N(t){(B=[0,0,0])[t]=1}function j(t,e,r){var n=(t+1)%3,a=(t+2)%3,i=e[n],o=e[a],s=r[n],l=r[a];i>0&&l>0||i>0&&l<0||i<0&&l>0||i<0&&l<0?N(n):(o>0&&s>0||o>0&&s<0||o<0&&s>0||o<0&&s<0)&&N(a)}for(A=0;A<3;++A){var V=M[A].primalMinor,U=M[A].mirrorMinor,q=c(x,M[A].primalOffset);for(L=0;L<3;++L)this.lineTickEnable[A]&&(q[L]+=k*V[L]*Math.max(this.lineTickLength[L],0)/r[5*L]);var H=[0,0,0];if(H[A]=1,this.tickEnable[A]){-3600===this.tickAngle[A]?(this.tickAngle[A]=0,this.tickAlign[A]="auto"):this.tickAlign[A]=-1,F=1,"auto"===(S=[this.tickAlign[A],.5,F])[0]?S[0]=0:S[0]=parseInt(""+S[0]),B=[0,0,0],j(A,V,U);for(L=0;L<3;++L)q[L]+=k*V[L]*this.tickPad[L]/r[5*L];this._text.drawTicks(A,this.tickSize[A],this.tickAngle[A],q,this.tickColor[A],H,B,S)}if(this.labelEnable[A]){F=0,B=[0,0,0],this.labels[A].length>4&&(N(A),F=1),“auto”===(S=[this.labelAlign[A],.5,F])[0]?S[0]=0:S[0]=parseInt(“”+S[0]);for(L=0;L<3;++L)q[L]+=k*V[L]*this.labelPad[L]/r[5*L];q[A]+=.5*(i[0][A]+i[1][A]),this._text.drawLabel(A,this.labelSize[A],this.labelAngle[A],q,this.labelColor[A],[0,0,0],B,S)}}this._text.unbind()},h.dispose=function(){this._text.dispose(),this._lines.dispose(),this._background.dispose(),this._lines=null,this._text=null,this._background=null,this.gl=null}},{"./lib/background.js":246,"./lib/cube.js":247,"./lib/lines.js":248,"./lib/text.js":250,"./lib/ticks.js":251}],246:[function(t,e,r){"use strict";e.exports=function(t){for(var e=[],r=[],s=0,l=0;l<3;++l)for(var c=(l+1)%3,u=(l+2)%3,h=[0,0,0],f=[0,0,0],p=-1;p<=1;p+=2){r.push(s,s+2,s+1,s+1,s+2,s+3),h[l]=p,f[l]=p;for(var d=-1;d<=1;d+=2){h[c]=d;for(var g=-1;g<=1;g+=2)h[u]=g,e.push(h[0],h[1],h[2],f[0],f[1],f[2]),s+=1}var m=c;c=u,u=m}var v=n(t,new Float32Array(e)),y=n(t,new Uint16Array(r),t.ELEMENT_ARRAY_BUFFER),x=a(t,[{buffer:v,type:t.FLOAT,size:3,offset:0,stride:24},{buffer:v,type:t.FLOAT,size:3,offset:12,stride:24}],y),b=i(t);return b.attributes.position.location=0,b.attributes.normal.location=1,new o(t,v,x,b)};var n=t("gl-buffer"),a=t("gl-vao"),i=t("./shaders").bg;function o(t,e,r,n){this.gl=t,this.buffer=e,this.vao=r,this.shader=n}var s=o.prototype;s.draw=function(t,e,r,n,a,i){for(var o=!1,s=0;s<3;++s)o=o||a[s];if(o){var l=this.gl;l.enable(l.POLYGON_OFFSET_FILL),l.polygonOffset(1,2),this.shader.bind(),this.shader.uniforms={model:t,view:e,projection:r,bounds:n,enable:a,colors:i},this.vao.bind(),this.vao.draw(this.gl.TRIANGLES,36),this.vao.unbind(),l.disable(l.POLYGON_OFFSET_FILL)}},s.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()}},{"./shaders":249,"gl-buffer":253,"gl-vao":327}],247:[function(t,e,r){"use strict";e.exports=function(t,e,r,i,p){a(s,e,t),a(s,r,s);for(var y=0,x=0;x<2;++x){u[2]=i[x][2];for(var b=0;b<2;++b){u[1]=i[b][1];for(var _=0;_<2;++_)u[0]=i[_][0],f(l[y],u,s),y+=1}}var w=-1;for(x=0;x<8;++x){for(var T=l[x][3],k=0;k<3;++k)c[x][k]=l[x][k]/T;p&&(c[x][2]*=-1),T<0&&(w<0||c[x][2]E&&(w|=1<E&&(w|=1<c[x][1])&&(R=x);var F=-1;for(x=0;x<3;++x){if((N=R^1<c[B][0]&&(B=N)}var j=g;j[0]=j[1]=j[2]=0,j[n.log2(F^R)]=R&F,j[n.log2(R^B)]=R&B;var V=7^B;V===w||V===D?(V=7^F,j[n.log2(B^V)]=V&B):j[n.log2(F^V)]=V&F;var U=m,q=w;for(A=0;A<3;++A)U[A]=q&1< HALF_PI) && (b <= ONE_AND_HALF_PI)) ?\n b - PI :\n b;\n}\n\nfloat look_horizontal_or_vertical(float a, float ratio) {\n // ratio controls the ratio between being horizontal to (vertical + horizontal)\n // if ratio is set to 0.5 then it is 50%, 50%.\n // when using a higher ratio e.g. 0.75 the result would\n // likely be more horizontal than vertical.\n\n float b = positive_angle(a);\n\n return\n (b < ( ratio) * HALF_PI) ? 0.0 :\n (b < (2.0 - ratio) * HALF_PI) ? -HALF_PI :\n (b < (2.0 + ratio) * HALF_PI) ? 0.0 :\n (b < (4.0 - ratio) * HALF_PI) ? HALF_PI :\n 0.0;\n}\n\nfloat roundTo(float a, float b) {\n return float(b * floor((a + 0.5 * b) / b));\n}\n\nfloat look_round_n_directions(float a, int n) {\n float b = positive_angle(a);\n float div = TWO_PI / float(n);\n float c = roundTo(b, div);\n return look_upwards©;\n}\n\nfloat applyAlignOption(float rawAngle, float delta) {\n return\n (option > 2) ? look_round_n_directions(rawAngle + delta, option) : // option 3-n: round to n directions\n (option == 2) ? look_horizontal_or_vertical(rawAngle + delta, hv_ratio) : // horizontal or vertical\n (option == 1) ? rawAngle + delta : // use free angle, and flip to align with one direction of the axis\n (option == 0) ? look_upwards(rawAngle) : // use free angle, and stay upwards\n (option ==-1) ? 0.0 : // useful for backward compatibility, all texts remains horizontal\n rawAngle; // otherwise return back raw input angle\n}\n\nbool isAxisTitle = (axis.x == 0.0) &&\n (axis.y == 0.0) &&\n (axis.z == 0.0);\n\nvoid main() {\n //Compute world offset\n float axisDistance = position.z;\n vec3 dataPosition = axisDistance * axis + offset;\n\n float beta = angle; // i.e. user defined attributes for each tick\n\n float axisAngle;\n float clipAngle;\n float flip;\n\n if (enableAlign) {\n axisAngle = (isAxisTitle) ? HALF_PI :\n computeViewAngle(dataPosition, dataPosition + axis);\n clipAngle = computeViewAngle(dataPosition, dataPosition + alignDir);\n\n axisAngle += (sin(axisAngle) < 0.0) ? PI : 0.0;\n clipAngle += (sin(clipAngle) < 0.0) ? PI : 0.0;\n\n flip = (dot(vec2(cos(axisAngle), sin(axisAngle)),\n vec2(sin(clipAngle),-cos(clipAngle))) > 0.0) ? 1.0 : 0.0;\n\n beta += applyAlignOption(clipAngle, flip * PI);\n }\n\n //Compute plane offset\n vec2 planeCoord = position.xy * pixelScale;\n\n mat2 planeXform = scale * mat2(\n cos(beta), sin(beta),\n -sin(beta), cos(beta)\n );\n\n vec2 viewOffset = 2.0 * planeXform * planeCoord / resolution;\n\n //Compute clip position\n vec3 clipPosition = project(dataPosition);\n\n //Apply text offset in clip coordinates\n clipPosition += vec3(viewOffset, 0.0);\n\n //Done\n gl_Position = vec4(clipPosition, 1.0);\n}“]),l=n([“precision highp float;\n#define GLSLIFY 1\n\nuniform vec4 color;\nvoid main() {\n gl_FragColor = color;\n}“]);r.text=function(t){return a(t,s,l,null,[{name:“position”,type:“vec3”}])};var c=n([“precision highp float;\n#define GLSLIFY 1\n\nattribute vec3 position;\nattribute vec3 normal;\n\nuniform mat4 model, view, projection;\nuniform vec3 enable;\nuniform vec3 bounds[2];\n\nvarying vec3 colorChannel;\n\nvoid main() {\n\n vec3 signAxis = sign(bounds[1] - bounds[0]);\n\n vec3 realNormal = signAxis * normal;\n\n if(dot(realNormal, enable) > 0.0) {\n vec3 minRange = min(bounds[0], bounds[1]);\n vec3 maxRange = max(bounds[0], bounds[1]);\n vec3 nPosition = mix(minRange, maxRange, 0.5 * (position + 1.0));\n gl_Position = projection * view * model * vec4(nPosition, 1.0);\n } else {\n gl_Position = vec4(0,0,0,0);\n }\n\n colorChannel = abs(realNormal);\n}“]),u=n([“precision highp float;\n#define GLSLIFY 1\n\nuniform vec4 colors[3];\n\nvarying vec3 colorChannel;\n\nvoid main() {\n gl_FragColor = colorChannel.x * colors[0] +\n colorChannel.y * colors[1] +\n colorChannel.z * colors[2];\n}“]);r.bg=function(t){return a(t,c,u,null,[{name:“position”,type:“vec3”},{name:“normal”,type:“vec3”}])}},{“gl-shader”:307,glslify:408}],250:[function(t,e,r){(function®{“use strict”;e.exports=function(t,e,r,i,s,l){var u=n(t),h=a(t,[{buffer:u,size:3}]),f=o(t);f.attributes.position.location=0;var p=new c(t,f,u,h);return p.update(e,r,i,s,l),p};var n=t(“gl-buffer”),a=t(“gl-vao”),i=t(“vectorize-text”),o=t(“./shaders”).text,s=window||r.global||{},l=s.TEXT_CACHE||{};s.TEXT_CACHE={};function c(t,e,r,n){this.gl=t,this.shader=e,this.buffer=r,this.vao=n,this.tickOffset=this.tickCount=this.labelOffset=this.labelCount=null}var u=c.prototype,h=[0,0];u.bind=function(t,e,r,n){this.vao.bind(),this.shader.bind();var a=this.shader.uniforms;a.model=t,a.view=e,a.projection=r,a.pixelScale=n,h[0]=this.gl.drawingBufferWidth,h[1]=this.gl.drawingBufferHeight,this.shader.uniforms.resolution=h},u.unbind=function(){this.vao.unbind()},u.update=function(t,e,r,n,a){var o=[];function s(t,e,r,n,a,s){var c=l[r];c||(c=l[r]={});var u=c[e];u||(u=c[e]=function(t,e){try{return i(t,e)}catch(e){return console.warn(‘error vectorizing text:“‘+t+’” error:‘,e),{cells:[],positions:[]}}}(e,{triangles:!0,font:r,textAlign:“center”,textBaseline:“middle”,lineSpacing:a,styletags:s}));for(var h=(n||12)/12,f=u.positions,p=u.cells,d=0,g=p.length;d=0;–v){var y=f[m[v]];o.push(h*y[0],-hy[1],t)}}for(var c=[0,0,0],u=[0,0,0],h=[0,0,0],f=[0,0,0],p={breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},d=0;d<3;++d){h[d]=o.length/3|0,s(.5(t[0][d]+t[1][d]),e[d],r[d],12,1.25,p),f[d]=(o.length/3|0)-h[d],c[d]=o.length/3|0;for(var g=0;g=0&&(a=r.length-n-1);var i=Math.pow(10,a),o=Math.round(t*e*i),s=o+“”;if(s.indexOf(“e”)>=0)return s;var l=o/i,c=o%i;o<0?(l=0|-Math.ceil(l),c=0|-c):(l=0|Math.floor(l),c|=0);var u=""+l;if(o<0&&(u="-"+u),a){for(var h=""+c;h.length=t[0][a];–o)i.push({x:o*e[a],text:n(e[a],o)});r.push(i)}return r},r.equal=function(t,e){for(var r=0;r<3;++r){if(t[r].length!==e[r].length)return!1;for(var n=0;nr)throw new Error(“gl-buffer: If resizing buffer, must not specify offset”);return t.bufferSubData(e,i,a),r}function u(t,e){for(var r=n.malloc(t.length,e),a=t.length,i=0;i=0;–n){if(e[n]!==r)return!1;r*=t[n]}return!0}(t.shape,t.stride))0===t.offset&&t.data.length===t.shape[0]?this.length=c(this.gl,this.type,this.length,this.usage,t.data,e):this.length=c(this.gl,this.type,this.length,this.usage,t.data.subarray(t.offset,t.shape[0]),e);else{var s=n.malloc(t.size,r),l=i(s,t.shape);a.assign(l,t),this.length=c(this.gl,this.type,this.length,this.usage,e<0?s:s.subarray(0,t.size),e),n.free(s)}}else if(Array.isArray(t)){var h;h=this.type===this.gl.ELEMENT_ARRAY_BUFFER?u(t,"uint16"):u(t,"float32"),this.length=c(this.gl,this.type,this.length,this.usage,e<0?h:h.subarray(0,t.length),e),n.free(h)}else if("object"==typeof t&&"number"==typeof t.length)this.length=c(this.gl,this.type,this.length,this.usage,t,e);else{if("number"!=typeof t&&void 0!==t)throw new Error("gl-buffer: Invalid data type");if(e>=0)throw new Error(“gl-buffer: Cannot specify offset when resizing buffer”);(t|=0)<=0&&(t=1),this.gl.bufferData(this.type,0|t,this.usage),this.length=t}},e.exports=function(t,e,r,n){if(r=r||t.ARRAY_BUFFER,n=n||t.DYNAMIC_DRAW,r!==t.ARRAY_BUFFER&&r!==t.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(n!==t.DYNAMIC_DRAW&&n!==t.STATIC_DRAW&&n!==t.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 a=t.createBuffer(),i=new s(t,r,a,0,n);return i.update(e),i}},{ndarray:448,“ndarray-ops”:443,“typedarray-pool”:547}],254:[function(t,e,r){“use strict”;var n=t(“gl-vec3”);e.exports=function(t,e){var r=t.positions,a=t.vectors,i={positions:[],vertexIntensity:[],vertexIntensityBounds:t.vertexIntensityBounds,vectors:[],cells:[],coneOffset:t.coneOffset,colormap:t.colormap};if(0===t.positions.length)return e&&(e[0]=[0,0,0],e[1]=[0,0,0]),i;for(var o=0,s=10,l=-10,c=10,u=-10,h=10,f=-10,p=null,d=null,g=[],m=10,v=!1,y=0;yo&&(o=n.length(b)),y){var =2*n.distance(p,x)/(n.length(d)+n.length(b));?(m=Math.min(m,_),v=!1):v=!0}v||(p=x,d=b),g.push(b)}var w=[s,c,h],T=[l,u,f];e&&(e[0]=w,e[1]=T),0===o&&(o=1);var k=1/o;isFinite(m)||(m=1),i.vectorScale=m;var A=t.coneSize||.5;t.absoluteConeSize&&(A=t.absoluteConeSize*k),i.coneScale=A;y=0;for(var M=0;y=1},p.isTransparent=function(){return this.opacity<1},p.pickSlots=1,p.setPickBase=function(t){this.pickId=t},p.update=function(t){t=t||{};var e=this.gl;this.dirty=!0,"lightPosition"in t&&(this.lightPosition=t.lightPosition),"opacity"in t&&(this.opacity=t.opacity),"ambient"in t&&(this.ambientLight=t.ambient),"diffuse"in t&&(this.diffuseLight=t.diffuse),"specular"in t&&(this.specularLight=t.specular),"roughness"in t&&(this.roughness=t.roughness),"fresnel"in t&&(this.fresnel=t.fresnel),void 0!==t.tubeScale&&(this.tubeScale=t.tubeScale),void 0!==t.vectorScale&&(this.vectorScale=t.vectorScale),void 0!==t.coneScale&&(this.coneScale=t.coneScale),void 0!==t.coneOffset&&(this.coneOffset=t.coneOffset),t.colormap&&(this.texture.shape=[256,256],this.texture.minFilter=e.LINEAR_MIPMAP_LINEAR,this.texture.magFilter=e.LINEAR,this.texture.setPixels(function(t){for(var e=u({colormap:t,nshades:256,format:"rgba"}),r=new Uint8Array(1024),n=0;n<256;++n){for(var a=e[n],i=0;i<3;++i)r[4*n+i]=a[i];r[4*n+3]=255*a[3]}return c(r,[256,256,4],[4,0,1])}(t.colormap)),this.texture.generateMipmap());var r=t.cells,n=t.positions,a=t.vectors;if(n&&r&&a){var i=[],o=[],s=[],l=[],h=[];this.cells=r,this.positions=n,this.vectors=a;var f=t.meshColor||[1,1,1,1],p=t.vertexIntensity,d=1/0,g=-1/0;if(p)if(t.vertexIntensityBounds)d=+t.vertexIntensityBounds[0],g=+t.vertexIntensityBounds[1];else for(var m=0;m0){var g=this.triShader;g.bind(),g.uniforms=c,this.triangleVAO.bind(),e.drawArrays(e.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()}},p.drawPick=function(t){t=t||{};for(var e=this.gl,r=t.model||h,n=t.view||h,a=t.projection||h,i=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],o=0;o<3;++o)i[0][o]=Math.max(i[0][o],this.clipBounds[0][o]),i[1][o]=Math.min(i[1][o],this.clipBounds[1][o]);this._model=[].slice.call(r),this._view=[].slice.call(n),this._projection=[].slice.call(a),this._resolution=[e.drawingBufferWidth,e.drawingBufferHeight];var s={model:r,view:n,projection:a,clipBounds:i,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,pickId:this.pickId/255},l=this.pickShader;l.bind(),l.uniforms=s,this.triangleCount>0&&(this.triangleVAO.bind(),e.drawArrays(e.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind())},p.pick=function(t){if(!t)return null;if(t.id!==this.pickId)return null;var e=t.value[0]+256*t.value[1]+65536t.value[2],r=this.cells[e],n=this.positions[r[1]].slice(0,3),a={position:n,dataCoordinate:n,index:Math.floor(r[1]/48)};return”cone”===this.traceType?a.index=Math.floor(r[1]/48):“streamtube”===this.traceType&&(a.intensity=this.intensity[r[1]],a.velocity=this.vectors[r[1]].slice(0,3),a.divergence=this.vectors[r[1]][3],a.index=e),a},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()},e.exports=function(t,e,r){var n=r.shaders;1===arguments.length&&(t=(e=t).gl);var s=d(t,n),l=g(t,n),u=o(t,c(new Uint8Array([255,255,255,255]),[1,1,4]));u.generateMipmap(),u.minFilter=t.LINEAR_MIPMAP_LINEAR,u.magFilter=t.LINEAR;var h=a(t),p=a(t),m=a(t),v=a(t),y=a(t),x=i(t,[{buffer:h,type:t.FLOAT,size:4},{buffer:y,type:t.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:m,type:t.FLOAT,size:4},{buffer:v,type:t.FLOAT,size:2},{buffer:p,type:t.FLOAT,size:4}]),b=new f(t,u,s,l,h,p,y,m,v,x,r.traceType||“cone”);return b.update(e),b}},{colormap:128,“gl-buffer”:253,“gl-mat4/invert”:273,“gl-mat4/multiply”:275,“gl-shader”:307,“gl-texture2d”:322,“gl-vao”:327,ndarray:448}],256:[function(t,e,r){var n=t(“glslify”),a=n([“precision highp float;\n\nprecision highp float;\n#define GLSLIFY 1\n\nvec3 getOrthogonalVector(vec3 v) {\n // Return up-vector for only-z vector.\n // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn’t (0,0,0).\n // From the above if-statement we have ||a|| > 0 U ||b|| > 0.\n // Assign z = 0, x = -b, y = a:\n // a-b + b*a + c*0 = -ba + ba + 0 = 0\n if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {\n return normalize(vec3(-v.y, v.x, 0.0));\n } else {\n return normalize(vec3(0.0, v.z, -v.y));\n }\n}\n\n// Calculate the cone vertex and normal at the given index.\n//\n// The returned vertex is for a cone with its top at origin and height of 1.0,\n// pointing in the direction of the vector attribute.\n//\n// Each cone is made up of a top vertex, a center base vertex and base perimeter vertices.\n// These vertices are used to make up the triangles of the cone by the following:\n// segment + 0 top vertex\n// segment + 1 perimeter vertex a+1\n// segment + 2 perimeter vertex a\n// segment + 3 center base vertex\n// segment + 4 perimeter vertex a\n// segment + 5 perimeter vertex a+1\n// Where segment is the number of the radial segment * 6 and a is the angle at that radial segment.\n// To go from index to segment, floor(index / 6)\n// To go from segment to angle, 2*pi * (segment/segmentCount)\n// To go from index to segment index, index - (segment*6)\n//\nvec3 getConePosition(vec3 d, float rawIndex, float coneOffset, out vec3 normal) {\n\n const float segmentCount = 8.0;\n\n float index = rawIndex - floor(rawIndex /\n (segmentCount * 6.0)) *\n (segmentCount * 6.0);\n\n float segment = floor(0.001 + index/6.0);\n float segmentIndex = index - (segment*6.0);\n\n normal = -normalize(d);\n\n if (segmentIndex > 2.99 && segmentIndex < 3.01) {\n return mix(vec3(0.0), -d, coneOffset);\n }\n\n float nextAngle = (\n (segmentIndex > 0.99 && segmentIndex < 1.01) ||\n (segmentIndex > 4.99 && segmentIndex < 5.01)\n ) ? 1.0 : 0.0;\n float angle = 2.0 * 3.14159 * ((segment + nextAngle) / segmentCount);\n\n vec3 v1 = mix(d, vec3(0.0), coneOffset);\n vec3 v2 = v1 - d;\n\n vec3 u = getOrthogonalVector(d);\n vec3 v = normalize(cross(u, d));\n\n vec3 x = u * cos(angle) * length(d)*0.25;\n vec3 y = v * sin(angle) * length(d)*0.25;\n vec3 v3 = v2 + x + y;\n if (segmentIndex < 3.0) {\n vec3 tx = u * sin(angle);\n vec3 ty = v * -cos(angle);\n vec3 tangent = tx + ty;\n normal = normalize(cross(v3 - v1, tangent));\n }\n\n if (segmentIndex == 0.0) {\n return mix(d, vec3(0.0), coneOffset);\n }\n return v3;\n}\n\nattribute vec3 vector;\nattribute vec4 color, position;\nattribute vec2 uv;\n\nuniform float vectorScale, coneScale, coneOffset;\nuniform mat4 model, view, projection, inverseModel;\nuniform vec3 eyePosition, lightPosition;\n\nvarying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n // Scale the vector magnitude to stay constant with\n // model & view changes.\n vec3 normal;\n vec3 XYZ = getConePosition(mat3(model) * ((vectorScale * coneScale) * vector), position.w, coneOffset, normal);\n vec4 conePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);\n\n //Lighting geometry parameters\n vec4 cameraCoordinate = view * conePosition;\n cameraCoordinate.xyz /= cameraCoordinate.w;\n f_lightDirection = lightPosition - cameraCoordinate.xyz;\n f_eyeDirection = eyePosition - cameraCoordinate.xyz;\n f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz);\n\n // vec4 m_position = model * vec4(conePosition, 1.0);\n vec4 t_position = view * conePosition;\n gl_Position = projection * t_position;\n\n f_color = color;\n f_data = conePosition.xyz;\n f_position = position.xyz;\n f_uv = uv;\n}\n”]),i=n([“#extension GL_OES_standard_derivatives : enable\n\nprecision highp float;\n#define GLSLIFY 1\n\nfloat beckmannDistribution(float x, float roughness) {\n float NdotH = max(x, 0.0001);\n float cos2Alpha = NdotH * NdotH;\n float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;\n float roughness2 = roughness * roughness;\n float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;\n return exp(tan2Alpha / roughness2) / denom;\n}\n\nfloat cookTorranceSpecular(\n vec3 lightDirection,\n vec3 viewDirection,\n vec3 surfaceNormal,\n float roughness,\n float fresnel) {\n\n float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);\n float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);\n\n //Half angle vector\n vec3 H = normalize(lightDirection + viewDirection);\n\n //Geometric term\n float NdotH = max(dot(surfaceNormal, H), 0.0);\n float VdotH = max(dot(viewDirection, H), 0.000001);\n float LdotH = max(dot(lightDirection, H), 0.000001);\n float G1 = (2.0 * NdotH * VdotN) / VdotH;\n float G2 = (2.0 * NdotH * LdotN) / LdotH;\n float G = min(1.0, min(G1, G2));\n \n //Distribution term\n float D = beckmannDistribution(NdotH, roughness);\n\n //Fresnel term\n float F = pow(1.0 - VdotN, fresnel);\n\n //Multiply terms and done\n return G * F * D / max(3.14159265 * VdotN, 0.000001);\n}\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;\nuniform sampler2D texture;\n\nvarying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\n vec3 N = normalize(f_normal);\n vec3 L = normalize(f_lightDirection);\n vec3 V = normalize(f_eyeDirection);\n\n if(gl_FrontFacing) {\n N = -N;\n }\n\n float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));\n float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);\n\n vec4 surfaceColor = f_color * texture2D(texture, f_uv);\n vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);\n\n gl_FragColor = litColor * opacity;\n}\n”]),o=n([“precision highp float;\n\nprecision highp float;\n#define GLSLIFY 1\n\nvec3 getOrthogonalVector(vec3 v) {\n // Return up-vector for only-z vector.\n // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn’t (0,0,0).\n // From the above if-statement we have ||a|| > 0 U ||b|| > 0.\n // Assign z = 0, x = -b, y = a:\n // a*-b + b*a + c*0 = -ba + ba + 0 = 0\n if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {\n return normalize(vec3(-v.y, v.x, 0.0));\n } else {\n return normalize(vec3(0.0, v.z, -v.y));\n }\n}\n\n// Calculate the cone vertex and normal at the given index.\n//\n// The returned vertex is for a cone with its top at origin and height of 1.0,\n// pointing in the direction of the vector attribute.\n//\n// Each cone is made up of a top vertex, a center base vertex and base perimeter vertices.\n// These vertices are used to make up the triangles of the cone by the following:\n// segment + 0 top vertex\n// segment + 1 perimeter vertex a+1\n// segment + 2 perimeter vertex a\n// segment + 3 center base vertex\n// segment + 4 perimeter vertex a\n// segment + 5 perimeter vertex a+1\n// Where segment is the number of the radial segment * 6 and a is the angle at that radial segment.\n// To go from index to segment, floor(index / 6)\n// To go from segment to angle, 2*pi * (segment/segmentCount)\n// To go from index to segment index, index - (segment*6)\n//\nvec3 getConePosition(vec3 d, float rawIndex, float coneOffset, out vec3 normal) {\n\n const float segmentCount = 8.0;\n\n float index = rawIndex - floor(rawIndex /\n (segmentCount * 6.0)) *\n (segmentCount * 6.0);\n\n float segment = floor(0.001 + index/6.0);\n float segmentIndex = index - (segment*6.0);\n\n normal = -normalize(d);\n\n if (segmentIndex > 2.99 && segmentIndex < 3.01) {\n return mix(vec3(0.0), -d, coneOffset);\n }\n\n float nextAngle = (\n (segmentIndex > 0.99 && segmentIndex < 1.01) ||\n (segmentIndex > 4.99 && segmentIndex < 5.01)\n ) ? 1.0 : 0.0;\n float angle = 2.0 * 3.14159 * ((segment + nextAngle) / segmentCount);\n\n vec3 v1 = mix(d, vec3(0.0), coneOffset);\n vec3 v2 = v1 - d;\n\n vec3 u = getOrthogonalVector(d);\n vec3 v = normalize(cross(u, d));\n\n vec3 x = u * cos(angle) * length(d)*0.25;\n vec3 y = v * sin(angle) * length(d)*0.25;\n vec3 v3 = v2 + x + y;\n if (segmentIndex < 3.0) {\n vec3 tx = u * sin(angle);\n vec3 ty = v * -cos(angle);\n vec3 tangent = tx + ty;\n normal = normalize(cross(v3 - v1, tangent));\n }\n\n if (segmentIndex == 0.0) {\n return mix(d, vec3(0.0), coneOffset);\n }\n return v3;\n}\n\nattribute vec4 vector;\nattribute vec4 position;\nattribute vec4 id;\n\nuniform mat4 model, view, projection;\nuniform float vectorScale, coneScale, coneOffset;\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n vec3 normal;\n vec3 XYZ = getConePosition(mat3(model) * ((vectorScale * coneScale) * vector.xyz), position.w, coneOffset, normal);\n vec4 conePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);\n gl_Position = projection * view * conePosition;\n f_id = id;\n f_position = position.xyz;\n}\n”]),s=n([“precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float pickId;\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\n\n gl_FragColor = vec4(pickId, f_id.xyz);\n}“]);r.meshShader={vertex:a,fragment:i,attributes:[{name:“position”,type:“vec4”},{name:“color”,type:“vec4”},{name:“uv”,type:“vec2”},{name:“vector”,type:“vec3”}]},r.pickShader={vertex:o,fragment:s,attributes:[{name:“position”,type:“vec4”},{name:“id”,type:“vec4”},{name:“vector”,type:“vec3”}]}},{glslify:408}],257:[function(t,e,r){e.exports={0:“NONE”,1:“ONE”,2:“LINE_LOOP”,3:“LINE_STRIP”,4:“TRIANGLES”,5:“TRIANGLE_STRIP”,6:“TRIANGLE_FAN”,256:“DEPTH_BUFFER_BIT”,512:“NEVER”,513:“LESS”,514:“EQUAL”,515:“LEQUAL”,516:“GREATER”,517:“NOTEQUAL”,518:“GEQUAL”,519:“ALWAYS”,768:“SRC_COLOR”,769:“ONE_MINUS_SRC_COLOR”,770:“SRC_ALPHA”,771:“ONE_MINUS_SRC_ALPHA”,772:“DST_ALPHA”,773:“ONE_MINUS_DST_ALPHA”,774:“DST_COLOR”,775:“ONE_MINUS_DST_COLOR”,776:“SRC_ALPHA_SATURATE”,1024:“STENCIL_BUFFER_BIT”,1028:“FRONT”,1029:“BACK”,1032:“FRONT_AND_BACK”,1280:“INVALID_ENUM”,1281:“INVALID_VALUE”,1282:“INVALID_OPERATION”,1285:“OUT_OF_MEMORY”,1286:“INVALID_FRAMEBUFFER_OPERATION”,2304:“CW”,2305:“CCW”,2849:“LINE_WIDTH”,2884:“CULL_FACE”,2885:“CULL_FACE_MODE”,2886:“FRONT_FACE”,2928:“DEPTH_RANGE”,2929:“DEPTH_TEST”,2930:“DEPTH_WRITEMASK”,2931:“DEPTH_CLEAR_VALUE”,2932:“DEPTH_FUNC”,2960:“STENCIL_TEST”,2961:“STENCIL_CLEAR_VALUE”,2962:“STENCIL_FUNC”,2963:“STENCIL_VALUE_MASK”,2964:“STENCIL_FAIL”,2965:“STENCIL_PASS_DEPTH_FAIL”,2966:“STENCIL_PASS_DEPTH_PASS”,2967:“STENCIL_REF”,2968:“STENCIL_WRITEMASK”,2978:“VIEWPORT”,3024:“DITHER”,3042:“BLEND”,3088:“SCISSOR_BOX”,3089:“SCISSOR_TEST”,3106:“COLOR_CLEAR_VALUE”,3107:“COLOR_WRITEMASK”,3317:“UNPACK_ALIGNMENT”,3333:“PACK_ALIGNMENT”,3379:“MAX_TEXTURE_SIZE”,3386:“MAX_VIEWPORT_DIMS”,3408:“SUBPIXEL_BITS”,3410:“RED_BITS”,3411:“GREEN_BITS”,3412:“BLUE_BITS”,3413:“ALPHA_BITS”,3414:“DEPTH_BITS”,3415:“STENCIL_BITS”,3553:“TEXTURE_2D”,4352:“DONT_CARE”,4353:“FASTEST”,4354:“NICEST”,5120:“BYTE”,5121:“UNSIGNED_BYTE”,5122:“SHORT”,5123:“UNSIGNED_SHORT”,5124:“INT”,5125:“UNSIGNED_INT”,5126:“FLOAT”,5386:“INVERT”,5890:“TEXTURE”,6401:“STENCIL_INDEX”,6402:“DEPTH_COMPONENT”,6406:“ALPHA”,6407:“RGB”,6408:“RGBA”,6409:“LUMINANCE”,6410:“LUMINANCE_ALPHA”,7680:“KEEP”,7681:“REPLACE”,7682:“INCR”,7683:“DECR”,7936:“VENDOR”,7937:“RENDERER”,7938:“VERSION”,9728:“NEAREST”,9729:“LINEAR”,9984:“NEAREST_MIPMAP_NEAREST”,9985:“LINEAR_MIPMAP_NEAREST”,9986:“NEAREST_MIPMAP_LINEAR”,9987:“LINEAR_MIPMAP_LINEAR”,10240:“TEXTURE_MAG_FILTER”,10241:“TEXTURE_MIN_FILTER”,10242:“TEXTURE_WRAP_S”,10243:“TEXTURE_WRAP_T”,10497:“REPEAT”,10752:“POLYGON_OFFSET_UNITS”,16384:“COLOR_BUFFER_BIT”,32769:“CONSTANT_COLOR”,32770:“ONE_MINUS_CONSTANT_COLOR”,32771:“CONSTANT_ALPHA”,32772:“ONE_MINUS_CONSTANT_ALPHA”,32773:“BLEND_COLOR”,32774:“FUNC_ADD”,32777:“BLEND_EQUATION_RGB”,32778:“FUNC_SUBTRACT”,32779:“FUNC_REVERSE_SUBTRACT”,32819:“UNSIGNED_SHORT_4_4_4_4”,32820:“UNSIGNED_SHORT_5_5_5_1”,32823:“POLYGON_OFFSET_FILL”,32824:“POLYGON_OFFSET_FACTOR”,32854:“RGBA4”,32855:“RGB5_A1”,32873:“TEXTURE_BINDING_2D”,32926:“SAMPLE_ALPHA_TO_COVERAGE”,32928:“SAMPLE_COVERAGE”,32936:“SAMPLE_BUFFERS”,32937:“SAMPLES”,32938:“SAMPLE_COVERAGE_VALUE”,32939:“SAMPLE_COVERAGE_INVERT”,32968:“BLEND_DST_RGB”,32969:“BLEND_SRC_RGB”,32970:“BLEND_DST_ALPHA”,32971:“BLEND_SRC_ALPHA”,33071:“CLAMP_TO_EDGE”,33170:“GENERATE_MIPMAP_HINT”,33189:“DEPTH_COMPONENT16”,33306:“DEPTH_STENCIL_ATTACHMENT”,33635:“UNSIGNED_SHORT_5_6_5”,33648:“MIRRORED_REPEAT”,33901:“ALIASED_POINT_SIZE_RANGE”,33902:“ALIASED_LINE_WIDTH_RANGE”,33984:“TEXTURE0”,33985:“TEXTURE1”,33986:“TEXTURE2”,33987:“TEXTURE3”,33988:“TEXTURE4”,33989:“TEXTURE5”,33990:“TEXTURE6”,33991:“TEXTURE7”,33992:“TEXTURE8”,33993:“TEXTURE9”,33994:“TEXTURE10”,33995:“TEXTURE11”,33996:“TEXTURE12”,33997:“TEXTURE13”,33998:“TEXTURE14”,33999:“TEXTURE15”,34e3:“TEXTURE16”,34001:“TEXTURE17”,34002:“TEXTURE18”,34003:“TEXTURE19”,34004:“TEXTURE20”,34005:“TEXTURE21”,34006:“TEXTURE22”,34007:“TEXTURE23”,34008:“TEXTURE24”,34009:“TEXTURE25”,34010:“TEXTURE26”,34011:“TEXTURE27”,34012:“TEXTURE28”,34013:“TEXTURE29”,34014:“TEXTURE30”,34015:“TEXTURE31”,34016:“ACTIVE_TEXTURE”,34024:“MAX_RENDERBUFFER_SIZE”,34041:“DEPTH_STENCIL”,34055:“INCR_WRAP”,34056:“DECR_WRAP”,34067:“TEXTURE_CUBE_MAP”,34068:“TEXTURE_BINDING_CUBE_MAP”,34069:“TEXTURE_CUBE_MAP_POSITIVE_X”,34070:“TEXTURE_CUBE_MAP_NEGATIVE_X”,34071:“TEXTURE_CUBE_MAP_POSITIVE_Y”,34072:“TEXTURE_CUBE_MAP_NEGATIVE_Y”,34073:“TEXTURE_CUBE_MAP_POSITIVE_Z”,34074:“TEXTURE_CUBE_MAP_NEGATIVE_Z”,34076:“MAX_CUBE_MAP_TEXTURE_SIZE”,34338:“VERTEX_ATTRIB_ARRAY_ENABLED”,34339:“VERTEX_ATTRIB_ARRAY_SIZE”,34340:“VERTEX_ATTRIB_ARRAY_STRIDE”,34341:“VERTEX_ATTRIB_ARRAY_TYPE”,34342:“CURRENT_VERTEX_ATTRIB”,34373:“VERTEX_ATTRIB_ARRAY_POINTER”,34466:“NUM_COMPRESSED_TEXTURE_FORMATS”,34467:“COMPRESSED_TEXTURE_FORMATS”,34660:“BUFFER_SIZE”,34661:“BUFFER_USAGE”,34816:“STENCIL_BACK_FUNC”,34817:“STENCIL_BACK_FAIL”,34818:“STENCIL_BACK_PASS_DEPTH_FAIL”,34819:“STENCIL_BACK_PASS_DEPTH_PASS”,34877:“BLEND_EQUATION_ALPHA”,34921:“MAX_VERTEX_ATTRIBS”,34922:“VERTEX_ATTRIB_ARRAY_NORMALIZED”,34930:“MAX_TEXTURE_IMAGE_UNITS”,34962:“ARRAY_BUFFER”,34963:“ELEMENT_ARRAY_BUFFER”,34964:“ARRAY_BUFFER_BINDING”,34965:“ELEMENT_ARRAY_BUFFER_BINDING”,34975:“VERTEX_ATTRIB_ARRAY_BUFFER_BINDING”,35040:“STREAM_DRAW”,35044:“STATIC_DRAW”,35048:“DYNAMIC_DRAW”,35632:“FRAGMENT_SHADER”,35633:“VERTEX_SHADER”,35660:“MAX_VERTEX_TEXTURE_IMAGE_UNITS”,35661:“MAX_COMBINED_TEXTURE_IMAGE_UNITS”,35663:“SHADER_TYPE”,35664:“FLOAT_VEC2”,35665:“FLOAT_VEC3”,35666:“FLOAT_VEC4”,35667:“INT_VEC2”,35668:“INT_VEC3”,35669:“INT_VEC4”,35670:“BOOL”,35671:“BOOL_VEC2”,35672:“BOOL_VEC3”,35673:“BOOL_VEC4”,35674:“FLOAT_MAT2”,35675:“FLOAT_MAT3”,35676:“FLOAT_MAT4”,35678:“SAMPLER_2D”,35680:“SAMPLER_CUBE”,35712:“DELETE_STATUS”,35713:“COMPILE_STATUS”,35714:“LINK_STATUS”,35715:“VALIDATE_STATUS”,35716:“INFO_LOG_LENGTH”,35717:“ATTACHED_SHADERS”,35718:“ACTIVE_UNIFORMS”,35719:“ACTIVE_UNIFORM_MAX_LENGTH”,35720:“SHADER_SOURCE_LENGTH”,35721:“ACTIVE_ATTRIBUTES”,35722:“ACTIVE_ATTRIBUTE_MAX_LENGTH”,35724:“SHADING_LANGUAGE_VERSION”,35725:“CURRENT_PROGRAM”,36003:“STENCIL_BACK_REF”,36004:“STENCIL_BACK_VALUE_MASK”,36005:“STENCIL_BACK_WRITEMASK”,36006:“FRAMEBUFFER_BINDING”,36007:“RENDERBUFFER_BINDING”,36048:“FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE”,36049:“FRAMEBUFFER_ATTACHMENT_OBJECT_NAME”,36050:“FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL”,36051:“FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE”,36053:“FRAMEBUFFER_COMPLETE”,36054:“FRAMEBUFFER_INCOMPLETE_ATTACHMENT”,36055:“FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT”,36057:“FRAMEBUFFER_INCOMPLETE_DIMENSIONS”,36061:“FRAMEBUFFER_UNSUPPORTED”,36064:“COLOR_ATTACHMENT0”,36096:“DEPTH_ATTACHMENT”,36128:“STENCIL_ATTACHMENT”,36160:“FRAMEBUFFER”,36161:“RENDERBUFFER”,36162:“RENDERBUFFER_WIDTH”,36163:“RENDERBUFFER_HEIGHT”,36164:“RENDERBUFFER_INTERNAL_FORMAT”,36168:“STENCIL_INDEX8”,36176:“RENDERBUFFER_RED_SIZE”,36177:“RENDERBUFFER_GREEN_SIZE”,36178:“RENDERBUFFER_BLUE_SIZE”,36179:“RENDERBUFFER_ALPHA_SIZE”,36180:“RENDERBUFFER_DEPTH_SIZE”,36181:“RENDERBUFFER_STENCIL_SIZE”,36194:“RGB565”,36336:“LOW_FLOAT”,36337:“MEDIUM_FLOAT”,36338:“HIGH_FLOAT”,36339:“LOW_INT”,36340:“MEDIUM_INT”,36341:“HIGH_INT”,36346:“SHADER_COMPILER”,36347:“MAX_VERTEX_UNIFORM_VECTORS”,36348:“MAX_VARYING_VECTORS”,36349:“MAX_FRAGMENT_UNIFORM_VECTORS”,37440:“UNPACK_FLIP_Y_WEBGL”,37441:“UNPACK_PREMULTIPLY_ALPHA_WEBGL”,37442:“CONTEXT_LOST_WEBGL”,37443:“UNPACK_COLORSPACE_CONVERSION_WEBGL”,37444:“BROWSER_DEFAULT_WEBGL”}},{}],258:[function(t,e,r){var n=t(“./1.0/numbers”);e.exports=function(t){return n[t]}},{“./1.0/numbers”:257}],259:[function(t,e,r){“use strict”;e.exports=function(t){var e=t.gl,r=n(e),o=a(e,[{buffer:r,type:e.FLOAT,size:3,offset:0,stride:40},{buffer:r,type:e.FLOAT,size:4,offset:12,stride:40},{buffer:r,type:e.FLOAT,size:3,offset:28,stride:40}]),l=i(e);l.attributes.position.location=0,l.attributes.color.location=1,l.attributes.offset.location=2;var c=new s(e,r,o,l);return c.update(t),c};var n=t(“gl-buffer”),a=t(“gl-vao”),i=t(“./shaders/index”),o=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function s(t,e,r,n){this.gl=t,this.shader=n,this.buffer=e,this.vao=r,this.pixelRatio=1,this.bounds=[[10,10,10],[-10,-10,-10]],this.clipBounds=[[-10,-10,-10],[10,10,10]],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 l=s.prototype;function c(t,e){for(var r=0;r<3;++r)t[0][r]=Math.min(t[0][r],e[r]),t[1][r]=Math.max(t[1][r],e[r])}l.isOpaque=function(){return!this.hasAlpha},l.isTransparent=function(){return this.hasAlpha},l.drawTransparent=l.draw=function(t){var e=this.gl,r=this.shader.uniforms;this.shader.bind();var n=r.view=t.view||o,a=r.projection=t.projection||o;r.model=t.model||o,r.clipBounds=this.clipBounds,r.opacity=this.opacity;var i=n[12],s=n[13],l=n[14],c=n[15],u=(t._ortho||!1?2:1)*this.pixelRatio*(a[3]*i+a[7]*s+a[11]*l+a[15]*c)/e.drawingBufferHeight;this.vao.bind();for(var h=0;h<3;++h)e.lineWidth(this.lineWidth[h]*this.pixelRatio),r.capSize=this.capSize[h]*u,this.lineCount[h]&&e.drawArrays(e.LINES,this.lineOffset[h],this.lineCount[h]);this.vao.unbind()};var u=function(){for(var t=new Array(3),e=0;e<3;++e){for(var r=[],n=1;n<=2;++n)for(var a=-1;a<=1;a+=2){var i=[0,0,0];i[(n+e)%3]=a,r.push(i)}t[e]=r}return t}();function h(t,e,r,n){for(var a=u[n],i=0;i0)(g=u.slice())[s]+=p[1][s],a.push(u[0],u[1],u[2],d[0],d[1],d[2],d[3],0,0,0,g[0],g[1],g[2],d[0],d[1],d[2],d[3],0,0,0),c(this.bounds,g),o+=2+h(a,g,d,s)}}this.lineCount[s]=o-this.lineOffset[s]}this.buffer.update(a)}},l.dispose=function(){this.shader.dispose(),this.buffer.dispose(),this.vao.dispose()}},{“./shaders/index”:260,“gl-buffer”:253,“gl-vao”:327}],260:[function(t,e,r){“use strict”;var n=t(“glslify”),a=t(“gl-shader”),i=n([“precision highp float;\n#define GLSLIFY 1\n\nattribute vec3 position, offset;\nattribute vec4 color;\nuniform mat4 model, view, projection;\nuniform float capSize;\nvarying vec4 fragColor;\nvarying vec3 fragPosition;\n\nvoid main() {\n vec4 worldPosition = model * vec4(position, 1.0);\n worldPosition = (worldPosition / worldPosition.w) + vec4(capSize * offset, 0.0);\n gl_Position = projection * view * worldPosition;\n fragColor = color;\n fragPosition = position;\n}“]),o=n([“precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float opacity;\nvarying vec3 fragPosition;\nvarying vec4 fragColor;\n\nvoid main() {\n if (\n outOfRange(clipBounds[0], clipBounds[1], fragPosition) ||\n fragColor.a * opacity == 0.\n ) discard;\n\n gl_FragColor = opacity * fragColor;\n}“]);e.exports=function(t){return a(t,i,o,null,[{name:“position”,type:“vec3”},{name:“color”,type:“vec4”},{name:“offset”,type:“vec3”}])}},{“gl-shader”:307,glslify:408}],261:[function(t,e,r){“use strict”;var n=t(“gl-texture2d”);e.exports=function(t,e,r,n){a||(a=t.FRAMEBUFFER_UNSUPPORTED,i=t.FRAMEBUFFER_INCOMPLETE_ATTACHMENT,o=t.FRAMEBUFFER_INCOMPLETE_DIMENSIONS,s=t.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT);var c=t.getExtension(“WEBGL_draw_buffers”);!l&&c&&function(t,e){var r=t.getParameter(e.MAX_COLOR_ATTACHMENTS_WEBGL);l=new Array(r+1);for(var n=0;n<=r;++n){for(var a=new Array®,i=0;iu||r<0||r>u)throw new Error(“gl-fbo: Parameters are too large for FBO”);var h=1;if(“color”in(n=n||{})){if((h=Math.max(0|n.color,0))<0)throw new Error("gl-fbo: Must specify a nonnegative number of colors");if(h>1){if(!c)throw new Error(“gl-fbo: Multiple draw buffer extension not supported”);if(h>t.getParameter(c.MAX_COLOR_ATTACHMENTS_WEBGL))throw new Error(“gl-fbo: Context does not support “+h+” draw buffers”)}}var f=t.UNSIGNED_BYTE,p=t.getExtension(“OES_texture_float”);if(n.float&&h>0){if(!p)throw new Error(“gl-fbo: Context does not support floating point textures”);f=t.FLOAT}else n.preferFloat&&h>0&&p&&(f=t.FLOAT);var g=!0;“depth”in n&&(g=!!n.depth);var m=!1;“stencil”in n&&(m=!!n.stencil);return new d(t,e,r,f,h,g,m,c)};var a,i,o,s,l=null;function c(t){return[t.getParameter(t.FRAMEBUFFER_BINDING),t.getParameter(t.RENDERBUFFER_BINDING),t.getParameter(t.TEXTURE_BINDING_2D)]}function u(t,e){t.bindFramebuffer(t.FRAMEBUFFER,e[0]),t.bindRenderbuffer(t.RENDERBUFFER,e[1]),t.bindTexture(t.TEXTURE_2D,e[2])}function h(t){switch(t){case a:throw new Error(“gl-fbo: Framebuffer unsupported”);case i:throw new Error(“gl-fbo: Framebuffer incomplete attachment”);case o:throw new Error(“gl-fbo: Framebuffer incomplete dimensions”);case s:throw new Error(“gl-fbo: Framebuffer incomplete missing attachment”);default:throw new Error(“gl-fbo: Framebuffer failed for unspecified reason”)}}function f(t,e,r,a,i,o){if(!a)return null;var s=n(t,e,r,i,a);return s.magFilter=t.NEAREST,s.minFilter=t.NEAREST,s.mipSamples=1,s.bind(),t.framebufferTexture2D(t.FRAMEBUFFER,o,t.TEXTURE_2D,s.handle,0),s}function p(t,e,r,n,a){var i=t.createRenderbuffer();return t.bindRenderbuffer(t.RENDERBUFFER,i),t.renderbufferStorage(t.RENDERBUFFER,n,e,r),t.framebufferRenderbuffer(t.FRAMEBUFFER,a,t.RENDERBUFFER,i),i}function d(t,e,r,n,a,i,o,s){this.gl=t,this._shape=[0|e,0|r],this._destroyed=!1,this._ext=s,this.color=new Array(a);for(var d=0;d1&&s.drawBuffersWEBGL(l[o]);var y=r.getExtension(“WEBGL_depth_texture”);y?d?t.depth=f(r,a,i,y.UNSIGNED_INT_24_8_WEBGL,r.DEPTH_STENCIL,r.DEPTH_STENCIL_ATTACHMENT):g&&(t.depth=f(r,a,i,r.UNSIGNED_SHORT,r.DEPTH_COMPONENT,r.DEPTH_ATTACHMENT)):g&&d?t._depth_rb=p(r,a,i,r.DEPTH_STENCIL,r.DEPTH_STENCIL_ATTACHMENT):g?t._depth_rb=p(r,a,i,r.DEPTH_COMPONENT16,r.DEPTH_ATTACHMENT):d&&(t._depth_rb=p(r,a,i,r.STENCIL_INDEX,r.STENCIL_ATTACHMENT));var x=r.checkFramebufferStatus(r.FRAMEBUFFER);if(x!==r.FRAMEBUFFER_COMPLETE){t._destroyed=!0,r.bindFramebuffer(r.FRAMEBUFFER,null),r.deleteFramebuffer(t.handle),t.handle=null,t.depth&&(t.depth.dispose(),t.depth=null),t._depth_rb&&(r.deleteRenderbuffer(t._depth_rb),t._depth_rb=null);for(v=0;va||r<0||r>a)throw new Error(“gl-fbo: Can’t resize FBO, invalid dimensions”);t._shape[0]=e,t._shape[1]=r;for(var i=c(n),o=0;o>8*p&255;this.pickOffset=r,a.bind();var d=a.uniforms;d.viewTransform=t,d.pickOffset=e,d.shape=this.shape;var g=a.attributes;return this.positionBuffer.bind(),g.position.pointer(),this.weightBuffer.bind(),g.weight.pointer(s.UNSIGNED_BYTE,!1),this.idBuffer.bind(),g.pickId.pointer(s.UNSIGNEDBYTE,!1),s.drawArrays(s.TRIANGLES,0,o),r+this.shape[0]*this.shape[1]}}}(),h.pick=function(t,e,r){var n=this.pickOffset,a=this.shape[0]*this.shape[1];if(r=n+a)return null;var i=r-n,o=this.xData,s=this.yData;return{object:this,pointId:i,dataCoord:[o[i%this.shape[0]],s[i/this.shape[0]|0]]}},h.update=function(t){var e=(t=t||{}).shape||[0,0],r=t.x||a(e[0]),o=t.y||a(e[1]),s=t.z||new Float32Array(e[0]e[1]);this.xData=r,this.yData=o;var l=t.colorLevels||[0],c=t.colorValues||[0,0,0,1],u=l.length,h=this.bounds,p=h[0]=r[0],d=h[1]=o[0],g=1/((h[2]=r[r.length-1])-p),m=1/((h[3]=o[o.length-1])-d),v=e[0],y=e[1];this.shape=[v,y];var x=(v-1)(y-1)*(f.length>>>1);this.numVertices=x;for(var b=i.mallocUint8(4*x),=i.mallocFloat32(2*x),w=i.mallocUint8(2x),T=i.mallocUint32(x),k=0,A=0;A<y-1;++A)for(var M=m(o[A]-d),S=m(o[A+1]-d),E=0;E<v-1;++E)for(var C=g(r[E]-p),L=g*(r[E+1]-p),P=0;P max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform sampler2D dashTexture;\nuniform float dashScale;\nuniform float opacity;\n\nvarying vec3 worldPosition;\nvarying float pixelArcLength;\nvarying vec4 fragColor;\n\nvoid main() {\n if (\n outOfRange(clipBounds[0], clipBounds[1], worldPosition) ||\n fragColor.a * opacity == 0.\n ) discard;\n\n float dashWeight = texture2D(dashTexture, vec2(dashScale * pixelArcLength, 0)).r;\n if(dashWeight < 0.5) {\n discard;\n }\n gl_FragColor = fragColor * opacity;\n}\n”]),s=n([“precision highp float;\n#define GLSLIFY 1\n\n#define FLOAT_MAX 1.70141184e38\n#define FLOAT_MIN 1.17549435e-38\n\n// https://github.com/mikolalysenko/glsl-read-float/blob/master/index.glslnvec4 packFloat(float v) {\n float av = abs(v);\n\n //Handle special cases\n if(av < FLOAT_MIN) {\n return vec4(0.0, 0.0, 0.0, 0.0);\n } else if(v > FLOAT_MAX) {\n return vec4(127.0, 128.0, 0.0, 0.0) / 255.0;\n } else if(v < -FLOAT_MAX) {\n return vec4(255.0, 128.0, 0.0, 0.0) / 255.0;\n }\n\n vec4 c = vec4(0,0,0,0);\n\n //Compute exponent and mantissa\n float e = floor(log2(av));\n float m = av * pow(2.0, -e) - 1.0;\n\n //Unpack mantissa\n c[1] = floor(128.0 * m);\n m -= c[1] / 128.0;\n c[2] = floor(32768.0 * m);\n m -= c[2] / 32768.0;\n c[3] = floor(8388608.0 * m);\n\n //Unpack exponent\n float ebias = e + 127.0;\n c[0] = floor(ebias / 2.0);\n ebias -= c[0] * 2.0;\n c[1] += floor(ebias) * 128.0;\n\n //Unpack sign bit\n c[0] += 128.0 * step(0.0, -v);\n\n //Scale back to range\n return c / 255.0;\n}\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform float pickId;\nuniform vec3 clipBounds[2];\n\nvarying vec3 worldPosition;\nvarying float pixelArcLength;\nvarying vec4 fragColor;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], worldPosition)) discard;\n\n gl_FragColor = vec4(pickId/255.0, packFloat(pixelArcLength).xyz);\n}“]),l=[{name:“position”,type:“vec3”},{name:“nextPosition”,type:“vec3”},{name:“arcLength”,type:“float”},{name:“lineWidth”,type:“float”},{name:“color”,type:“vec4”}];r.createShader=function(t){return a(t,i,o,null,l)},r.createPickShader=function(t){return a(t,i,s,null,l)}},{“gl-shader”:307,glslify:408}],266:[function(t,e,r){“use strict”;e.exports=function(t){var e=t.gl||t.scene&&t.scene.gl,r=h(e);r.attributes.position.location=0,r.attributes.nextPosition.location=1,r.attributes.arcLength.location=2,r.attributes.lineWidth.location=3,r.attributes.color.location=4;var o=f(e);o.attributes.position.location=0,o.attributes.nextPosition.location=1,o.attributes.arcLength.location=2,o.attributes.lineWidth.location=3,o.attributes.color.location=4;for(var s=n(e),l=a(e,[{buffer:s,size:3,offset:0,stride:48},{buffer:s,size:3,offset:12,stride:48},{buffer:s,size:1,offset:24,stride:48},{buffer:s,size:1,offset:28,stride:48},{buffer:s,size:4,offset:32,stride:48}]),u=c(new Array(1024),[256,1,4]),p=0;p<1024;++p)u.data[p]=255;var d=i(e,u);d.wrap=e.REPEAT;var g=new v(e,r,o,s,l,d);return g.update(t),g};var n=t("gl-buffer"),a=t("gl-vao"),i=t("gl-texture2d"),o=new Uint8Array(4),s=new Float32Array(o.buffer);var l=t("binary-search-bounds"),c=t("ndarray"),u=t("./lib/shaders"),h=u.createShader,f=u.createPickShader,p=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function d(t,e){for(var r=0,n=0;n<3;++n){var a=t[n]-e[n];r+=a*a}return Math.sqrt(r)}function g(t){for(var e=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],r=0;r<3;++r)e[0][r]=Math.max(t[0][r],e[0][r]),e[1][r]=Math.min(t[1][r],e[1][r]);return e}function m(t,e,r,n){this.arcLength=t,this.position=e,this.index=r,this.dataCoordinate=n}function v(t,e,r,n,a,i){this.gl=t,this.shader=e,this.pickShader=r,this.buffer=n,this.vao=a,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.points=[],this.arcLength=[],this.vertexCount=0,this.bounds=[[0,0,0],[0,0,0]],this.pickId=0,this.lineWidth=1,this.texture=i,this.dashScale=1,this.opacity=1,this.hasAlpha=!1,this.dirty=!0,this.pixelRatio=1}var y=v.prototype;y.isTransparent=function(){return this.hasAlpha},y.isOpaque=function(){return!this.hasAlpha},y.pickSlots=1,y.setPickBase=function(t){this.pickId=t},y.drawTransparent=y.draw=function(t){if(this.vertexCount){var e=this.gl,r=this.shader,n=this.vao;r.bind(),r.uniforms={model:t.model||p,view:t.view||p,projection:t.projection||p,clipBounds:g(this.clipBounds),dashTexture:this.texture.bind(),dashScale:this.dashScale/this.arcLength[this.arcLength.length-1],opacity:this.opacity,screenShape:[e.drawingBufferWidth,e.drawingBufferHeight],pixelRatio:this.pixelRatio},n.bind(),n.draw(e.TRIANGLE_STRIP,this.vertexCount),n.unbind()}},y.drawPick=function(t){if(this.vertexCount){var e=this.gl,r=this.pickShader,n=this.vao;r.bind(),r.uniforms={model:t.model||p,view:t.view||p,projection:t.projection||p,pickId:this.pickId,clipBounds:g(this.clipBounds),screenShape:[e.drawingBufferWidth,e.drawingBufferHeight],pixelRatio:this.pixelRatio},n.bind(),n.draw(e.TRIANGLE_STRIP,this.vertexCount),n.unbind()}},y.update=function(t){var e,r;this.dirty=!0;var n=!!t.connectGaps;"dashScale"in t&&(this.dashScale=t.dashScale),this.hasAlpha=!1,"opacity"in t&&(this.opacity=+t.opacity,this.opacity<1&&(this.hasAlpha=!0));var a=[],i=[],o=[],s=0,u=0,h=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],f=t.position||t.positions;if(f){var p=t.color||t.colors||[0,0,0,1],g=t.lineWidth||1,m=!1;t:for(e=1;e0){for(var w=0;w<24;++w)a.push(a[a.length-12]);u+=2,m=!0}continue t}h[0][r]=Math.min(h[0][r],b[r],_[r]),h[1][r]=Math.max(h[1][r],b[r],_[r])}Array.isArray(p[0])?(v=p.length>e-1?p[e-1]:p.length>0?p[p.length-1]:[0,0,0,1],y=p.length>e?p[e]:p.length>0?p[p.length-1]:[0,0,0,1]):v=y=p,3===v.length&&(v=[v[0],v[1],v[2],1]),3===y.length&&(y=[y[0],y[1],y[2],1]),!this.hasAlpha&&v[3]<1&&(this.hasAlpha=!0),x=Array.isArray(g)?g.length>e-1?g[e-1]:g.length>0?g[g.length-1]:[0,0,0,1]:g;var T=s;if(s+=d(b,),m){for(r=0;r<2;++r)a.push(b[0],b[1],b[2],[0],[1],[2],T,x,v[0],v[1],v[2],v[3]);u+=2,m=!1}a.push(b[0],b[1],b[2],[0],[1],[2],T,x,v[0],v[1],v[2],v[3],b[0],b[1],b[2],[0],[1],[2],T,-x,v[0],v[1],v[2],v[3],[0],[1],[2],b[0],b[1],b[2],s,-x,y[0],y[1],y[2],y[3],[0],[1],[2],b[0],b[1],b[2],s,x,y[0],y[1],y[2],y[3]),u+=4}}if(this.buffer.update(a),i.push(s),o.push(f[f.length-1].slice()),this.bounds=h,this.vertexCount=u,this.points=o,this.arcLength=i,“dashes”in t){var k=t.dashes.slice();for(k.unshift(0),e=1;e1.0001)return null;v+=m[h]}if(Math.abs(v-1)>.001)return null;return[f,s(t,m),m]}},{barycentric:76,“polytope-closest-point/lib/closest_point_2d.js”:479}],286:[function(t,e,r){var n=t(“glslify”),a=n([“precision highp float;\n#define GLSLIFY 1\n\nattribute vec3 position, normal;\nattribute vec4 color;\nattribute vec2 uv;\n\nuniform mat4 model\n , view\n , projection\n , inverseModel;\nuniform vec3 eyePosition\n , lightPosition;\n\nvarying vec3 f_normal\n , f_lightDirection\n , f_eyeDirection\n , f_data;\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvec4 project(vec3 p) {\n return projection * view * model * vec4(p, 1.0);\n}\n\nvoid main() {\n gl_Position = project(position);\n\n //Lighting geometry parameters\n vec4 cameraCoordinate = view * vec4(position , 1.0);\n cameraCoordinate.xyz /= cameraCoordinate.w;\n f_lightDirection = lightPosition - cameraCoordinate.xyz;\n f_eyeDirection = eyePosition - cameraCoordinate.xyz;\n f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz);\n\n f_color = color;\n f_data = position;\n f_uv = uv;\n}\n”]),i=n([“#extension GL_OES_standard_derivatives : enable\n\nprecision highp float;\n#define GLSLIFY 1\n\nfloat beckmannDistribution(float x, float roughness) {\n float NdotH = max(x, 0.0001);\n float cos2Alpha = NdotH * NdotH;\n float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;\n float roughness2 = roughness * roughness;\n float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;\n return exp(tan2Alpha / roughness2) / denom;\n}\n\nfloat cookTorranceSpecular(\n vec3 lightDirection,\n vec3 viewDirection,\n vec3 surfaceNormal,\n float roughness,\n float fresnel) {\n\n float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);\n float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);\n\n //Half angle vector\n vec3 H = normalize(lightDirection + viewDirection);\n\n //Geometric term\n float NdotH = max(dot(surfaceNormal, H), 0.0);\n float VdotH = max(dot(viewDirection, H), 0.000001);\n float LdotH = max(dot(lightDirection, H), 0.000001);\n float G1 = (2.0 * NdotH * VdotN) / VdotH;\n float G2 = (2.0 * NdotH * LdotN) / LdotH;\n float G = min(1.0, min(G1, G2));\n \n //Distribution term\n float D = beckmannDistribution(NdotH, roughness);\n\n //Fresnel term\n float F = pow(1.0 - VdotN, fresnel);\n\n //Multiply terms and done\n return G * F * D / max(3.14159265 * VdotN, 0.000001);\n}\n\n//#pragma glslify: beckmann = require(glsl-specular-beckmann) // used in gl-surface3d\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float roughness\n , fresnel\n , kambient\n , kdiffuse\n , kspecular;\nuniform sampler2D texture;\n\nvarying vec3 f_normal\n , f_lightDirection\n , f_eyeDirection\n , f_data;\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n if (f_color.a == 0.0 ||\n outOfRange(clipBounds[0], clipBounds[1], f_data)\n ) discard;\n\n vec3 N = normalize(f_normal);\n vec3 L = normalize(f_lightDirection);\n vec3 V = normalize(f_eyeDirection);\n\n if(gl_FrontFacing) {\n N = -N;\n }\n\n float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));\n //float specular = max(0.0, beckmann(L, V, N, roughness)); // used in gl-surface3d\n\n float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);\n\n vec4 surfaceColor = vec4(f_color.rgb, 1.0) * texture2D(texture, f_uv);\n vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);\n\n gl_FragColor = litColor * f_color.a;\n}\n”]),o=n([“precision highp float;\n#define GLSLIFY 1\n\nattribute vec3 position;\nattribute vec4 color;\nattribute vec2 uv;\n\nuniform mat4 model, view, projection;\n\nvarying vec4 f_color;\nvarying vec3 f_data;\nvarying vec2 f_uv;\n\nvoid main() {\n gl_Position = projection * view * model * vec4(position, 1.0);\n f_color = color;\n f_data = position;\n f_uv = uv;\n}“]),s=n([“precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform sampler2D texture;\nuniform float opacity;\n\nvarying vec4 f_color;\nvarying vec3 f_data;\nvarying vec2 f_uv;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], f_data)) discard;\n\n gl_FragColor = f_color * texture2D(texture, f_uv) * opacity;\n}“]),l=n([“precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nattribute vec3 position;\nattribute vec4 color;\nattribute vec2 uv;\nattribute float pointSize;\n\nuniform mat4 model, view, projection;\nuniform vec3 clipBounds[2];\n\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], position)) {\n\n gl_Position = vec4(0.0, 0.0 ,0.0 ,0.0);\n } else {\n gl_Position = projection * view * model * vec4(position, 1.0);\n }\n gl_PointSize = pointSize;\n f_color = color;\n f_uv = uv;\n}“]),c=n([“precision highp float;\n#define GLSLIFY 1\n\nuniform sampler2D texture;\nuniform float opacity;\n\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n vec2 pointR = gl_PointCoord.xy - vec2(0.5, 0.5);\n if(dot(pointR, pointR) > 0.25) {\n discard;\n }\n gl_FragColor = f_color * texture2D(texture, f_uv) * opacity;\n}“]),u=n([“precision highp float;\n#define GLSLIFY 1\n\nattribute vec3 position;\nattribute vec4 id;\n\nuniform mat4 model, view, projection;\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n gl_Position = projection * view * model * vec4(position, 1.0);\n f_id = id;\n f_position = position;\n}“]),h=n([“precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float pickId;\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\n\n gl_FragColor = vec4(pickId, f_id.xyz);\n}“]),f=n([“precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nattribute vec3 position;\nattribute float pointSize;\nattribute vec4 id;\n\nuniform mat4 model, view, projection;\nuniform vec3 clipBounds[2];\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], position)) {\n\n gl_Position = vec4(0.0, 0.0, 0.0, 0.0);\n } else {\n gl_Position = projection * view * model * vec4(position, 1.0);\n gl_PointSize = pointSize;\n }\n f_id = id;\n f_position = position;\n}“]),p=n([“precision highp float;\n#define GLSLIFY 1\n\nattribute vec3 position;\n\nuniform mat4 model, view, projection;\n\nvoid main() {\n gl_Position = projection * view * model * vec4(position, 1.0);\n}“]),d=n([“precision highp float;\n#define GLSLIFY 1\n\nuniform vec3 contourColor;\n\nvoid main() {\n glFragColor = vec4(contourColor, 1.0);\n}\n”]);r.meshShader={vertex:a,fragment:i,attributes:[{name:“position”,type:“vec3”},{name:“normal”,type:“vec3”},{name:“color”,type:“vec4”},{name:“uv”,type:“vec2”}]},r.wireShader={vertex:o,fragment:s,attributes:[{name:“position”,type:“vec3”},{name:“color”,type:“vec4”},{name:“uv”,type:“vec2”}]},r.pointShader={vertex:l,fragment:c,attributes:[{name:“position”,type:“vec3”},{name:“color”,type:“vec4”},{name:“uv”,type:“vec2”},{name:“pointSize”,type:“float”}]},r.pickShader={vertex:u,fragment:h,attributes:[{name:“position”,type:“vec3”},{name:“id”,type:“vec4”}]},r.pointPickShader={vertex:f,fragment:h,attributes:[{name:“position”,type:“vec3”},{name:“pointSize”,type:“float”},{name:“id”,type:“vec4”}]},r.contourShader={vertex:p,fragment:d,attributes:[{name:“position”,type:“vec3”}]}},{glslify:408}],287:[function(t,e,r){“use strict”;var n=t(“gl-shader”),a=t(“gl-buffer”),i=t(“gl-vao”),o=t(“gl-texture2d”),s=t(“normals”),l=t(“gl-mat4/multiply”),c=t(“gl-mat4/invert”),u=t(“ndarray”),h=t(“colormap”),f=t(“simplicial-complex-contour”),p=t(“typedarray-pool”),d=t(“./lib/shaders”),g=t(“./lib/closest-point”),m=d.meshShader,v=d.wireShader,y=d.pointShader,x=d.pickShader,b=d.pointPickShader,=d.contourShader,w=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function T(t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g,m,v,y,x,b,,T,k,A,M,S){this.gl=t,this.pixelRatio=1,this.cells=[],this.positions=[],this.intensity=[],this.texture=e,this.dirty=!0,this.triShader=r,this.lineShader=n,this.pointShader=a,this.pickShader=i,this.pointPickShader=o,this.contourShader=s,this.trianglePositions=l,this.triangleColors=u,this.triangleNormals=f,this.triangleUVs=h,this.triangleIds=c,this.triangleVAO=p,this.triangleCount=0,this.lineWidth=1,this.edgePositions=d,this.edgeColors=m,this.edgeUVs=v,this.edgeIds=g,this.edgeVAO=y,this.edgeCount=0,this.pointPositions=x,this.pointColors=,this.pointUVs=T,this.pointSizes=k,this.pointIds=b,this.pointVAO=A,this.pointCount=0,this.contourLineWidth=1,this.contourPositions=M,this.contourVAO=S,this.contourCount=0,this.contourColor=[0,0,0],this.contourEnable=!0,this.pickVertex=!0,this.pickId=1,this.bounds=[[10,10,10],[-10,-10,-10]],this.clipBounds=[[-10,-10,-10],[10,10,10]],this.lightPosition=[1e5,1e5,0],this.ambientLight=.8,this.diffuseLight=.8,this.specularLight=2,this.roughness=.5,this.fresnel=1.5,this.opacity=1,this.hasAlpha=!1,this.opacityscale=!1,this._model=w,this._view=w,this._projection=w,this.resolution=[1,1]}var k=T.prototype;function A(t,e){if(!e)return 1;if(!e.length)return 1;for(var r=0;rt&&r>0){var n=(e[r][0]-t)/(e[r][0]-e[r-1][0]);return e[r][1]*(1-n)+n*e[r-1][1]}}return 1}function M(t){var e=n(t,m.vertex,m.fragment);return e.attributes.position.location=0,e.attributes.color.location=2,e.attributes.uv.location=3,e.attributes.normal.location=4,e}function S(t){var e=n(t,v.vertex,v.fragment);return e.attributes.position.location=0,e.attributes.color.location=2,e.attributes.uv.location=3,e}function E(t){var e=n(t,y.vertex,y.fragment);return e.attributes.position.location=0,e.attributes.color.location=2,e.attributes.uv.location=3,e.attributes.pointSize.location=4,e}function C(t){var e=n(t,x.vertex,x.fragment);return e.attributes.position.location=0,e.attributes.id.location=1,e}function L(t){var e=n(t,b.vertex,b.fragment);return e.attributes.position.location=0,e.attributes.id.location=1,e.attributes.pointSize.location=4,e}function P(t){var e=n(t,.vertex,_.fragment);return e.attributes.position.location=0,e}k.isOpaque=function(){return!this.hasAlpha},k.isTransparent=function(){return this.hasAlpha},k.pickSlots=1,k.setPickBase=function(t){this.pickId=t},k.highlight=function(t){if(t&&this.contourEnable){for(var e=f(this.cells,this.intensity,t.intensity),r=e.cells,n=e.vertexIds,a=e.vertexWeights,i=r.length,o=p.mallocFloat32(6*i),s=0,l=0;l0&&((h=this.triShader).bind(),h.uniforms=s,this.triangleVAO.bind(),e.drawArrays(e.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind());this.edgeCount>0&&this.lineWidth>0&&((h=this.lineShader).bind(),h.uniforms=s,this.edgeVAO.bind(),e.lineWidth(this.lineWidth*this.pixelRatio),e.drawArrays(e.LINES,0,2*this.edgeCount),this.edgeVAO.unbind());this.pointCount>0&&((h=this.pointShader).bind(),h.uniforms=s,this.pointVAO.bind(),e.drawArrays(e.POINTS,0,this.pointCount),this.pointVAO.unbind());this.contourEnable&&this.contourCount>0&&this.contourLineWidth>0&&((h=this.contourShader).bind(),h.uniforms=s,this.contourVAO.bind(),e.drawArrays(e.LINES,0,this.contourCount),this.contourVAO.unbind())},k.drawPick=function(t){t=t||{};for(var e=this.gl,r=t.model||w,n=t.view||w,a=t.projection||w,i=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],o=0;o<3;++o)i[0][o]=Math.max(i[0][o],this.clipBounds[0][o]),i[1][o]=Math.min(i[1][o],this.clipBounds[1][o]);this._model=[].slice.call(r),this._view=[].slice.call(n),this._projection=[].slice.call(a),this._resolution=[e.drawingBufferWidth,e.drawingBufferHeight];var s,l={model:r,view:n,projection:a,clipBounds:i,pickId:this.pickId/255};((s=this.pickShader).bind(),s.uniforms=l,this.triangleCount>0&&(this.triangleVAO.bind(),e.drawArrays(e.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()),this.edgeCount>0&&(this.edgeVAO.bind(),e.lineWidth(this.lineWidth*this.pixelRatio),e.drawArrays(e.LINES,0,2*this.edgeCount),this.edgeVAO.unbind()),this.pointCount>0)&&((s=this.pointPickShader).bind(),s.uniforms=l,this.pointVAO.bind(),e.drawArrays(e.POINTS,0,this.pointCount),this.pointVAO.unbind())},k.pick=function(t){if(!t)return null;if(t.id!==this.pickId)return null;for(var e=t.value[0]+256*t.value[1]+65536*t.value[2],r=this.cells[e],n=this.positions,a=new Array(r.length),i=0;ia[k]&&(r.uniforms.dataAxis=c,r.uniforms.screenOffset=u,r.uniforms.color=m[t],r.uniforms.angle=v[t],i.drawArrays(i.TRIANGLES,a[k],a[A]-a[k]))),y[t]&&T&&(u[1^t]-=M*p*x[t],r.uniforms.dataAxis=h,r.uniforms.screenOffset=u,r.uniforms.color=b[t],r.uniforms.angle=[t],i.drawArrays(i.TRIANGLES,w,T)),u[1^t]=M*s[2+(1^t)]-1,d[t+2]&&(u[1^t]+=M*p*g[t+2],ka[k]&&(r.uniforms.dataAxis=c,r.uniforms.screenOffset=u,r.uniforms.color=m[t+2],r.uniforms.angle=v[t+2],i.drawArrays(i.TRIANGLES,a[k],a[A]-a[k]))),y[t+2]&&T&&(u[1^t]+=M*p*x[t+2],r.uniforms.dataAxis=h,r.uniforms.screenOffset=u,r.uniforms.color=b[t+2],r.uniforms.angle=[t+2],i.drawArrays(i.TRIANGLES,w,T))}),g.drawTitle=function(){var t=[0,0],e=[0,0];return function(){var r=this.plot,n=this.shader,a=r.gl,i=r.screenBox,o=r.titleCenter,s=r.titleAngle,l=r.titleColor,c=r.pixelRatio;if(this.titleCount){for(var u=0;u<2;++u)e[u]=2*(o[u]*c-i[u])/(i[2+u]-i[u])-1;n.bind(),n.uniforms.dataAxis=t,n.uniforms.screenOffset=e,n.uniforms.angle=s,n.uniforms.color=l,a.drawArrays(a.TRIANGLES,this.titleOffset,this.titleCount)}}}(),g.bind=(f=[0,0],p=[0,0],d=[0,0],function(){var t=this.plot,e=this.shader,r=t._tickBounds,n=t.dataBox,a=t.screenBox,i=t.viewBox;e.bind();for(var o=0;o<2;++o){var s=r[o],l=r[o+2]-s,c=.5*(n[o+2]+n[o]),u=n[o+2]-n[o],h=i[o],g=i[o+2]-h,m=a[o],v=a[o+2]-m;p[o]=2*l/u*g/v,f[o]=2*(s-c)/u*g/v}d[1]=2*t.pixelRatio/(a[3]-a[1]),d[0]=d[1]*(a[3]-a[1])/(a[2]-a[0]),e.uniforms.dataScale=p,e.uniforms.dataShift=f,e.uniforms.textScale=d,this.vbo.bind(),e.attributes.textCoordinate.pointer()}),g.update=function(t){var e,r,n,a,o,s=[],l=t.ticks,c=t.bounds;for(o=0;o<2;++o){var u=[Math.floor(s.length/3)],h=[-1/0],f=l[o];for(e=0;e=0){var g=e[d]-n[d]*(e[d+2]-e[d])/(n[d+2]-n[d]);0===d?o.drawLine(g,e[1],g,e[3],p[d],f[d]):o.drawLine(e[0],g,e[2],g,p[d],f[d])}}for(d=0;d=0;–t)this.objects[t].dispose();this.objects.length=0;for(t=this.overlays.length-1;t>=0;–t)this.overlays[t].dispose();this.overlays.length=0,this.gl=null},c.addObject=function(t){this.objects.indexOf(t)<0&&(this.objects.push(t),this.setDirty())},c.removeObject=function(t){for(var e=this.objects,r=0;rMath.abs(e))c.rotate(i,0,0,-t*r*Math.PI*d.rotateSpeed/window.innerWidth);else if(!d._ortho){var o=-d.zoomSpeed*ae/window.innerHeight(i-c.lastT())/20;c.pan(i,0,0,h*(Math.exp(o)-1))}}}),!0)},d.enableMouseListeners(),d};var n=t(“right-now”),a=t(“3d-view”),i=t(“mouse-change”),o=t(“mouse-wheel”),s=t(“mouse-event-offset”),l=t(“has-passive-events”)},{“3d-view”:54,“has-passive-events”:410,“mouse-change”:436,“mouse-event-offset”:437,“mouse-wheel”:439,“right-now”:494}],295:[function(t,e,r){var n=t(“glslify”),a=t(“gl-shader”),i=n([“precision mediump float;\n#define GLSLIFY 1\nattribute vec2 position;\nvarying vec2 uv;\nvoid main() {\n uv = position;\n gl_Position = vec4(position, 0, 1);\n}“]),o=n([“precision mediump float;\n#define GLSLIFY 1\n\nuniform sampler2D accumBuffer;\nvarying vec2 uv;\n\nvoid main() {\n vec4 accum = texture2D(accumBuffer, 0.5 * (uv + 1.0));\n glFragColor = min(vec4(1,1,1,1), accum);\n}“]);e.exports=function(t){return a(t,i,o,null,[{name:“position”,type:“vec2”}])}},{“gl-shader”:307,glslify:408}],296:[function(t,e,r){“use strict”;var n=t(“./camera.js”),a=t(“gl-axes3d”),i=t(“gl-axes3d/properties”),o=t(“gl-spikes3d”),s=t(“gl-select-static”),l=t(“gl-fbo”),c=t(“a-big-triangle”),u=t(“mouse-change”),h=t(“gl-mat4/perspective”),f=t(“gl-mat4/ortho”),p=t(“./lib/shader”),d=t(“is-mobile”)({tablet:!0,featureDetect:!0});function g(){this.mouse=[-1,-1],this.screen=null,this.distance=10,this.index=null,this.dataCoordinate=null,this.dataPosition=null,this.object=null,this.data=null}function m(t){var e=Math.round(Math.log(Math.abs(t))/Math.log(10));if(e<0){var r=Math.round(Math.pow(10,-e));return Math.ceil(t*r)/r}if(e>0){r=Math.round(Math.pow(10,e));return Math.ceil(t/r)*r}return Math.ceil(t)}function v(t){return”boolean”!=typeof t||t}e.exports={createScene:function(t){(t=t||{}).camera=t.camera||{};var e=t.canvas;if(!e){if(e=document.createElement(“canvas”),t.container)t.container.appendChild(e);else document.body.appendChild(e)}var r=t.gl;r||(t.glOptions&&(d=!!t.glOptions.preserveDrawingBuffer),r=function(t,e){var r=null;try{(r=t.getContext(“webgl”,e))||(r=t.getContext(“experimental-webgl”,e))}catch(t){return null}return r}(e,t.glOptions||{premultipliedAlpha:!0,antialias:!0,preserveDrawingBuffer:d}));if(!r)throw new Error(“webgl not supported”);var y=t.bounds||[[-10,-10,-10],[10,10,10]],x=new g,b=l(r,r.drawingBufferWidth,r.drawingBufferHeight,{preferFloat:!d}),=p®,w=t.cameraObject&&!0===t.cameraObject._ortho||t.camera.projection&&“orthographic”===t.camera.projection.type||!1,T={eye:t.camera.eye||[2,0,0],center:t.camera.center||[0,0,0],up:t.camera.up||[0,1,0],zoomMin:t.camera.zoomMax||.1,zoomMax:t.camera.zoomMin||100,mode:t.camera.mode||“turntable”,_ortho:w},k=t.axes||{},A=a(r,k);A.enable=!k.disable;var M=t.spikes||{},S=o(r,M),E=[],C=[],L=[],P=[],I=!0,z=!0,O=new Array(16),D=new Array(16),R={view:null,projection:O,model:D,_ortho:!1},F=(z=!0,[r.drawingBufferWidth,r.drawingBufferHeight]),B=t.cameraObject||n(e,T),N={gl:r,contextLost:!1,pixelRatio:t.pixelRatio||1,canvas:e,selection:x,camera:B,axes:A,axesPixels:null,spikes:S,bounds:y,objects:E,shape:F,aspect:t.aspectRatio||[1,1,1],pickRadius:t.pickRadius||10,zNear:t.zNear||.01,zFar:t.zFar||1e3,fovy:t.fovy||Math.PI/4,clearColor:t.clearColor||[0,0,0,0],autoResize:v(t.autoResize),autoBounds:v(t.autoBounds),autoScale:!!t.autoScale,autoCenter:v(t.autoCenter),clipToBounds:v(t.clipToBounds),snapToData:!!t.snapToData,onselect:t.onselect||null,onrender:t.onrender||null,onclick:t.onclick||null,cameraParams:R,oncontextloss:null,mouseListener:null,_stopped:!1,getAspectratio:function(){return{x:this.aspect[0],y:this.aspect[1],z:this.aspect[2]}},setAspectratio:function(t){this.aspect[0]=t.x,this.aspect[1]=t.y,this.aspect[2]=t.z,z=!0},setBounds:function(t,e){this.bounds[0][t]=e.min,this.bounds[1][t]=e.max},setClearColor:function(t){this.clearColor=t},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)}},j=[r.drawingBufferWidth/N.pixelRatio|0,r.drawingBufferHeight/N.pixelRatio|0];function V(){if(!N._stopped&&N.autoResize){var t=e.parentNode,r=1,n=1;t&&t!==document.body?(r=t.clientWidth,n=t.clientHeight):(r=window.innerWidth,n=window.innerHeight);var a=0|Math.ceil(r*N.pixelRatio),i=0|Math.ceil(nN.pixelRatio);if(a!==e.width||i!==e.height){e.width=a,e.height=i;var o=e.style;o.position=o.position||“absolute”,o.left=“0px”,o.top=“0px”,o.width=r+“px”,o.height=n+“px”,I=!0}}}N.autoResize&&V();function U(){for(var t=E.length,e=P.length,n=0;n0&&0===L[e-1];)L.pop(),P.pop().dispose()}function q(){if(N.contextLost)return!0;r.isContextLost()&&(N.contextLost=!0,N.mouseListener.enabled=!1,N.selection.object=null,N.oncontextloss&&N.oncontextloss())}window.addEventListener(“resize”,V),N.update=function(t){N._stopped||(t=t||{},I=!0,z=!0)},N.add=function(t){N._stopped||(t.axes=A,E.push(t),C.push(-1),I=!0,z=!0,U())},N.remove=function(t){if(!N._stopped){var e=E.indexOf(t);e<0||(E.splice(e,1),C.pop(),I=!0,z=!0,U())}},N.dispose=function(){if(!N._stopped&&(N._stopped=!0,window.removeEventListener("resize",V),e.removeEventListener("webglcontextlost",q),N.mouseListener.enabled=!1,!N.contextLost)){A.dispose(),S.dispose();for(var t=0;tx.distance)continue;for(var c=0;c<a;++c){var u=E[c];if(C[c]===s){var h=u.pick(l);h&&(x.buttons=t,x.screen=l.coord,x.distance=l.distance,x.object=u,x.index=h.distance,x.dataPosition=h.position,x.dataCoordinate=h.dataCoordinate,x.data=h,o=!0)}}}}}i&&i!==x.object&&(i.highlight&&i.highlight(null),I=!0),x.object&&(x.object.highlight&&x.object.highlight(x.data),I=!0),(o=o||x.object!==i)&&N.onselect&&N.onselect(x),1&t&&!(1&N._prevButtons)&&N.onclick&&N.onclick(x),N._prevButtons=t}}))},e.addEventListener(“webglcontextlost”,q);var H=[[10,10,10],[-10,-10,-10]],G=[H[0].slice(),H[1].slice()];function Y(){if(!q()){V();var t=N.camera.tick();R.view=N.camera.matrix,I=I||t,z=z||t,A.pixelRatio=N.pixelRatio,S.pixelRatio=N.pixelRatio;var e=E.length,n=H[0],a=H[1];n[0]=n[1]=n[2]=10,a[0]=a[1]=a[2]=-10;for(var o=0;o<e;++o){(L=E[o]).pixelRatio=N.pixelRatio,L.axes=N.axes,I=I||!!L.dirty,z=z||!!L.dirty;var s=L.bounds;if(s)for(var l=s[0],u=s[1],p=0;p<3;++p)n[p]=Math.min(n[p],l[p]),a[p]=Math.max(a[p],u[p])}var d=N.bounds;if(N.autoBounds)for(p=0;p<3;++p){if(a[p]<n[p])n[p]=-1,a[p]=1;else{n[p]===a[p]&&(n[p]-=1,a[p]+=1);var g=.05(a[p]-n[p]);n[p]=n[p]-g,a[p]=a[p]+g}d[0][p]=n[p],d[1][p]=a[p]}var v=!1;for(p=0;p<3;++p)v=v||G[0][p]!==d[0][p]||G[1][p]!==d[1][p],G[0][p]=d[0][p],G[1][p]=d[1][p];if(z=z||v,I=I||v){if(v){var y=[0,0,0];for(o=0;o<3;++o)y[o]=m((d[1][o]-d[0][o])/10);A.autoTicks?A.update({bounds:d,tickSpacing:y}):A.update({bounds:d})}var T=r.drawingBufferWidth,k=r.drawingBufferHeight;F[0]=T,F[1]=k,j[0]=0|Math.max(T/N.pixelRatio,1),j[1]=0|Math.max(k/N.pixelRatio,1),function(t,e){var r=t.bounds,n=t.cameraParams,a=n.projection,i=n.model,o=t.gl.drawingBufferWidth,s=t.gl.drawingBufferHeight,l=t.zNear,c=t.zFar,u=t.fovy,p=o/s;e?(f(a,-p,p,-1,1,l,c),n._ortho=!0):(h(a,u,p,l,c),n._ortho=!1);for(var d=0;d<16;++d)i[d]=0;i[15]=1;var g=0;for(d=0;d<3;++d)g=Math.max(g,r[1][d]-r[0][d]);for(d=0;d<3;++d)t.autoScale?i[5*d]=t.aspect[d]/(r[1][d]-r[0][d]):i[5*d]=1/g,t.autoCenter&&(i[12+d]=.5*-i[5*d]*(r[0][d]+r[1][d]))}(N,w);for(o=0;o 1.0) {\n discard;\n }\n baseColor = mix(borderColor, color, step(radius, centerFraction));\n gl_FragColor = vec4(baseColor.rgb * baseColor.a, baseColor.a);\n }\n}\n”]),r.pickVertex=n([“precision mediump float;\n#define GLSLIFY 1\n\nattribute vec2 position;\nattribute vec4 pickId;\n\nuniform mat3 matrix;\nuniform float pointSize;\nuniform vec4 pickOffset;\n\nvarying vec4 fragId;\n\nvoid main() {\n vec3 hgPosition = matrix * vec3(position, 1);\n gl_Position = vec4(hgPosition.xy, 0, hgPosition.z);\n gl_PointSize = pointSize;\n\n vec4 id = pickId + pickOffset;\n id.y += floor(id.x / 256.0);\n id.x -= floor(id.x / 256.0) * 256.0;\n\n id.z += floor(id.y / 256.0);\n id.y -= floor(id.y / 256.0) * 256.0;\n\n id.w += floor(id.z / 256.0);\n id.z -= floor(id.z / 256.0) * 256.0;\n\n fragId = id;\n}\n”]),r.pickFragment=n([“precision mediump float;\n#define GLSLIFY 1\n\nvarying vec4 fragId;\n\nvoid main() {\n float radius = length(2.0 * gl_PointCoord.xy - 1.0);\n if(radius > 1.0) {\n discard;\n }\n gl_FragColor = fragId / 255.0;\n}\n”])},{glslify:408}],298:[function(t,e,r){“use strict”;var n=t(“gl-shader”),a=t(“gl-buffer”),i=t(“typedarray-pool”),o=t(“./lib/shader”);function s(t,e,r,n,a){this.plot=t,this.offsetBuffer=e,this.pickBuffer=r,this.shader=n,this.pickShader=a,this.sizeMin=.5,this.sizeMinCap=2,this.sizeMax=20,this.areaRatio=1,this.pointCount=0,this.color=[1,0,0,1],this.borderColor=[0,0,0,1],this.blend=!1,this.pickOffset=0,this.points=null}e.exports=function(t,e){var r=t.gl,i=a®,l=a®,c=n(r,o.pointVertex,o.pointFragment),u=n(r,o.pickVertex,o.pickFragment),h=new s(t,i,l,c,u);return h.update(e),t.addObject(h),h};var l,c,u=s.prototype;u.dispose=function(){this.shader.dispose(),this.pickShader.dispose(),this.offsetBuffer.dispose(),this.pickBuffer.dispose(),this.plot.removeObject(this)},u.update=function(t){var e;function r(e,r){return e in t?t[e]:r}t=t||{},this.sizeMin=r(“sizeMin”,.5),this.sizeMax=r(“sizeMax”,20),this.color=r(“color”,[1,0,0,1]).slice(),this.areaRatio=r(“areaRatio”,1),this.borderColor=r(“borderColor”,[0,0,0,1]).slice(),this.blend=r(“blend”,!1);var n=t.positions.length>>>1,a=t.positions instanceof Float32Array,o=t.idToIndex instanceof Int32Array&&t.idToIndex.length>=n,s=t.positions,l=a?s:i.mallocFloat32(s.length),c=o?t.idToIndex:i.mallocInt32(n);if(a||l.set(s),!o)for(l.set(s),e=0;e>>1;for(r=0;r=e[0]&&i<=e[2]&&o>=e[1]&&o<=e[3]&&n++}return n}(this.points,a),u=this.plot.pickPixelRatio*Math.max(Math.min(this.sizeMinCap,this.sizeMin),Math.min(this.sizeMax,this.sizeMax/Math.pow(s,.33333)));l[0]=2/i,l[4]=2/o,l[6]=-2*a[0]/i-1,l[7]=-2*a[1]/o-1,this.offsetBuffer.bind(),r.bind(),r.attributes.position.pointer(),r.uniforms.matrix=l,r.uniforms.color=this.color,r.uniforms.borderColor=this.borderColor,r.uniforms.pointCloud=u<5,r.uniforms.pointSize=u,r.uniforms.centerFraction=Math.min(1,Math.max(0,Math.sqrt(1-this.areaRatio))),e&&(c[0]=255&t,c[1]=t>>8&255,c[2]=t>>16&255,c[3]=t>>24&255,this.pickBuffer.bind(),r.attributes.pickId.pointer(n.UNSIGNED_BYTE),r.uniforms.pickOffset=c,this.pickOffset=t);var h=n.getParameter(n.BLEND),f=n.getParameter(n.DITHER);return h&&!this.blend&&n.disable(n.BLEND),f&&n.disable(n.DITHER),n.drawArrays(n.POINTS,0,this.pointCount),h&&!this.blend&&n.enable(n.BLEND),f&&n.enable(n.DITHER),t+this.pointCount}),u.draw=u.unifiedDraw,u.drawPick=u.unifiedDraw,u.pick=function(t,e,r){var n=this.pickOffset,a=this.pointCount;if(r=n+a)return null;var i=r-n,o=this.points;return{object:this,pointId:i,dataCoord:[o[2*i],o[2*i+1]]}}},{“./lib/shader”:297,“gl-buffer”:253,“gl-shader”:307,“typedarray-pool”:547}],299:[function(t,e,r){e.exports=function(t,e,r,n){var a,i,o,s,l,c=e[0],u=e[1],h=e[2],f=e[3],p=r[0],d=r[1],g=r[2],m=r[3];(i=c*p+u*d+h*g+f*m)<0&&(i=-i,p=-p,d=-d,g=-g,m=-m);1-i>1e-6?(a=Math.acos(i),o=Math.sin(a),s=Math.sin((1-n)*a)/o,l=Math.sin(n*a)/o):(s=1-n,l=n);return t[0]=s*c+l*p,t[1]=s*u+l*d,t[2]=s*h+l*g,t[3]=s*f+l*m,t}},{}],300:[function(t,e,r){“use strict”;e.exports=function(t){return t||0===t?t.toString():“”}},{}],301:[function(t,e,r){“use strict”;var n=t(“vectorize-text”);e.exports=function(t,e,r){var i=a[e];i||(i=a[e]={});if(t in i)return i[t];var o={textAlign:“center”,textBaseline:“middle”,lineHeight:1,font:e,lineSpacing:1.25,styletags:{breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},triangles:!0},s=n(t,o);o.triangles=!1;var l,c,u=n(t,o);if(r&&1!==r){for(l=0;l max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nattribute vec3 position;\nattribute vec4 color;\nattribute vec2 glyph;\nattribute vec4 id;\n\nuniform vec4 highlightId;\nuniform float highlightScale;\nuniform mat4 model, view, projection;\nuniform vec3 clipBounds[2];\n\nvarying vec4 interpColor;\nvarying vec4 pickId;\nvarying vec3 dataCoordinate;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], position)) {\n\n gl_Position = vec4(0,0,0,0);\n } else {\n float scale = 1.0;\n if(distance(highlightId, id) < 0.0001) {\n scale = highlightScale;\n }\n\n vec4 worldPosition = model * vec4(position, 1);\n vec4 viewPosition = view * worldPosition;\n viewPosition = viewPosition / viewPosition.w;\n vec4 clipPosition = projection * (viewPosition + scale * vec4(glyph.x, -glyph.y, 0, 0));\n\n gl_Position = clipPosition;\n interpColor = color;\n pickId = id;\n dataCoordinate = position;\n }\n}“]),o=a([“precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nattribute vec3 position;\nattribute vec4 color;\nattribute vec2 glyph;\nattribute vec4 id;\n\nuniform mat4 model, view, projection;\nuniform vec2 screenSize;\nuniform vec3 clipBounds[2];\nuniform float highlightScale, pixelRatio;\nuniform vec4 highlightId;\n\nvarying vec4 interpColor;\nvarying vec4 pickId;\nvarying vec3 dataCoordinate;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], position)) {\n\n gl_Position = vec4(0,0,0,0);\n } else {\n float scale = pixelRatio;\n if(distance(highlightId.bgr, id.bgr) < 0.001) {\n scale *= highlightScale;\n }\n\n vec4 worldPosition = model * vec4(position, 1.0);\n vec4 viewPosition = view * worldPosition;\n vec4 clipPosition = projection * viewPosition;\n clipPosition /= clipPosition.w;\n\n gl_Position = clipPosition + vec4(screenSize * scale * vec2(glyph.x, -glyph.y), 0.0, 0.0);\n interpColor = color;\n pickId = id;\n dataCoordinate = position;\n }\n}“]),s=a([“precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nattribute vec3 position;\nattribute vec4 color;\nattribute vec2 glyph;\nattribute vec4 id;\n\nuniform float highlightScale;\nuniform vec4 highlightId;\nuniform vec3 axes[2];\nuniform mat4 model, view, projection;\nuniform vec2 screenSize;\nuniform vec3 clipBounds[2];\nuniform float scale, pixelRatio;\n\nvarying vec4 interpColor;\nvarying vec4 pickId;\nvarying vec3 dataCoordinate;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], position)) {\n\n gl_Position = vec4(0,0,0,0);\n } else {\n float lscale = pixelRatio * scale;\n if(distance(highlightId, id) < 0.0001) {\n lscale *= highlightScale;\n }\n\n vec4 clipCenter = projection * view * model * vec4(position, 1);\n vec3 dataPosition = position + 0.5lscale(axes[0] * glyph.x + axes[1] * glyph.y) * clipCenter.w * screenSize.y;\n vec4 clipPosition = projection * view * model * vec4(dataPosition, 1);\n\n gl_Position = clipPosition;\n interpColor = color;\n pickId = id;\n dataCoordinate = dataPosition;\n }\n}\n”]),l=a([“precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 fragClipBounds[2];\nuniform float opacity;\n\nvarying vec4 interpColor;\nvarying vec3 dataCoordinate;\n\nvoid main() {\n if (\n outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate) ||\n interpColor.a * opacity == 0.\n ) discard;\n gl_FragColor = interpColor * opacity;\n}\n”]),c=a([“precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 fragClipBounds[2];\nuniform float pickGroup;\n\nvarying vec4 pickId;\nvarying vec3 dataCoordinate;\n\nvoid main() {\n if (outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate)) discard;\n\n gl_FragColor = vec4(pickGroup, pickId.bgr);\n}“]),u=[{name:“position”,type:“vec3”},{name:“color”,type:“vec4”},{name:“glyph”,type:“vec2”},{name:“id”,type:“vec4”}],h={vertex:i,fragment:l,attributes:u},f={vertex:o,fragment:l,attributes:u},p={vertex:s,fragment:l,attributes:u},d={vertex:i,fragment:c,attributes:u},g={vertex:o,fragment:c,attributes:u},m={vertex:s,fragment:c,attributes:u};function v(t,e){var r=n(t,e),a=r.attributes;return a.position.location=0,a.color.location=1,a.glyph.location=2,a.id.location=3,r}r.createPerspective=function(t){return v(t,h)},r.createOrtho=function(t){return v(t,f)},r.createProject=function(t){return v(t,p)},r.createPickPerspective=function(t){return v(t,d)},r.createPickOrtho=function(t){return v(t,g)},r.createPickProject=function(t){return v(t,m)}},{“gl-shader”:307,glslify:408}],303:[function(t,e,r){“use strict”;var n=t(“is-string-blank”),a=t(“gl-buffer”),i=t(“gl-vao”),o=t(“typedarray-pool”),s=t(“gl-mat4/multiply”),l=t(“./lib/shaders”),c=t(“./lib/glyphs”),u=t(“./lib/get-simple-string”),h=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function f(t,e){var r=t[0],n=t[1],a=t[2],i=t[3];return t[0]=e[0]*r+e[4]*n+e[8]*a+e[12]*i,t[1]=e[1]*r+e[5]*n+e[9]*a+e[13]*i,t[2]=e[2]*r+e[6]*n+e[10]*a+e[14]*i,t[3]=e[3]*r+e[7]*n+e[11]*a+e[15]*i,t}function p(t,e,r,n){return f(n,n),f(n,n),f(n,n)}function d(t,e){this.index=t,this.dataCoordinate=this.position=e}function g(t){return!0===t||t>1?1:t}function m(t,e,r,n,a,i,o,s,l,c,u,h){this.gl=t,this.pixelRatio=1,this.shader=e,this.orthoShader=r,this.projectShader=n,this.pointBuffer=a,this.colorBuffer=i,this.glyphBuffer=o,this.idBuffer=s,this.vao=l,this.vertexCount=0,this.lineVertexCount=0,this.opacity=1,this.hasAlpha=!1,this.lineWidth=0,this.projectScale=[23,23,23],this.projectOpacity=[1,1,1],this.projectHasAlpha=!1,this.pickId=0,this.pickPerspectiveShader=c,this.pickOrthoShader=u,this.pickProjectShader=h,this.points=[],this._selectResult=new d(0,[0,0,0]),this.useOrtho=!0,this.bounds=[[10,10,10],[-10,-10,-10]],this.axesProject=[!0,!0,!0],this.axesBounds=[[-10,-10,-10],[10,10,10]],this.highlightId=[1,1,1,1],this.highlightScale=2,this.clipBounds=[[-10,-10,-10],[10,10,10]],this.dirty=!0}e.exports=function(t){var e=t.gl,r=l.createPerspective(e),n=l.createOrtho(e),o=l.createProject(e),s=l.createPickPerspective(e),c=l.createPickOrtho(e),u=l.createPickProject(e),h=a(e),f=a(e),p=a(e),d=a(e),g=i(e,[{buffer:h,size:3,type:e.FLOAT},{buffer:f,size:4,type:e.FLOAT},{buffer:p,size:2,type:e.FLOAT},{buffer:d,size:4,type:e.UNSIGNEDBYTE,normalized:!0}]),v=new m(e,r,n,o,h,f,p,d,g,s,c,u);return v.update(t),v};var v=m.prototype;v.pickSlots=1,v.setPickBase=function(t){this.pickId=t},v.isTransparent=function(){if(this.hasAlpha)return!0;for(var t=0;t<3;++t)if(this.axesProject[t]&&this.projectHasAlpha)return!0;return!1},v.isOpaque=function(){if(!this.hasAlpha)return!0;for(var t=0;t<3;++t)if(this.axesProject[t]&&!this.projectHasAlpha)return!0;return!1};var y=[0,0],x=[0,0,0],b=[0,0,0],=[0,0,0,1],w=[0,0,0,1],T=h.slice(),k=[0,0,0],A=[[0,0,0],[0,0,0]];function M(t){return t[0]=t[1]=t[2]=0,t}function S(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=1,t}function E(t,e,r,n){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[r]=n,t}function C(t,e,r,n){var a,i=e.axesProject,o=e.gl,l=t.uniforms,c=r.model||h,u=r.view||h,f=r.projection||h,d=e.axesBounds,g=function(t){for(var e=A,r=0;r<2;++r)for(var n=0;n<3;++n)e[r][n]=Math.max(Math.min(t[r][n],1e8),-1e8);return e}(e.clipBounds);a=e.axes&&e.axes.lastCubeProps?e.axes.lastCubeProps.axis:[1,1,1],y[0]=2/o.drawingBufferWidth,y[1]=2/o.drawingBufferHeight,t.bind(),l.view=u,l.projection=f,l.screenSize=y,l.highlightId=e.highlightId,l.highlightScale=e.highlightScale,l.clipBounds=g,l.pickGroup=e.pickId/255,l.pixelRatio=n;for(var m=0;m<3;++m)if(i[m]){l.scale=e.projectScale[m],l.opacity=e.projectOpacity[m];for(var v=T,C=0;C<16;++C)v[C]=0;for(C=0;C<4;++C)v[5*C]=1;v[5*m]=0,a[m]<0?v[12+m]=d[0][m]:v[12+m]=d[1][m],s(v,c,v),l.model=v;var L=(m+1)%3,P=(m+2)%3,I=M(x),z=M(b);I[L]=1,z[P]=1;var O=p(0,0,0,S(_,I)),D=p(0,0,0,S(w,z));if(Math.abs(O[1])>Math.abs(D[1])){var R=O;O=D,D=R,R=I,I=z,z=R;var F=L;L=P,P=F}O[0]<0&&(I[L]=-1),D[1]>0&&(z[P]=-1);var B=0,N=0;for(C=0;C<4;++C)B+=Math.pow(c[4*L+C],2),N+=Math.pow(c[4*P+C],2);I[L]/=Math.sqrt(B),z[P]/=Math.sqrt(N),l.axes[0]=I,l.axes[1]=z,l.fragClipBounds[0]=E(k,g[0],m,-1e8),l.fragClipBounds[1]=E(k,g[1],m,1e8),e.vao.bind(),e.vao.draw(o.TRIANGLES,e.vertexCount),e.lineWidth>0&&(o.lineWidth(e.lineWidth*n),e.vao.draw(o.LINES,e.lineVertexCount,e.vertexCount)),e.vao.unbind()}}var L=[[-1e8,-1e8,-1e8],[1e8,1e8,1e8]];function P(t,e,r,n,a,i,o){var s=r.gl;if((i===r.projectHasAlpha||o)&&C(e,r,n,a),i===r.hasAlpha||o){t.bind();var l=t.uniforms;l.model=n.model||h,l.view=n.view||h,l.projection=n.projection||h,y[0]=2/s.drawingBufferWidth,y[1]=2/s.drawingBufferHeight,l.screenSize=y,l.highlightId=r.highlightId,l.highlightScale=r.highlightScale,l.fragClipBounds=L,l.clipBounds=r.axes.bounds,l.opacity=r.opacity,l.pickGroup=r.pickId/255,l.pixelRatio=a,r.vao.bind(),r.vao.draw(s.TRIANGLES,r.vertexCount),r.lineWidth>0&&(s.lineWidth(r.lineWidth*a),r.vao.draw(s.LINES,r.lineVertexCount,r.vertexCount)),r.vao.unbind()}}function I(t,e,r,a){var i;i=Array.isArray(t)?e=this.pointCount||e<0)return null;var r=this.points[e],n=this._selectResult;n.index=e;for(var a=0;a<3;++a)n.position[a]=n.dataCoordinate[a]=r[a];return n},v.highlight=function(t){if(t){var e=t.index,r=255&e,n=e>>8&255,a=e>>16&255;this.highlightId=[r/255,n/255,a/255,0]}else this.highlightId=[1,1,1,1]},v.update=function(t){if(“perspective”in(t=t||{})&&(this.useOrtho=!t.perspective),“orthographic”in t&&(this.useOrtho=!!t.orthographic),“lineWidth”in t&&(this.lineWidth=t.lineWidth),“project”in t)if(Array.isArray(t.project))this.axesProject=t.project;else{var e=!!t.project;this.axesProject=[e,e,e]}if(“projectScale”in t)if(Array.isArray(t.projectScale))this.projectScale=t.projectScale.slice();else{var r=+t.projectScale;this.projectScale=[r,r,r]}if(this.projectHasAlpha=!1,“projectOpacity”in t){if(Array.isArray(t.projectOpacity))this.projectOpacity=t.projectOpacity.slice();else{r=+t.projectOpacity;this.projectOpacity=[r,r,r]}for(var n=0;n<3;++n)this.projectOpacity[n]=g(this.projectOpacity[n]),this.projectOpacity[n]<1&&(this.projectHasAlpha=!0)}this.hasAlpha=!1,"opacity"in t&&(this.opacity=g(t.opacity),this.opacity<1&&(this.hasAlpha=!0)),this.dirty=!0;var a,i,s=t.position,l=t.font||"normal",c=t.alignment||[0,0];if(2===c.length)a=c[0],i=c[1];else{a=[],i=[];for(n=0;n0){var z=0,O=x,D=[0,0,0,1],R=[0,0,0,1],F=Array.isArray(p)&&Array.isArray(p[0]),B=Array.isArray(v)&&Array.isArray(v[0]);t:for(n=0;n<_;++n){y+=1;for(w=s[n],T=0;T<3;++T){if(isNaN(w[T])||!isFinite(w[T]))continue t;h[T]=Math.max(h[T],w[T]),u[T]=Math.min(u[T],w[T])}k=(N=I(f,n,l,this.pixelRatio)).mesh,A=N.lines,M=N.bounds;var N,j=N.visible;if(j)if(Array.isArray(p)){if(3===(V=F?n0?1-M[0][0]:Y<0?1+M[1][0]:1,W*=W>0?1-M[0][1]:W<0?1+M[1][1]:1],X=k.cells||[],J=k.positions||[];for(T=0;T0){var v=r*u;o.drawBox(h-v,f-v,p+v,f+v,i),o.drawBox(h-v,d-v,p+v,d+v,i),o.drawBox(h-v,f-v,h+v,d+v,i),o.drawBox(p-v,f-v,p+v,d+v,i)}}}},s.update=function(t){t=t||{},this.innerFill=!!t.innerFill,this.outerFill=!!t.outerFill,this.innerColor=(t.innerColor||[0,0,0,.5]).slice(),this.outerColor=(t.outerColor||[0,0,0,.5]).slice(),this.borderColor=(t.borderColor||[0,0,0,1]).slice(),this.borderWidth=t.borderWidth||0,this.selectBox=(t.selectBox||this.selectBox).slice()},s.dispose=function(){this.boxBuffer.dispose(),this.boxShader.dispose(),this.plot.removeOverlay(this)}},{“./lib/shaders”:304,“gl-buffer”:253,“gl-shader”:307}],306:[function(t,e,r){“use strict”;e.exports=function(t,e){var r=e[0],i=e[1],o=n(t,r,i,{}),s=a.mallocUint8(r*i*4);return new l(t,o,s)};var n=t(“gl-fbo”),a=t(“typedarray-pool”),i=t(“ndarray”),o=t(“bit-twiddle”).nextPow2;function s(t,e,r,n,a){this.coord=[t,e],this.id=r,this.value=n,this.distance=a}function l(t,e,r){this.gl=t,this.fbo=e,this.buffer=r,this._readTimeout=null;var n=this;this._readCallback=function(){n.gl&&(e.bind(),t.readPixels(0,0,e.shape[0],e.shape[1],t.RGBA,t.UNSIGNED_BYTE,n.buffer),n._readTimeout=null)}}var c=l.prototype;Object.defineProperty(c,“shape”,{get:function(){return this.gl?this.fbo.shape.slice():[0,0]},set:function(t){if(this.gl){this.fbo.shape=t;var e=this.fbo.shape[0],r=this.fbo.shape[1];if(r*e*4>this.buffer.length){a.free(this.buffer);for(var n=this.buffer=a.mallocUint8(o(r*e*4)),i=0;ir)for(t=r;te)for(t=e;t=0){for(var T=0|w.type.charAt(w.type.length-1),k=new Array(T),A=0;A=0;)M+=1;_[y]=M}var S=new Array(r.length);function E(){f.program=o.program(p,f._vref,f.fref,b,);for(var t=0;t=0){if((d=f.charCodeAt(f.length-1)-48)<2||d>4)throw new n(“”,“Invalid data type for attribute “+h+”: “+f);o(t,e,p[0],a,d,i,h)}else{if(!(f.indexOf(“mat”)>=0))throw new n(“”,“Unknown data type for attribute “+h+”: “+f);var d;if((d=f.charCodeAt(f.length-1)-48)<2||d>4)throw new n(“”,“Invalid data type for attribute “+h+”: “+f);s(t,e,p,a,d,i,h)}}}return i};var n=t(”./GLError”);function a(t,e,r,n,a,i){this._gl=t,this._wrapper=e,this._index=r,this._locations=n,this._dimension=a,this._constFunc=i}var i=a.prototype;function o(t,e,r,n,i,o,s){for(var l=[“gl”,“v”],c=[],u=0;u4)throw new a(“”,“Invalid uniform dimension type for matrix “+name+”: “+r);return”gl.uniformMatrix”+i+“fv(locations[“+e+”],false,obj”+t+“)”}throw new a(“”,“Unknown uniform data type for “+name+”: “+r)}if((i=r.charCodeAt(r.length-1)-48)<2||i>4)throw new a(“”,“Invalid data type”);switch(r.charAt(0)){case”b”:case”i”:return”gl.uniform”+i+“iv(locations[“+e+”],obj”+t+“)”;case”v”:return”gl.uniform”+i+“fv(locations[“+e+”],obj”+t+“)”;default:throw new a(“”,“Unrecognized data type for vector “+name+”: “+r)}}}function c(e){for(var n=[“return function updateProperty(obj){”],a=function t(e,r){if(“object”!=typeof r)return[[e,r]];var n=[];for(var a in r){var i=r[a],o=e;parseInt(a)+“”===a?o+=”[“+a+”]”:o+=“.”+a,“object”==typeof i?n.push.apply(n,t(o,i)):n.push([o,i])}return n}(“”,e),i=0;i4)throw new a(“”,“Invalid data type”);return”b”===t.charAt(0)?o(r,!1):o(r,0)}if(0===t.indexOf(“mat”)&&4===t.length){var r;if((r=t.charCodeAt(t.length-1)-48)<2||r>4)throw new a(“”,“Invalid uniform dimension type for matrix “+name+”: “+t);return o(rr,0)}throw new a(“”,“Unknown uniform data type for “+name+”: “+t)}}(r[u].type);var p}function h(t){var e;if(Array.isArray(t)){e=new Array(t.length);for(var r=0;r1){s[0]in i||(i[s[0]]=[]),i=i[s[0]];for(var l=1;l1)for(var l=0;l<o.size;++l)n.push({name:o.name.replace(”[0]“,”[“+l+”]“),type:s});else n.push({name:o.name,type:s})}}return n},r.attributes=function(t,e){for(var r=t.getProgramParameter(e,t.ACTIVE_ATTRIBUTES),n=[],a=0;a<r;++a){var o=t.getActiveAttrib(e,a);o&&n.push({name:o.name,type:i(t,o.type)})}return n};var n={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”},a=null;function i(t,e){if(!a){var r=Object.keys(n);a={};for(var i=0;i<r.length;++i){var o=r[i];a[t[o]]=n[o]}}return a[e]}},{}],313:[function(t,e,r){“use strict”;r.shader=function(t,e,r){return u(t).getShaderReference(e,r)},r.program=function(t,e,r,n,a){return u(t).getProgram(e,r,n,a)};var n=t(“./GLError”),a=t(“gl-format-compiler-error”),i=new(“undefined”==typeof WeakMap?t(“weakmap-shim”):WeakMap),o=0;function s(t,e,r,n,a,i,o){this.id=t,this.src=e,this.type=r,this.shader=n,this.count=i,this.programs=[],this.cache=o}function l(t){this.gl=t,this.shaders=[{},{}],this.programs={}}s.prototype.dispose=function(){if(0==–this.count){for(var t=this.cache,e=t.gl,r=this.programs,n=0,a=r.length;n<a;++n){var i=t.programs[r[n]];i&&(delete t.programs[n],e.deleteProgram(i))}e.deleteShader(this.shader),delete t.shaders[this.type===e.FRAGMENT_SHADER|0][this.src]}};var c=l.prototype;function u(t){var e=i.get(t);return e||(e=new l(t),i.set(t,e)),e}c.getShaderReference=function(t,e){var r=this.gl,i=this.shaders[t===r.FRAGMENT_SHADER|0],l=i[e];if(l&&r.isShader(l.shader))l.count+=1;else{var c=function(t,e,r){var i=t.createShader(e);if(t.shaderSource(i,r),t.compileShader(i),!t.getShaderParameter(i,t.COMPILE_STATUS)){var o=t.getShaderInfoLog(i);try{var s=a(o,r,e)}catch(t){throw console.warn(“Failed to format compiler error: “+t),new n(o,“Error compiling shader:\n”+o)}throw new n(o,s.short,s.long)}return i}(r,t,e);l=i[e]=new s(o++,e,t,c,[],1,this)}return l},c.getProgram=function(t,e,r,a){var i=[t.id,e.id,r.join(”:“),a.join(”:“)].join(”@“),o=this.programs[i];return o&&this.gl.isProgram(o)||(this.programs[i]=o=function(t,e,r,a,i){var o=t.createProgram();t.attachShader(o,e),t.attachShader(o,r);for(var s=0;s<a.length;++s)t.bindAttribLocation(o,i[s],a[s]);if(t.linkProgram(o),!t.getProgramParameter(o,t.LINK_STATUS)){var l=t.getProgramInfoLog(o);throw new n(l,“Error linking program: “+l)}return o}(this.gl,t.shader,e.shader,r,a),t.programs.push(i),e.programs.push(i)),o}},{”./GLError”:308,“gl-format-compiler-error”:262,“weakmap-shim”:557}],314:[function(t,e,r){“use strict”;function n(t){this.plot=t,this.enable=[!0,!0,!1,!1],this.width=[1,1,1,1],this.color=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.center=[10,10]}e.exports=function(t,e){var r=new n(t);return r.update(e),t.addOverlay®,r};var a=n.prototype;a.update=function(t){t=t||{},this.enable=(t.enable||[!0,!0,!1,!1]).slice(),this.width=(t.width||[1,1,1,1]).slice(),this.color=(t.color||[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]]).map((function(t){return t.slice()})),this.center=(t.center||[10,10]).slice(),this.plot.setOverlayDirty()},a.draw=function(){var t=this.enable,e=this.width,r=this.color,n=this.center,a=this.plot,i=a.line,o=a.dataBox,s=a.viewBox;if(i.bind(),o[0]<=n[0]&&n[0]<=o[2]&&o[1]<=n[1]&&n[1]<=o[3]){var l=s[0]+(n[0]-o[0])/(o[2]-o[0])(s[2]-s[0]),c=s[1]+(n[1]-o[1])/(o[3]-o[1])*(s[3]-s[1]);t[0]&&i.drawLine(l,c,s[0],c,e[0],r[0]),t[1]&&i.drawLine(l,c,l,s[1],e[1],r[1]),t[2]&&i.drawLine(l,c,s[2],c,e[2],r[2]),t[3]&&i.drawLine(l,c,l,s[3],e[3],r[3])}},a.dispose=function(){this.plot.removeOverlay(this)}},{}],315:[function(t,e,r){“use strict”;var n=t(“glslify”),a=t(“gl-shader”),i=n([“precision mediump float;\n#define GLSLIFY 1\n\nattribute vec3 position, color;\nattribute float weight;\n\nuniform mat4 model, view, projection;\nuniform vec3 coordinates[3];\nuniform vec4 colors[3];\nuniform vec2 screenShape;\nuniform float lineWidth;\n\nvarying vec4 fragColor;\n\nvoid main() {\n vec3 vertexPosition = mix(coordinates[0],\n mix(coordinates[2], coordinates[1], 0.5 * (position + 1.0)), abs(position));\n\n vec4 clipPos = projection * view * model * vec4(vertexPosition, 1.0);\n vec2 clipOffset = (projection * view * model * vec4(color, 0.0)).xy;\n vec2 delta = weight * clipOffset * screenShape;\n vec2 lineOffset = normalize(vec2(delta.y, -delta.x)) / screenShape;\n\n gl_Position = vec4(clipPos.xy + clipPos.w * 0.5 * lineWidth * lineOffset, clipPos.z, clipPos.w);\n fragColor = color.x * colors[0] + color.y * colors[1] + color.z * colors[2];\n}\n”]),o=n([“precision mediump float;\n#define GLSLIFY 1\n\nvarying vec4 fragColor;\n\nvoid main() {\n gl_FragColor = fragColor;\n}“]);e.exports=function(t){return a(t,i,o,null,[{name:“position”,type:“vec3”},{name:“color”,type:“vec3”},{name:“weight”,type:“float”}])}},{“gl-shader”:307,glslify:408}],316:[function(t,e,r){“use strict”;var n=t(“gl-buffer”),a=t(“gl-vao”),i=t(“./shaders/index”);e.exports=function(t,e){var r=[];function o(t,e,n,a,i,o){var s=[t,e,n,0,0,0,1];s[a+3]=1,s[a]=i,r.push.apply(r,s),s[6]=-1,r.push.apply(r,s),s[a]=o,r.push.apply(r,s),r.push.apply(r,s),s[6]=1,r.push.apply(r,s),s[a]=i,r.push.apply(r,s)}o(0,0,0,0,0,1),o(0,0,0,1,0,1),o(0,0,0,2,0,1),o(1,0,0,1,-1,1),o(1,0,0,2,-1,1),o(0,1,0,0,-1,1),o(0,1,0,2,-1,1),o(0,0,1,0,-1,1),o(0,0,1,1,-1,1);var l=n(t,r),c=a(t,[{type:t.FLOAT,buffer:l,size:3,offset:0,stride:28},{type:t.FLOAT,buffer:l,size:3,offset:12,stride:28},{type:t.FLOAT,buffer:l,size:1,offset:24,stride:28}]),u=i(t);u.attributes.position.location=0,u.attributes.color.location=1,u.attributes.weight.location=2;var h=new s(t,l,c,u);return h.update(e),h};var o=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function s(t,e,r,n){this.gl=t,this.buffer=e,this.vao=r,this.shader=n,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 l=s.prototype,c=[0,0,0],u=[0,0,0],h=[0,0];l.isTransparent=function(){return!1},l.drawTransparent=function(t){},l.draw=function(t){var e=this.gl,r=this.vao,n=this.shader;r.bind(),n.bind();var a,i=t.model||o,s=t.view||o,l=t.projection||o;this.axes&&(a=this.axes.lastCubeProps.axis);for(var f=c,p=u,d=0;d<3;++d)a&&a[d]<0?(f[d]=this.bounds[0][d],p[d]=this.bounds[1][d]):(f[d]=this.bounds[1][d],p[d]=this.bounds[0][d]);h[0]=e.drawingBufferWidth,h[1]=e.drawingBufferHeight,n.uniforms.model=i,n.uniforms.view=s,n.uniforms.projection=l,n.uniforms.coordinates=[this.position,f,p],n.uniforms.colors=this.colors,n.uniforms.screenShape=h;for(d=0;d<3;++d)n.uniforms.lineWidth=this.lineWidth[d]*this.pixelRatio,this.enabled[d]&&(r.draw(e.TRIANGLES,6,6*d),this.drawSides[d]&&r.draw(e.TRIANGLES,12,18+12*d));r.unbind()},l.update=function(t){t&&("bounds"in t&&(this.bounds=t.bounds),"position"in t&&(this.position=t.position),"lineWidth"in t&&(this.lineWidth=t.lineWidth),"colors"in t&&(this.colors=t.colors),"enabled"in t&&(this.enabled=t.enabled),"drawSides"in t&&(this.drawSides=t.drawSides))},l.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()}},{"./shaders/index":315,"gl-buffer":253,"gl-vao":327}],317:[function(t,e,r){var n=t("glslify"),a=n(["precision highp float;\n\nprecision highp float;\n#define GLSLIFY 1\n\nvec3 getOrthogonalVector(vec3 v) {\n // Return up-vector for only-z vector.\n // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn't (0,0,0).\n // From the above if-statement we have ||a|| > 0 U ||b|| > 0.\n // Assign z = 0, x = -b, y = a:\n // a*-b + b*a + c*0 = -ba + ba + 0 = 0\n if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {\n return normalize(vec3(-v.y, v.x, 0.0));\n } else {\n return normalize(vec3(0.0, v.z, -v.y));\n }\n}\n\n// Calculate the tube vertex and normal at the given index.\n//\n// The returned vertex is for a tube ring with its center at origin, radius of length(d), pointing in the direction of d.\n//\n// Each tube segment is made up of a ring of vertices.\n// These vertices are used to make up the triangles of the tube by connecting them together in the vertex array.\n// The indexes of tube segments run from 0 to 8.\n//\nvec3 getTubePosition(vec3 d, float index, out vec3 normal) {\n float segmentCount = 8.0;\n\n float angle = 2.0 * 3.14159 * (index / segmentCount);\n\n vec3 u = getOrthogonalVector(d);\n vec3 v = normalize(cross(u, d));\n\n vec3 x = u * cos(angle) * length(d);\n vec3 y = v * sin(angle) * length(d);\n vec3 v3 = x + y;\n\n normal = normalize(v3);\n\n return v3;\n}\n\nattribute vec4 vector;\nattribute vec4 color, position;\nattribute vec2 uv;\n\nuniform float vectorScale, tubeScale;\nuniform mat4 model, view, projection, inverseModel;\nuniform vec3 eyePosition, lightPosition;\n\nvarying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n // Scale the vector magnitude to stay constant with\n // model & view changes.\n vec3 normal;\n vec3 XYZ = getTubePosition(mat3(model) * (tubeScale * vector.w * normalize(vector.xyz)), position.w, normal);\n vec4 tubePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);\n\n //Lighting geometry parameters\n vec4 cameraCoordinate = view * tubePosition;\n cameraCoordinate.xyz /= cameraCoordinate.w;\n f_lightDirection = lightPosition - cameraCoordinate.xyz;\n f_eyeDirection = eyePosition - cameraCoordinate.xyz;\n f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz);\n\n // vec4 m_position = model * vec4(tubePosition, 1.0);\n vec4 t_position = view * tubePosition;\n gl_Position = projection * t_position;\n\n f_color = color;\n f_data = tubePosition.xyz;\n f_position = position.xyz;\n f_uv = uv;\n}\n”]),i=n([“#extension GL_OES_standard_derivatives : enable\n\nprecision highp float;\n#define GLSLIFY 1\n\nfloat beckmannDistribution(float x, float roughness) {\n float NdotH = max(x, 0.0001);\n float cos2Alpha = NdotH * NdotH;\n float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;\n float roughness2 = roughness * roughness;\n float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;\n return exp(tan2Alpha / roughness2) / denom;\n}\n\nfloat cookTorranceSpecular(\n vec3 lightDirection,\n vec3 viewDirection,\n vec3 surfaceNormal,\n float roughness,\n float fresnel) {\n\n float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);\n float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);\n\n //Half angle vector\n vec3 H = normalize(lightDirection + viewDirection);\n\n //Geometric term\n float NdotH = max(dot(surfaceNormal, H), 0.0);\n float VdotH = max(dot(viewDirection, H), 0.000001);\n float LdotH = max(dot(lightDirection, H), 0.000001);\n float G1 = (2.0 * NdotH * VdotN) / VdotH;\n float G2 = (2.0 * NdotH * LdotN) / LdotH;\n float G = min(1.0, min(G1, G2));\n \n //Distribution term\n float D = beckmannDistribution(NdotH, roughness);\n\n //Fresnel term\n float F = pow(1.0 - VdotN, fresnel);\n\n //Multiply terms and done\n return G * F * D / max(3.14159265 * VdotN, 0.000001);\n}\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;\nuniform sampler2D texture;\n\nvarying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;\nvarying vec4 f_color;\nvarying vec2 f_uv;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\n vec3 N = normalize(f_normal);\n vec3 L = normalize(f_lightDirection);\n vec3 V = normalize(f_eyeDirection);\n\n if(gl_FrontFacing) {\n N = -N;\n }\n\n float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));\n float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);\n\n vec4 surfaceColor = f_color * texture2D(texture, f_uv);\n vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);\n\n gl_FragColor = litColor * opacity;\n}\n”]),o=n([“precision highp float;\n\nprecision highp float;\n#define GLSLIFY 1\n\nvec3 getOrthogonalVector(vec3 v) {\n // Return up-vector for only-z vector.\n // Return ax + by + cz = 0, a point that lies on the plane that has v as a normal and that isn’t (0,0,0).\n // From the above if-statement we have ||a|| > 0 U ||b|| > 0.\n // Assign z = 0, x = -b, y = a:\n // a*-b + b*a + c*0 = -ba + ba + 0 = 0\n if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {\n return normalize(vec3(-v.y, v.x, 0.0));\n } else {\n return normalize(vec3(0.0, v.z, -v.y));\n }\n}\n\n// Calculate the tube vertex and normal at the given index.\n//\n// The returned vertex is for a tube ring with its center at origin, radius of length(d), pointing in the direction of d.\n//\n// Each tube segment is made up of a ring of vertices.\n// These vertices are used to make up the triangles of the tube by connecting them together in the vertex array.\n// The indexes of tube segments run from 0 to 8.\n//\nvec3 getTubePosition(vec3 d, float index, out vec3 normal) {\n float segmentCount = 8.0;\n\n float angle = 2.0 * 3.14159 * (index / segmentCount);\n\n vec3 u = getOrthogonalVector(d);\n vec3 v = normalize(cross(u, d));\n\n vec3 x = u * cos(angle) * length(d);\n vec3 y = v * sin(angle) * length(d);\n vec3 v3 = x + y;\n\n normal = normalize(v3);\n\n return v3;\n}\n\nattribute vec4 vector;\nattribute vec4 position;\nattribute vec4 id;\n\nuniform mat4 model, view, projection;\nuniform float tubeScale;\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n vec3 normal;\n vec3 XYZ = getTubePosition(mat3(model) * (tubeScale * vector.w * normalize(vector.xyz)), position.w, normal);\n vec4 tubePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);\n\n gl_Position = projection * view * tubePosition;\n f_id = id;\n f_position = position.xyz;\n}\n”]),s=n([“precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 clipBounds[2];\nuniform float pickId;\n\nvarying vec3 f_position;\nvarying vec4 f_id;\n\nvoid main() {\n if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;\n\n gl_FragColor = vec4(pickId, fid.xyz);\n}“]);r.meshShader={vertex:a,fragment:i,attributes:[{name:“position”,type:“vec4”},{name:“color”,type:“vec4”},{name:“uv”,type:“vec2”},{name:“vector”,type:“vec4”}]},r.pickShader={vertex:o,fragment:s,attributes:[{name:“position”,type:“vec4”},{name:“id”,type:“vec4”},{name:“vector”,type:“vec4”}]}},{glslify:408}],318:[function(t,e,r){“use strict”;var n=t(“gl-vec3”),a=t(“gl-vec4”),i=[“xyz”,“xzy”,“yxz”,“yzx”,“zxy”,“zyx”],o=function(t,e,r,i){for(var o=0,s=0;s<t.length;s++)for(var l=t[s].velocities,c=0;c<l.length;c++)o=Math.max(o,n.length(l[c]));var u=t.map((function(t){return function(t,e,r,i){for(var o=t.points,s=t.velocities,l=t.divergences,c=[],u=[],h=[],f=[],p=[],d=[],g=0,m=0,v=a.create(),y=a.create(),x=0;x<o.length;x++){var b=o[x],=s[x],w=l[x];0===e&&(w=.05*r),m=n.length()/i,v=a.create(),n.copy(v,),v[3]=w;for(var T=0;T<8;T++)p[T]=[b[0],b[1],b[2],T];if(f.length>0)for(T=0;T<8;T++){var k=(T+1)%8;c.push(f[T],p[T],p[k],p[k],f[k],f[T]),h.push(y,v,v,v,y,y),d.push(g,m,m,m,g,g);var A=c.length;u.push([A-6,A-5,A-4],[A-3,A-2,A-1])}var M=f;f=p,p=M;var S=y;y=v,v=S;var E=g;g=m,m=E}return{positions:c,cells:u,vectors:h,vertexIntensity:d}}(t,r,i,o)})),h=[],f=[],p=[],d=[];for(s=0;se)return r-1}return r},l=function(t,e,r){return tr?r:t},c=function(t){var e=10;t.sort((function(t,e){return t-e}));for(var r=t.length,n=1;nh-1||y>f-1||x>p-1)return n.create();var b,,w,T,k,A,M=i[0][d],S=i[0][v],E=i[1][g],C=i[1][y],L=i[2][m],P=(o-M)/(S-M),I=(c-E)/(C-E),z=(u-L)/(i[2][x]-L);switch(isFinite(P)||(P=.5),isFinite(I)||(I=.5),isFinite(z)||(z=.5),r.reversedX&&(d=h-1-d,v=h-1-v),r.reversedY&&(g=f-1-g,y=f-1-y),r.reversedZ&&(m=p-1-m,x=p-1-x),r.filled){case 5:k=m,A=x,w=g*p,T=y*p,b=d*p*f,=v*p*f;break;case 4:k=m,A=x,b=d*p,=v*p,w=g*p*h,T=y*p*h;break;case 3:w=g,T=y,k=m*f,A=x*f,b=d*f*p,=v*f*p;break;case 2:w=g,T=y,b=d*f,=v*f,k=m*f*h,A=x*f*h;break;case 1:b=d,=v,k=m*h,A=x*h,w=g*h*p,T=y*h*p;break;default:b=d,=v,w=g*h,T=y*h,k=m*h*f,A=x*h*f}var O=a[b+w+k],D=a[b+w+A],R=a[b+T+k],F=a[b+T+A],B=a[+w+k],N=a[+w+A],j=a[+T+k],V=a[+T+A],U=n.create(),q=n.create(),H=n.create(),G=n.create();n.lerp(U,O,B,P),n.lerp(q,D,N,P),n.lerp(H,R,j,P),n.lerp(G,F,V,P);var Y=n.create(),W=n.create();n.lerp(Y,U,H,I),n.lerp(W,q,G,I);var Z=n.create();return n.lerp(Z,Y,W,z),Z}(e,t,p)},g=t.getDivergence||function(t,e){var r=n.create(),a=1e-4;n.add(r,t,[a,0,0]);var i=d®;n.subtract(i,i,e),n.scale(i,i,1/a),n.add(r,t,[0,a,0]);var o=d®;n.subtract(o,o,e),n.scale(o,o,1/a),n.add(r,t,[0,0,a]);var s=d®;return n.subtract(s,s,e),n.scale(s,s,1/a),n.add(r,i,o),n.add(r,r,s),r},m=[],v=e[0][0],y=e[0][1],x=e[0][2],b=e[1][0],=e[1][1],w=e[1][2],T=function(t){var e=t[0],r=t[1],n=t[2];return!(eb||r_||nw)},k=10*n.distance(e[0],e[1])/a,A=k*k,M=1,S=0,E=r.length;E>1&&(M=function(t){for(var e=[],r=[],n=[],a={},i={},o={},s=t.length,l=0;lS&&(S=F),D.push(F),m.push({points:P,velocities:I,divergences:D});for(var B=0;B<100*a&&P.lengthA&&n.scale(N,N,k/Math.sqrt(j)),n.add(N,N,L),z=d(N),n.squaredDistance(O,N)-A>-1e-4*A){P.push(N),O=N,I.push(z);R=g(N,z),F=n.length®;isFinite(F)&&F>S&&(S=F),D.push(F)}L=N}}var V=o(m,t.colormap,S,M);return h?V.tubeScale=h:(0===S&&(S=1),V.tubeScale=.5*u*M/S),V};var u=t(“./lib/shaders”),h=t(“gl-cone3d”).createMesh;e.exports.createTubeMesh=function(t,e){return h(t,e,{shaders:u,traceType:“streamtube”})}},{“./lib/shaders”:317,“gl-cone3d”:254,“gl-vec3”:346,“gl-vec4”:382}],319:[function(t,e,r){var n=t(“gl-shader”),a=t(“glslify”),i=a([“precision highp float;\n#define GLSLIFY 1\n\nattribute vec4 uv;\nattribute vec3 f;\nattribute vec3 normal;\n\nuniform vec3 objectOffset;\nuniform mat4 model, view, projection, inverseModel;\nuniform vec3 lightPosition, eyePosition;\nuniform sampler2D colormap;\n\nvarying float value, kill;\nvarying vec3 worldCoordinate;\nvarying vec2 planeCoordinate;\nvarying vec3 lightDirection, eyeDirection, surfaceNormal;\nvarying vec4 vColor;\n\nvoid main() {\n vec3 localCoordinate = vec3(uv.zw, f.x);\n worldCoordinate = objectOffset + localCoordinate;\n vec4 worldPosition = model * vec4(worldCoordinate, 1.0);\n vec4 clipPosition = projection * view * worldPosition;\n gl_Position = clipPosition;\n kill = f.y;\n value = f.z;\n planeCoordinate = uv.xy;\n\n vColor = texture2D(colormap, vec2(value, value));\n\n //Lighting geometry parameters\n vec4 cameraCoordinate = view * worldPosition;\n cameraCoordinate.xyz /= cameraCoordinate.w;\n lightDirection = lightPosition - cameraCoordinate.xyz;\n eyeDirection = eyePosition - cameraCoordinate.xyz;\n surfaceNormal = normalize((vec4(normal,0) * inverseModel).xyz);\n}\n”]),o=a([“precision highp float;\n#define GLSLIFY 1\n\nfloat beckmannDistribution(float x, float roughness) {\n float NdotH = max(x, 0.0001);\n float cos2Alpha = NdotH * NdotH;\n float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;\n float roughness2 = roughness * roughness;\n float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;\n return exp(tan2Alpha / roughness2) / denom;\n}\n\nfloat beckmannSpecular(\n vec3 lightDirection,\n vec3 viewDirection,\n vec3 surfaceNormal,\n float roughness) {\n return beckmannDistribution(dot(surfaceNormal, normalize(lightDirection + viewDirection)), roughness);\n}\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec3 lowerBound, upperBound;\nuniform float contourTint;\nuniform vec4 contourColor;\nuniform sampler2D colormap;\nuniform vec3 clipBounds[2];\nuniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;\nuniform float vertexColor;\n\nvarying float value, kill;\nvarying vec3 worldCoordinate;\nvarying vec3 lightDirection, eyeDirection, surfaceNormal;\nvarying vec4 vColor;\n\nvoid main() {\n if (\n kill > 0.0 ||\n vColor.a == 0.0 ||\n outOfRange(clipBounds[0], clipBounds[1], worldCoordinate)\n ) discard;\n\n vec3 N = normalize(surfaceNormal);\n vec3 V = normalize(eyeDirection);\n vec3 L = normalize(lightDirection);\n\n if(gl_FrontFacing) {\n N = -N;\n }\n\n float specular = max(beckmannSpecular(L, V, N, roughness), 0.);\n float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);\n\n //decide how to interpolate color \u2014 in vertex or in fragment\n vec4 surfaceColor =\n step(vertexColor, .5) * texture2D(colormap, vec2(value, value)) +\n step(.5, vertexColor) * vColor;\n\n vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);\n\n gl_FragColor = mix(litColor, contourColor, contourTint) * opacity;\n}\n”]),s=a([“precision highp float;\n#define GLSLIFY 1\n\nattribute vec4 uv;\nattribute float f;\n\nuniform vec3 objectOffset;\nuniform mat3 permutation;\nuniform mat4 model, view, projection;\nuniform float height, zOffset;\nuniform sampler2D colormap;\n\nvarying float value, kill;\nvarying vec3 worldCoordinate;\nvarying vec2 planeCoordinate;\nvarying vec3 lightDirection, eyeDirection, surfaceNormal;\nvarying vec4 vColor;\n\nvoid main() {\n vec3 dataCoordinate = permutation * vec3(uv.xy, height);\n worldCoordinate = objectOffset + dataCoordinate;\n vec4 worldPosition = model * vec4(worldCoordinate, 1.0);\n\n vec4 clipPosition = projection * view * worldPosition;\n clipPosition.z += zOffset;\n\n gl_Position = clipPosition;\n value = f + objectOffset.z;\n kill = -1.0;\n planeCoordinate = uv.zw;\n\n vColor = texture2D(colormap, vec2(value, value));\n\n //Don’t do lighting for contours\n surfaceNormal = vec3(1,0,0);\n eyeDirection = vec3(0,1,0);\n lightDirection = vec3(0,0,1);\n}\n”]),l=a([“precision highp float;\n#define GLSLIFY 1\n\nbool outOfRange(float a, float b, float p) {\n return ((p > max(a, b)) || \n (p < min(a, b)));\n}\n\nbool outOfRange(vec2 a, vec2 b, vec2 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y));\n}\n\nbool outOfRange(vec3 a, vec3 b, vec3 p) {\n return (outOfRange(a.x, b.x, p.x) ||\n outOfRange(a.y, b.y, p.y) ||\n outOfRange(a.z, b.z, p.z));\n}\n\nbool outOfRange(vec4 a, vec4 b, vec4 p) {\n return outOfRange(a.xyz, b.xyz, p.xyz);\n}\n\nuniform vec2 shape;\nuniform vec3 clipBounds[2];\nuniform float pickId;\n\nvarying float value, kill;\nvarying vec3 worldCoordinate;\nvarying vec2 planeCoordinate;\nvarying vec3 surfaceNormal;\n\nvec2 splitFloat(float v) {\n float vh = 255.0 * v;\n float upper = floor(vh);\n float lower = fract(vh);\n return vec2(upper / 255.0, floor(lower * 16.0) / 16.0);\n}\n\nvoid main() {\n if ((kill > 0.0) ||\n (outOfRange(clipBounds[0], clipBounds[1], worldCoordinate))) discard;\n\n vec2 ux = splitFloat(planeCoordinate.x / shape.x);\n vec2 uy = splitFloat(planeCoordinate.y / shape.y);\n glFragColor = vec4(pickId, ux.x, uy.x, ux.y + (uy.y/16.0));\n}\n”]);r.createShader=function(t){var e=n(t,i,o,null,[{name:“uv”,type:“vec4”},{name:“f”,type:“vec3”},{name:“normal”,type:“vec3”}]);return e.attributes.uv.location=0,e.attributes.f.location=1,e.attributes.normal.location=2,e},r.createPickShader=function(t){var e=n(t,i,l,null,[{name:“uv”,type:“vec4”},{name:“f”,type:“vec3”},{name:“normal”,type:“vec3”}]);return e.attributes.uv.location=0,e.attributes.f.location=1,e.attributes.normal.location=2,e},r.createContourShader=function(t){var e=n(t,s,o,null,[{name:“uv”,type:“vec4”},{name:“f”,type:“float”}]);return e.attributes.uv.location=0,e.attributes.f.location=1,e},r.createPickContourShader=function(t){var e=n(t,s,l,null,[{name:“uv”,type:“vec4”},{name:“f”,type:“float”}]);return e.attributes.uv.location=0,e.attributes.f.location=1,e}},{“gl-shader”:307,glslify:408}],320:[function(t,e,r){“use strict”;e.exports=function(t){var e=t.gl,r=y(e),n=b(e),s=x(e),l=(e),c=a(e),u=i(e,[{buffer:c,size:4,stride:40,offset:0},{buffer:c,size:3,stride:40,offset:16},{buffer:c,size:3,stride:40,offset:28}]),h=a(e),f=i(e,[{buffer:h,size:4,stride:20,offset:0},{buffer:h,size:1,stride:20,offset:16}]),p=a(e),d=i(e,[{buffer:p,size:2,type:e.FLOAT}]),g=o(e,1,256,e.RGBA,e.UNSIGNEDBYTE);g.minFilter=e.LINEAR,g.magFilter=e.LINEAR;var m=new M(e,[0,0],[[0,0,0],[0,0,0]],r,n,c,u,g,s,l,h,f,p,d,[0,0,0]),v={levels:[[],[],[]]};for(var w in t)v[w]=t[w];return v.colormap=v.colormap||“jet”,m.update(v),m};var n=t(“bit-twiddle”),a=t(“gl-buffer”),i=t(“gl-vao”),o=t(“gl-texture2d”),s=t(“typedarray-pool”),l=t(“colormap”),c=t(“ndarray-ops”),u=t(“ndarray-pack”),h=t(“ndarray”),f=t(“surface-nets”),p=t(“gl-mat4/multiply”),d=t(“gl-mat4/invert”),g=t(“binary-search-bounds”),m=t(“ndarray-gradient”),v=t(“./lib/shaders”),y=v.createShader,x=v.createContourShader,b=v.createPickShader,=v.createPickContourShader,w=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],T=[[0,0],[0,1],[1,0],[1,1],[1,0],[0,1]],k=[[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0]];function A(t,e,r,n,a){this.position=t,this.index=e,this.uv=r,this.level=n,this.dataCoordinate=a}!function(){for(var t=0;t<3;++t){var e=k[t],r=(t+2)%3;e[(t+1)%3+0]=1,e[r+3]=1,e[t+6]=1}}();function M(t,e,r,n,a,i,o,l,c,u,f,p,d,g,m){this.gl=t,this.shape=e,this.bounds=r,this.objectOffset=m,this.intensityBounds=[],this._shader=n,this._pickShader=a,this._coordinateBuffer=i,this._vao=o,this._colorMap=l,this._contourShader=c,this._contourPickShader=u,this._contourBuffer=f,this._contourVAO=p,this._contourOffsets=[[],[],[]],this._contourCounts=[[],[],[]],this._vertexCount=0,this._pickResult=new A([0,0,0],[0,0],[0,0],[0,0,0],[0,0,0]),this._dynamicBuffer=d,this._dynamicVAO=g,this._dynamicOffsets=[0,0,0],this._dynamicCounts=[0,0,0],this.contourWidth=[1,1,1],this.contourLevels=[[1],[1],[1]],this.contourTint=[0,0,0],this.contourColor=[[.5,.5,.5,1],[.5,.5,.5,1],[.5,.5,.5,1]],this.showContour=!0,this.showSurface=!0,this.enableHighlight=[!0,!0,!0],this.highlightColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.highlightTint=[1,1,1],this.highlightLevel=[-1,-1,-1],this.enableDynamic=[!0,!0,!0],this.dynamicLevel=[NaN,NaN,NaN],this.dynamicColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.dynamicTint=[1,1,1],this.dynamicWidth=[1,1,1],this.axesBounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.surfaceProject=[!1,!1,!1],this.contourProject=[[!1,!1,!1],[!1,!1,!1],[!1,!1,!1]],this.colorBounds=[!1,!1],this._field=[h(s.mallocFloat(1024),[0,0]),h(s.mallocFloat(1024),[0,0]),h(s.mallocFloat(1024),[0,0])],this.pickId=1,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.snapToData=!1,this.pixelRatio=1,this.opacity=1,this.opacityscale=!1,this.lightPosition=[10,1e4,0],this.ambientLight=.8,this.diffuseLight=.8,this.specularLight=2,this.roughness=.5,this.fresnel=1.5,this.vertexColor=0,this.dirty=!0}var S=M.prototype;S.isTransparent=function(){return this.opacity<1||this.opacityscale},S.isOpaque=function(){if(this.opacityscale)return!1;if(this.opacity<1)return!1;if(this.opacity>=1)return!0;for(var t=0;t<3;++t)if(this._contourCounts[t].length>0)return!0;return!1},S.pickSlots=1,S.setPickBase=function(t){this.pickId=t};var E=[0,0,0],C={showSurface:!1,showContour:!1,projections:[w.slice(),w.slice(),w.slice()],clipBounds:[[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]]]};function L(t,e){var r,n,a,i=e.axes&&e.axes.lastCubeProps.axis||E,o=e.showSurface,s=e.showContour;for(r=0;r<3;++r)for(o=o||e.surfaceProject[r],n=0;n<3;++n)s=s||e.contourProject[r][n];for(r=0;r<3;++r){var l=C.projections[r];for(n=0;n<16;++n)l[n]=0;for(n=0;n<4;++n)l[5*n]=1;l[5*r]=0,l[12+r]=e.axesBounds[+(i[r]>0)][r],p(l,t.model,l);var c=C.clipBounds[r];for(a=0;a<2;++a)for(n=0;n<3;++n)c[a][n]=t.clipBounds[a][n];c[0][r]=-1e8,c[1][r]=1e8}return C.showSurface=o,C.showContour=s,C}var P={model:w,view:w,projection:w,inverseModel:w.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},I=w.slice(),z=[1,0,0,0,1,0,0,0,1];function O(t,e){t=t||{};var r=this.gl;r.disable(r.CULL_FACE),this._colorMap.bind(0);var n=P;n.model=t.model||w,n.view=t.view||w,n.projection=t.projection||w,n.lowerBound=[this.bounds[0][0],this.bounds[0][1],this.colorBounds[0]||this.bounds[0][2]],n.upperBound=[this.bounds[1][0],this.bounds[1][1],this.colorBounds[1]||this.bounds[1][2]],n.objectOffset=this.objectOffset,n.contourColor=this.contourColor[0],n.inverseModel=d(n.inverseModel,n.model);for(var a=0;a<2;++a)for(var i=n.clipBounds[a],o=0;o<3;++o)i[o]=Math.min(Math.max(this.clipBounds[a][o],-1e8),1e8);n.kambient=this.ambientLight,n.kdiffuse=this.diffuseLight,n.kspecular=this.specularLight,n.roughness=this.roughness,n.fresnel=this.fresnel,n.opacity=this.opacity,n.height=0,n.permutation=z,n.vertexColor=this.vertexColor;var s=I;for(p(s,n.view,n.model),p(s,n.projection,s),d(s,s),a=0;a<3;++a)n.eyePosition[a]=s[12+a]/s[15];var l=s[15];for(a=0;a<3;++a)l+=this.lightPosition[a]*s[4*a+3];for(a=0;a<3;++a){var c=s[12+a];for(o=0;o<3;++o)c+=s[4*o+a]*this.lightPosition[o];n.lightPosition[a]=c/l}var u=L(n,this);if(u.showSurface){for(this._shader.bind(),this._shader.uniforms=n,this._vao.bind(),this.showSurface&&this._vertexCount&&this._vao.draw(r.TRIANGLES,this._vertexCount),a=0;a<3;++a)this.surfaceProject[a]&&this.vertexCount&&(this._shader.uniforms.model=u.projections[a],this._shader.uniforms.clipBounds=u.clipBounds[a],this._vao.draw(r.TRIANGLES,this._vertexCount));this._vao.unbind()}if(u.showContour){var h=this._contourShader;n.kambient=1,n.kdiffuse=0,n.kspecular=0,n.opacity=1,h.bind(),h.uniforms=n;var f=this._contourVAO;for(f.bind(),a=0;a<3;++a)for(h.uniforms.permutation=k[a],r.lineWidth(this.contourWidth[a]*this.pixelRatio),o=0;o>4)/16)/255,a=Math.floor(n),i=n-a,o=e[1](t.value[1]+(15&t.value[2])/16)/255,s=Math.floor(o),l=o-s;a+=1,s+=1;var c=r.position;c[0]=c[1]=c[2]=0;for(var u=0;u<2;++u)for(var h=u?i:1-i,f=0;f<2;++f)for(var p=a+u,d=s+f,m=h(f?l:1-l),v=0;v<3;++v)c[v]+=this._field[v].get(p,d)*m;for(var y=this._pickResult.level,x=0;x<3;++x)if(y[x]=g.le(this.contourLevels[x],c[x]),y[x]<0)this.contourLevels[x].length>0&&(y[x]=0);else if(y[x]Math.abs(_-c[x])&&(y[x]+=1)}for(r.index[0]=i<.5?a:a+1,r.index[1]=l<.5?s:s+1,r.uv[0]=n/e[0],r.uv[1]=o/e[1],v=0;v<3;++v)r.dataCoordinate[v]=this._field[v].get(r.index[0],r.index[1]);return r},S.padField=function(t,e){var r=e.shape.slice(),n=t.shape.slice();c.assign(t.lo(1,1).hi(r[0],r[1]),e),c.assign(t.lo(1).hi(r[0],1),e.hi(r[0],1)),c.assign(t.lo(1,n[1]-1).hi(r[0],1),e.lo(0,r[1]-1).hi(r[0],1)),c.assign(t.lo(0,1).hi(1,r[1]),e.hi(1)),c.assign(t.lo(n[0]-1,1).hi(1,r[1]),e.lo(r[0]-1)),t.set(0,0,e.get(0,0)),t.set(0,n[1]-1,e.get(0,r[1]-1)),t.set(n[0]-1,0,e.get(r[0]-1,0)),t.set(n[0]-1,n[1]-1,e.get(r[0]-1,r[1]-1))},S.update=function(t){t=t||{},this.objectOffset=t.objectOffset||this.objectOffset,this.dirty=!0,"contourWidth"in t&&(this.contourWidth=R(t.contourWidth,Number)),"showContour"in t&&(this.showContour=R(t.showContour,Boolean)),"showSurface"in t&&(this.showSurface=!!t.showSurface),"contourTint"in t&&(this.contourTint=R(t.contourTint,Boolean)),"contourColor"in t&&(this.contourColor=B(t.contourColor)),"contourProject"in t&&(this.contourProject=R(t.contourProject,(function(t){return R(t,Boolean)}))),"surfaceProject"in t&&(this.surfaceProject=t.surfaceProject),"dynamicColor"in t&&(this.dynamicColor=B(t.dynamicColor)),"dynamicTint"in t&&(this.dynamicTint=R(t.dynamicTint,Number)),"dynamicWidth"in t&&(this.dynamicWidth=R(t.dynamicWidth,Number)),"opacity"in t&&(this.opacity=t.opacity),"opacityscale"in t&&(this.opacityscale=t.opacityscale),"colorBounds"in t&&(this.colorBounds=t.colorBounds),"vertexColor"in t&&(this.vertexColor=t.vertexColor?1:0);var e=t.field||t.coords&&t.coords[2]||null,r=!1;if(e||(e=this._field[2].shape[0]||this._field[2].shape[2]?this._field[2].lo(1,1).hi(this._field[2].shape[0]-2,this._field[2].shape[1]-2):this._field[2].hi(0,0)),"field"in t||"coords"in t){var a=(e.shape[0]+2)*(e.shape[1]+2);a>this._field[2].data.length&&(s.freeFloat(this._field[2].data),this._field[2].data=s.mallocFloat(n.nextPow2(a))),this._field[2]=h(this._field[2].data,[e.shape[0]+2,e.shape[1]+2]),this.padField(this._field[2],e),this.shape=e.shape.slice();for(var i=this.shape,o=0;o<2;++o)this._field[2].size>this._field[o].data.length&&(s.freeFloat(this._field[o].data),this._field[o].data=s.mallocFloat(this._field[2].size)),this._field[o]=h(this._field[o].data,[i[0]+2,i[1]+2]);if(t.coords){var p=t.coords;if(!Array.isArray(p)||3!==p.length)throw new Error(“gl-surface: invalid coordinates for x/y”);for(o=0;o<2;++o){var d=p[o];for(b=0;b<2;++b)if(d.shape[b]!==i[b])throw new Error("gl-surface: coords have incorrect shape");this.padField(this._field[o],d)}}else if(t.ticks){var g=t.ticks;if(!Array.isArray(g)||2!==g.length)throw new Error("gl-surface: invalid ticks");for(o=0;o<2;++o){var v=g[o];if((Array.isArray(v)||v.length)&&(v=h(v)),v.shape[0]!==i[o])throw new Error("gl-surface: invalid tick length");var y=h(v.data,i);y.stride[o]=v.stride[0],y.stride[1^o]=0,this.padField(this._field[o],y)}}else{for(o=0;o<2;++o){var x=[0,0];x[o]=1,this._field[o]=h(this._field[o].data,[i[0]+2,i[1]+2],x,0)}this._field[0].set(0,0,0);for(var b=0;b0){for(var wt=0;wt<5;++wt)et.pop();H-=1}continue t}et.push(ot[0],ot[1],ct[0],ct[1],ot[2]),H+=1}}it.push(H)}this._contourOffsets[rt]=at,this._contourCounts[rt]=it}var Tt=s.mallocFloat(et.length);for(o=0;ot&&r>0){var n=(e[r][0]-t)/(e[r][0]-e[r-1][0]);return e[r][1]*(1-n)+n*e[r-1][1]}}return 1}(r/255,e):1;return[t[0],t[1],t[2],255*n]}))]);return c.divseq(r,255),r}(t.colormap,this.opacityscale))},S.dispose=function(){this._shader.dispose(),this._vao.dispose(),this._coordinateBuffer.dispose(),this._colorMap.dispose(),this._contourBuffer.dispose(),this._contourVAO.dispose(),this._contourShader.dispose(),this._contourPickShader.dispose(),this._dynamicBuffer.dispose(),this._dynamicVAO.dispose();for(var t=0;t<3;++t)s.freeFloat(this._field[t].data)},S.highlight=function(t){var e,r;if(!t)return this._dynamicCounts=[0,0,0],this.dyanamicLevel=[NaN,NaN,NaN],void(this.highlightLevel=[-1,-1,-1]);for(e=0;e<3;++e)this.enableHighlight[e]?this.highlightLevel[e]=t.level[e]:this.highlightLevel[e]=-1;for(r=this.snapToData?t.dataCoordinate:t.position,e=0;e<3;++e)r[e]-=this.objectOffset[e];if(this.enableDynamic[0]&&r[0]!==this.dynamicLevel[0]||this.enableDynamic[1]&&r[1]!==this.dynamicLevel[1]||this.enableDynamic[2]&&r[2]!==this.dynamicLevel[2]){for(var n=0,a=this.shape,i=s.mallocFloat(12*a[0]*a[1]),o=0;o<3;++o)if(this.enableDynamic[o]){this.dynamicLevel[o]=r[o];var l=(o+1)%3,c=(o+2)%3,u=this._field[o],h=this._field[l],p=this._field[c],d=f(u,r[o]),g=d.cells,m=d.positions;for(this._dynamicOffsets[o]=n,e=0;e halfCharStep + halfCharWidth ||\n\t\t\t\t\tfloor(uv.x) < halfCharStep - halfCharWidth) return;\n\n\t\t\t\tuv += charId * charStep;\n\t\t\t\tuv = uv / atlasSize;\n\n\t\t\t\tvec4 color = fontColor;\n\t\t\t\tvec4 mask = texture2D(atlas, uv);\n\n\t\t\t\tfloat maskY = lightness(mask);\n\t\t\t\t// float colorY = lightness(color);\n\t\t\t\tcolor.a *= maskY;\n\t\t\t\tcolor.a *= opacity;\n\n\t\t\t\t// color.a += .1;\n\n\t\t\t\t// antialiasing, see yiq color space y-channel formula\n\t\t\t\t// color.rgb += (1. - color.rgb) * (1. - mask.rgb);\n\n\t\t\t\tglFragColor = color;\n\t\t\t}“});return{regl:t,draw:e,atlas:{}}},T.prototype.update=function(t){var e=this;if(“string”==typeof t)t={text:t};else if(!t)return;null!=(t=a(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)).opacity&&(Array.isArray(t.opacity)?this.opacity=t.opacity.map((function(t){return parseFloat(t)})):this.opacity=parseFloat(t.opacity)),null!=t.viewport&&(this.viewport=h(t.viewport),T.normalViewport&&(this.viewport.y=this.canvas.height-this.viewport.y-this.viewport.height),this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),null==this.viewport&&(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]),null!=t.kerning&&(this.kerning=t.kerning),null!=t.offset&&(“number”==typeof t.offset&&(t.offset=[t.offset,0]),this.positionOffset=y(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=T.baseFontSize+“px sans-serif”);var r,i=!1,o=!1;if(t.font&&(Array.isArray(t.font)?t.font:[t.font]).forEach((function(t,r){if(“string”==typeof t)try{t=n.parse(t)}catch(e){t=n.parse(T.baseFontSize+“px “+t)}else t=n.parse(n.stringify(t));var a=n.stringify({size:T.baseFontSize,family:t.family,stretch:?t.stretch:void 0,variant:t.variant,weight:t.weight,style:t.style}),s=p(t.size),l=Math.round(s[0]*d(s[1]));if(l!==e.fontSize[r]&&(o=!0,e.fontSize[r]=l),!(e.font[r]&&a==e.font[r].baseString||(i=!0,e.font[r]=T.fonts[a],e.font[r]))){var c=t.family.join(“, “),u=[t.style];t.style!=t.variant&&u.push(t.variant),t.variant!=t.weight&&u.push(t.weight),&&t.weight!=t.stretch&&u.push(t.stretch),e.font[r]={baseString:a,family:c,weight:t.weight,stretch:t.stretch,style:t.style,variant:t.variant,width:{},kerning:{},metrics:v(c,{origin:“top”,fontSize:T.baseFontSize,fontStyle:u.join(” “)})},T.fonts[a]=e.font[r]}})),(i||o)&&this.font.forEach((function(r,a){var i=n.stringify({size:e.fontSize[a],family:r.family,stretch:?r.stretch:void 0,variant:r.variant,weight:r.weight,style:r.style});if(e.fontAtlas[a]=e.shader.atlas[i],!e.fontAtlas[a]){var o=r.metrics;e.shader.atlas[i]=e.fontAtlas[a]={fontString:i,step:2*Math.ceil(e.fontSize[a]o.bottom.5),em:e.fontSize[a],cols:0,rows:0,height:0,width:0,chars:[],ids:{},texture:e.regl.texture()}}null==t.text&&(t.text=e.text)})),“string”==typeof t.text&&t.position&&t.position.length>2){for(var s=Array(.5*t.position.length),f=0;f2){for(var w=!t.position[0].length,k=u.mallocFloat(2*this.count),A=0,M=0;A1?e.align[r]:e.align[0]:e.align;if(“number”==typeof n)return n;switch(n){case”right”:case”end”:return-t;case”center”:case”centre”:case”middle”:return.5*-t}return 0}))),null==this.baseline&&null==t.baseline&&(t.baseline=0),null!=t.baseline&&(this.baseline=t.baseline,Array.isArray(this.baseline)||(this.baseline=[this.baseline]),this.baselineOffset=this.baseline.map((function(t,r){var n=(e.font[r]||e.font[0]).metrics,a=0;return a+=.5n.bottom,a+=“number”==typeof t?t-n.baseline:-n[t],T.normalViewport||(a=-1),a}))),null!=t.color)if(t.color||(t.color=“transparent”),“string”!=typeof t.color&&isNaN(t.color)){var H;if(“number”==typeof t.color[0]&&t.color.length>this.counts.length){var G=t.color.length;H=u.mallocUint8(G);for(var Y=(t.color.subarray||t.color.slice).bind(t.color),W=0;W4||this.baselineOffset.length>1||this.align&&this.align.length>1||this.fontAtlas.length>1||this.positionOffset.length>2){var J=Math.max(.5*this.position.length||0,.25*this.color.length||0,this.baselineOffset.length||0,this.alignOffset.length||0,this.font.length||0,this.opacity.length||0,.5*this.positionOffset.length||0);this.batch=Array(J);for(var K=0;K1?this.counts[K]:this.counts[0],offset:this.textOffsets.length>1?this.textOffsets[K]:this.textOffsets[0],color:this.color?this.color.length<=4?this.color:this.color.subarray(4*K,4*K+4):[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[K]:this.opacity,baseline:null!=this.baselineOffset[K]?this.baselineOffset[K]:this.baselineOffset[0],align:this.align?null!=this.alignOffset[K]?this.alignOffset[K]:this.alignOffset[0]:0,atlas:this.fontAtlas[K]||this.fontAtlas[0],positionOffset:this.positionOffset.length>2?this.positionOffset.subarray(2*K,2*K+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=[]},T.prototype.destroy=function(){},T.prototype.kerning=!0,T.prototype.position={constant:new Float32Array(2)},T.prototype.translate=null,T.prototype.scale=null,T.prototype.font=null,T.prototype.text=“”,T.prototype.positionOffset=[0,0],T.prototype.opacity=1,T.prototype.color=new Uint8Array([0,0,0,255]),T.prototype.alignOffset=[0,0],T.normalViewport=!1,T.maxAtlasSize=1024,T.atlasCanvas=document.createElement(“canvas”),T.atlasContext=T.atlasCanvas.getContext(“2d”,{alpha:!1}),T.baseFontSize=64,T.fonts={},e.exports=T},{“bit-twiddle”:95,“color-normalize”:122,“css-font”:141,“detect-kerning”:167,“es6-weak-map”:228,“flatten-vertex-data”:239,“font-atlas”:240,“font-measure”:241,“gl-util/context”:323,“is-plain-obj”:422,“object-assign”:452,“parse-rect”:457,“parse-unit”:459,“pick-by-alias”:463,regl:492,“to-px”:530,“typedarray-pool”:547}],322:[function(t,e,r){“use strict”;var n=t(“ndarray”),a=t(“ndarray-ops”),i=t(“typedarray-pool”);e.exports=function(t){if(arguments.length<=1)throw new Error(“gl-texture2d: Missing arguments for texture2d constructor”);o||c(t);if(“number”==typeof arguments[1])return v(t,arguments[1],arguments[2],arguments[3]||t.RGBA,arguments[4]||t.UNSIGNED_BYTE);if(Array.isArray(arguments[1]))return v(t,0|arguments[1][0],0|arguments[1][1],arguments[2]||t.RGBA,arguments[3]||t.UNSIGNED_BYTE);if(“object”==typeof arguments[1]){var e=arguments[1],r=u(e)?e:e.raw;if®return y(t,r,0|e.width,0|e.height,arguments[2]||t.RGBA,arguments[3]||t.UNSIGNED_BYTE);if(e.shape&&e.data&&e.stride)return x(t,e)}throw new Error(“gl-texture2d: Invalid arguments for texture2d constructor”)};var o=null,s=null,l=null;function c(t){o=[t.LINEAR,t.NEAREST_MIPMAP_LINEAR,t.LINEAR_MIPMAP_NEAREST,t.LINEAR_MIPMAP_NEAREST],s=[t.NEAREST,t.LINEAR,t.NEAREST_MIPMAP_NEAREST,t.NEAREST_MIPMAP_LINEAR,t.LINEAR_MIPMAP_NEAREST,t.LINEAR_MIPMAP_LINEAR],l=[t.REPEAT,t.CLAMP_TO_EDGE,t.MIRRORED_REPEAT]}function u(t){return”undefined”!=typeof HTMLCanvasElement&&t instanceof HTMLCanvasElement||“undefined”!=typeof HTMLImageElement&&t instanceof HTMLImageElement||“undefined”!=typeof HTMLVideoElement&&t instanceof HTMLVideoElement||“undefined”!=typeof ImageData&&t instanceof ImageData}var h=function(t,e){a.muls(t,e,255)};function f(t,e,r){var n=t.gl,a=n.getParameter(n.MAX_TEXTURE_SIZE);if(e<0||e>a||r<0||r>a)throw new Error(“gl-texture2d: Invalid texture size”);return t._shape=[e,r],t.bind(),n.texImage2D(n.TEXTURE_2D,0,t.format,e,r,0,t.format,t.type,null),t._mipLevels=[0],t}function p(t,e,r,n,a,i){this.gl=t,this.handle=e,this.format=a,this.type=i,this._shape=[r,n],this._mipLevels=[0],this._magFilter=t.NEAREST,this._minFilter=t.NEAREST,this._wrapS=t.CLAMP_TO_EDGE,this._wrapT=t.CLAMP_TO_EDGE,this._anisoSamples=1;var o=this,s=[this._wrapS,this._wrapT];Object.defineProperties(s,[{get:function(){return o._wrapS},set:function(t){return o.wrapS=t}},{get:function(){return o._wrapT},set:function(t){return o.wrapT=t}}]),this._wrapVector=s;var l=[this._shape[0],this._shape[1]];Object.defineProperties(l,[{get:function(){return o._shape[0]},set:function(t){return o.width=t}},{get:function(){return o._shape[1]},set:function(t){return o.height=t}}]),this._shapeVector=l}var d=p.prototype;function g(t,e){return 3===t.length?1===e[2]&&e[1]===t[0]*t[2]&&e[0]===t[2]:1===e[0]&&e[1]===t[0]}function m(t){var e=t.createTexture();return t.bindTexture(t.TEXTURE_2D,e),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.NEAREST),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.NEAREST),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),e}function v(t,e,r,n,a){var i=t.getParameter(t.MAX_TEXTURE_SIZE);if(e<0||e>i||r<0||r>i)throw new Error(“gl-texture2d: Invalid texture shape”);if(a===t.FLOAT&&!t.getExtension(“OES_texture_float”))throw new Error(“gl-texture2d: Floating point textures not supported on this platform”);var o=m(t);return t.texImage2D(t.TEXTURE_2D,0,n,e,r,0,n,a,null),new p(t,o,e,r,n,a)}function y(t,e,r,n,a,i){var o=m(t);return t.texImage2D(t.TEXTURE_2D,0,a,a,i,e),new p(t,o,r,n,a,i)}function x(t,e){var r=e.dtype,o=e.shape.slice(),s=t.getParameter(t.MAX_TEXTURE_SIZE);if(o[0]<0||o[0]>s||o[1]<0||o[1]>s)throw new Error(“gl-texture2d: Invalid texture size”);var l=g(o,e.stride.slice()),c=0;“float32”===r?c=t.FLOAT:“float64”===r?(c=t.FLOAT,l=!1,r=“float32”):“uint8”===r?c=t.UNSIGNED_BYTE:(c=t.UNSIGNED_BYTE,l=!1,r=“uint8”);var u,f,d=0;if(2===o.length)d=t.LUMINANCE,o=[o[0],o[1],1],e=n(e.data,o,[e.stride[0],e.stride[1],1],e.offset);else{if(3!==o.length)throw new Error(“gl-texture2d: Invalid shape for texture”);if(1===o[2])d=t.ALPHA;else if(2===o[2])d=t.LUMINANCE_ALPHA;else if(3===o[2])d=t.RGB;else{if(4!==o[2])throw new Error(“gl-texture2d: Invalid shape for pixel coords”);d=t.RGBA}}c!==t.FLOAT||t.getExtension(“OES_texture_float”)||(c=t.UNSIGNED_BYTE,l=!1);var v=e.size;if(l)u=0===e.offset&&e.data.length===v?e.data:e.data.subarray(e.offset,e.offset+v);else{var y=[o[2],o[2]*o[0],1];f=i.malloc(v,r);var x=n(f,o,y,0);“float32”!==r&&“float64”!==r||c!==t.UNSIGNED_BYTE?a.assign(x,e):h(x,e),u=f.subarray(0,v)}var b=m(t);return t.texImage2D(t.TEXTURE_2D,0,d,o[0],o[1],0,d,c,u),l||i.free(f),new p(t,b,o[0],o[1],d,c)}Object.defineProperties(d,{minFilter:{get:function(){return this._minFilter},set:function(t){this.bind();var e=this.gl;if(this.type===e.FLOAT&&o.indexOf(t)>=0&&(e.getExtension(“OES_texture_float_linear”)||(t=e.NEAREST)),s.indexOf(t)<0)throw new Error("gl-texture2d: Unknown filter mode "+t);return e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,t),this._minFilter=t}},magFilter:{get:function(){return this._magFilter},set:function(t){this.bind();var e=this.gl;if(this.type===e.FLOAT&&o.indexOf(t)>=0&&(e.getExtension(“OES_texture_float_linear”)||(t=e.NEAREST)),s.indexOf(t)<0)throw new Error("gl-texture2d: Unknown filter mode "+t);return e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,t),this._magFilter=t}},mipSamples:{get:function(){return this._anisoSamples},set:function(t){var e=this._anisoSamples;if(this._anisoSamples=0|Math.max(t,1),e!==this._anisoSamples){var r=this.gl.getExtension("EXT_texture_filter_anisotropic");r&&this.gl.texParameterf(this.gl.TEXTURE_2D,r.TEXTURE_MAX_ANISOTROPY_EXT,this._anisoSamples)}return this._anisoSamples}},wrapS:{get:function(){return this._wrapS},set:function(t){if(this.bind(),l.indexOf(t)<0)throw new Error("gl-texture2d: Unknown wrap mode "+t);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,t),this._wrapS=t}},wrapT:{get:function(){return this._wrapT},set:function(t){if(this.bind(),l.indexOf(t)<0)throw new Error("gl-texture2d: Unknown wrap mode "+t);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,t),this._wrapT=t}},wrap:{get:function(){return this._wrapVector},set:function(t){if(Array.isArray(t)||(t=[t,t]),2!==t.length)throw new Error("gl-texture2d: Must specify wrap mode for rows and columns");for(var e=0;e<2;++e)if(l.indexOf(t[e])<0)throw new Error("gl-texture2d: Unknown wrap mode "+t);this._wrapS=t[0],this._wrapT=t[1];var r=this.gl;return this.bind(),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,this._wrapS),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,this._wrapT),t}},shape:{get:function(){return this._shapeVector},set:function(t){if(Array.isArray(t)){if(2!==t.length)throw new Error("gl-texture2d: Invalid texture shape")}else t=[0|t,0|t];return f(this,0|t[0],0|t[1]),[0|t[0],0|t[1]]}},width:{get:function(){return this._shape[0]},set:function(t){return f(this,t|=0,this._shape[1]),t}},height:{get:function(){return this._shape[1]},set:function(t){return t|=0,f(this,this._shape[0],t),t}}}),d.bind=function(t){var e=this.gl;return void 0!==t&&e.activeTexture(e.TEXTURE0+(0|t)),e.bindTexture(e.TEXTURE_2D,this.handle),void 0!==t?0|t:e.getParameter(e.ACTIVE_TEXTURE)-e.TEXTURE0},d.dispose=function(){this.gl.deleteTexture(this.handle)},d.generateMipmap=function(){this.bind(),this.gl.generateMipmap(this.gl.TEXTURE_2D);for(var t=Math.min(this._shape[0],this._shape[1]),e=0;t>0;++e,t>>>=1)this._mipLevels.indexOf(e)<0&&this._mipLevels.push(e)},d.setPixels=function(t,e,r,o){var s=this.gl;this.bind(),Array.isArray(e)?(o=r,r=0|e[1],e=0|e[0]):(e=e||0,r=r||0),o=o||0;var l=u(t)?t:t.raw;if(l){this._mipLevels.indexOf(o)<0?(s.texImage2D(s.TEXTURE_2D,0,this.format,this.format,this.type,l),this._mipLevels.push(o)):s.texSubImage2D(s.TEXTURE_2D,o,e,r,this.format,this.type,l)}else{if(!(t.shape&&t.stride&&t.data))throw new Error("gl-texture2d: Unsupported data type");if(t.shape.length<2||e+t.shape[1]>this._shape[1]>>>o||r+t.shape[0]>this._shape[0]>>>o||e<0||r<0)throw new Error("gl-texture2d: Texture dimensions are out of bounds");!function(t,e,r,o,s,l,c,u){var f=u.dtype,p=u.shape.slice();if(p.length<2||p.length>3)throw new Error(“gl-texture2d: Invalid ndarray, must be 2d or 3d”);var d=0,m=0,v=g(p,u.stride.slice());“float32”===f?d=t.FLOAT:“float64”===f?(d=t.FLOAT,v=!1,f=“float32”):“uint8”===f?d=t.UNSIGNED_BYTE:(d=t.UNSIGNED_BYTE,v=!1,f=“uint8”);if(2===p.length)m=t.LUMINANCE,p=[p[0],p[1],1],u=n(u.data,p,[u.stride[0],u.stride[1],1],u.offset);else{if(3!==p.length)throw new Error(“gl-texture2d: Invalid shape for texture”);if(1===p[2])m=t.ALPHA;else if(2===p[2])m=t.LUMINANCE_ALPHA;else if(3===p[2])m=t.RGB;else{if(4!==p[2])throw new Error(“gl-texture2d: Invalid shape for pixel coords”);m=t.RGBA}p[2]}m!==t.LUMINANCE&&m!==t.ALPHA||s!==t.LUMINANCE&&s!==t.ALPHA||(m=s);if(m!==s)throw new Error(“gl-texture2d: Incompatible texture format for setPixels”);var y=u.size,x=c.indexOf(o)<0;x&&c.push(o);if(d===l&&v)0===u.offset&&u.data.length===y?x?t.texImage2D(t.TEXTURE_2D,o,s,p[0],p[1],0,s,l,u.data):t.texSubImage2D(t.TEXTURE_2D,o,e,r,p[0],p[1],s,l,u.data):x?t.texImage2D(t.TEXTURE_2D,o,s,p[0],p[1],0,s,l,u.data.subarray(u.offset,u.offset+y)):t.texSubImage2D(t.TEXTURE_2D,o,e,r,p[0],p[1],s,l,u.data.subarray(u.offset,u.offset+y));else{var b;b=l===t.FLOAT?i.mallocFloat32(y):i.mallocUint8(y);var _=n(b,p,[p[2],p[2]*p[0],1]);d===t.FLOAT&&l===t.UNSIGNED_BYTE?h(_,u):a.assign(_,u),x?t.texImage2D(t.TEXTURE_2D,o,s,p[0],p[1],0,s,l,b.subarray(0,y)):t.texSubImage2D(t.TEXTURE_2D,o,e,r,p[0],p[1],s,l,b.subarray(0,y)),l===t.FLOAT?i.freeFloat32(b):i.freeUint8(b)}}(s,e,r,o,this.format,this.type,this._mipLevels,t)}}},{ndarray:448,"ndarray-ops":443,"typedarray-pool":547}],323:[function(t,e,r){(function(r){"use strict";var n=t("pick-by-alias");function a(t){if(t.container)if(t.container==document.body)document.body.style.width||(t.canvas.width=t.width||t.pixelRatio*r.innerWidth),document.body.style.height||(t.canvas.height=t.height||t.pixelRatio*r.innerHeight);else{var e=t.container.getBoundingClientRect();t.canvas.width=t.width||e.right-e.left,t.canvas.height=t.height||e.bottom-e.top}}function i(t){return"function"==typeof t.getContext&&"width"in t&&"height"in t}function o(){var t=document.createElement("canvas");return t.style.position="absolute",t.style.top=0,t.style.left=0,t}e.exports=function(t){var e;if(t?"string"==typeof t&&(t={container:t}):t={},i(t)?t={container:t}:t="string"==typeof(e=t).nodeName&&"function"==typeof e.appendChild&&"function"==typeof e.getBoundingClientRect?{container:t}:function(t){return"function"==typeof t.drawArrays||"function"==typeof t.drawElements}(t)?{gl:t}:n(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=r.pixelRatio||1),t.gl)return t.gl;if(t.canvas&&(t.container=t.canvas.parentNode),t.container){if("string"==typeof t.container){var s=document.querySelector(t.container);if(!s)throw Error("Element "+t.container+" is not found");t.container=s}i(t.container)?(t.canvas=t.container,t.container=t.canvas.parentNode):t.canvas||(t.canvas=o(),t.container.appendChild(t.canvas),a(t))}else if(!t.canvas){if("undefined"==typeof document)throw Error("Not DOM environment. Use headless-gl.");t.container=document.body||document.documentElement,t.canvas=o(),t.container.appendChild(t.canvas),a(t)}if(!t.gl)try{t.gl=t.canvas.getContext("webgl",t.attrs)}catch(e){try{t.gl=t.canvas.getContext("experimental-webgl",t.attrs)}catch(e){t.gl=t.canvas.getContext("webgl-experimental",t.attrs)}}return t.gl}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"pick-by-alias":463}],324:[function(t,e,r){"use strict";e.exports=function(t,e,r){e?e.bind():t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,null);var n=0|t.getParameter(t.MAX_VERTEX_ATTRIBS);if(r){if(r.length>n)throw new Error(“gl-vao: Too many vertex attributes”);for(var a=0;a1?0:Math.acos(s)};var n=t(“./fromValues”),a=t(“./normalize”),i=t(“./dot”)},{“./dot”:339,“./fromValues”:345,“./normalize”:356}],330:[function(t,e,r){e.exports=function(t,e){return t[0]=Math.ceil(e[0]),t[1]=Math.ceil(e[1]),t[2]=Math.ceil(e[2]),t}},{}],331:[function(t,e,r){e.exports=function(t){var e=new Float32Array(3);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e}},{}],332:[function(t,e,r){e.exports=function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}},{}],333:[function(t,e,r){e.exports=function(){var t=new Float32Array(3);return t[0]=0,t[1]=0,t[2]=0,t}},{}],334:[function(t,e,r){e.exports=function(t,e,r){var n=e[0],a=e[1],i=e[2],o=r[0],s=r[1],l=r[2];return t[0]=a*l-i*s,t[1]=i*o-n*l,t[2]=n*s-a*o,t}},{}],335:[function(t,e,r){e.exports=t(“./distance”)},{“./distance”:336}],336:[function(t,e,r){e.exports=function(t,e){var r=e[0]-t[0],n=e[1]-t[1],a=e[2]-t[2];return Math.sqrt(r*r+n*n+a*a)}},{}],337:[function(t,e,r){e.exports=t(“./divide”)},{“./divide”:338}],338:[function(t,e,r){e.exports=function(t,e,r){return t[0]=e[0]/r[0],t[1]=e[1]/r[1],t[2]=e[2]/r[2],t}},{}],339:[function(t,e,r){e.exports=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}},{}],340:[function(t,e,r){e.exports=1e-6},{}],341:[function(t,e,r){e.exports=function(t,e){var r=t[0],a=t[1],i=t[2],o=e[0],s=e[1],l=e[2];return Math.abs(r-o)<=n*Math.max(1,Math.abs®,Math.abs(o))&&Math.abs(a-s)<=n*Math.max(1,Math.abs(a),Math.abs(s))&&Math.abs(i-l)<=n*Math.max(1,Math.abs(i),Math.abs(l))};var n=t(“./epsilon”)},{“./epsilon”:340}],342:[function(t,e,r){e.exports=function(t,e){return t[0]===e[0]&&t[1]===e[1]&&t[2]===e[2]}},{}],343:[function(t,e,r){e.exports=function(t,e){return t[0]=Math.floor(e[0]),t[1]=Math.floor(e[1]),t[2]=Math.floor(e[2]),t}},{}],344:[function(t,e,r){e.exports=function(t,e,r,a,i,o){var s,l;e||(e=3);r||(r=0);l=a?Math.min(a*e+r,t.length):t.length;for(s=r;s0&&(i=1/Math.sqrt(i),t[0]=e[0]*i,t[1]=e[1]*i,t[2]=e[2]*i);return t}},{}],357:[function(t,e,r){e.exports=function(t,e){e=e||1;var r=2*Math.random()*Math.PI,n=2*Math.random()-1,a=Math.sqrt(1-n*n)*e;return t[0]=Math.cos®*a,t[1]=Math.sin®*a,t[2]=n*e,t}},{}],358:[function(t,e,r){e.exports=function(t,e,r,n){var a=r[1],i=r[2],o=e[1]-a,s=e[2]-i,l=Math.sin(n),c=Math.cos(n);return t[0]=e[0],t[1]=a+o*c-s*l,t[2]=i+o*l+s*c,t}},{}],359:[function(t,e,r){e.exports=function(t,e,r,n){var a=r[0],i=r[2],o=e[0]-a,s=e[2]-i,l=Math.sin(n),c=Math.cos(n);return t[0]=a+s*l+o*c,t[1]=e[1],t[2]=i+s*c-o*l,t}},{}],360:[function(t,e,r){e.exports=function(t,e,r,n){var a=r[0],i=r[1],o=e[0]-a,s=e[1]-i,l=Math.sin(n),c=Math.cos(n);return t[0]=a+o*c-s*l,t[1]=i+o*l+s*c,t[2]=e[2],t}},{}],361:[function(t,e,r){e.exports=function(t,e){return t[0]=Math.round(e[0]),t[1]=Math.round(e[1]),t[2]=Math.round(e[2]),t}},{}],362:[function(t,e,r){e.exports=function(t,e,r){return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t}},{}],363:[function(t,e,r){e.exports=function(t,e,r,n){return t[0]=e[0]+r[0]*n,t[1]=e[1]+r[1]*n,t[2]=e[2]+r[2]*n,t}},{}],364:[function(t,e,r){e.exports=function(t,e,r,n){return t[0]=e,t[1]=r,t[2]=n,t}},{}],365:[function(t,e,r){e.exports=t(“./squaredDistance”)},{“./squaredDistance”:367}],366:[function(t,e,r){e.exports=t(“./squaredLength”)},{“./squaredLength”:368}],367:[function(t,e,r){e.exports=function(t,e){var r=e[0]-t[0],n=e[1]-t[1],a=e[2]-t[2];return r*r+n*n+a*a}},{}],368:[function(t,e,r){e.exports=function(t){var e=t[0],r=t[1],n=t[2];return e*e+r*r+n*n}},{}],369:[function(t,e,r){e.exports=t(“./subtract”)},{“./subtract”:370}],370:[function(t,e,r){e.exports=function(t,e,r){return t[0]=e[0]-r[0],t[1]=e[1]-r[1],t[2]=e[2]-r[2],t}},{}],371:[function(t,e,r){e.exports=function(t,e,r){var n=e[0],a=e[1],i=e[2];return t[0]=n*r[0]+a*r[3]+i*r[6],t[1]=n*r[1]+a*r[4]+i*r[7],t[2]=n*r[2]+a*r[5]+i*r[8],t}},{}],372:[function(t,e,r){e.exports=function(t,e,r){var n=e[0],a=e[1],i=e[2],o=r[3]*n+r[7]*a+r[11]*i+r[15];return o=o||1,t[0]=(r[0]*n+r[4]*a+r[8]*i+r[12])/o,t[1]=(r[1]*n+r[5]*a+r[9]*i+r[13])/o,t[2]=(r[2]*n+r[6]*a+r[10]*i+r[14])/o,t}},{}],373:[function(t,e,r){e.exports=function(t,e,r){var n=e[0],a=e[1],i=e[2],o=r[0],s=r[1],l=r[2],c=r[3],u=c*n+s*i-l*a,h=c*a+l*n-o*i,f=c*i+o*a-s*n,p=-o*n-s*a-l*i;return t[0]=uc+p-o+h-l-f-s,t[1]=hc+p-s+f-o-u-l,t[2]=fc+p-l+u-s-h-o,t}},{}],374:[function(t,e,r){e.exports=function(t,e,r){return t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t[3]=e[3]+r[3],t}},{}],375:[function(t,e,r){e.exports=function(t){var e=new Float32Array(4);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e}},{}],376:[function(t,e,r){e.exports=function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t}},{}],377:[function(t,e,r){e.exports=function(){var t=new Float32Array(4);return t[0]=0,t[1]=0,t[2]=0,t[3]=0,t}},{}],378:[function(t,e,r){e.exports=function(t,e){var r=e[0]-t[0],n=e[1]-t[1],a=e[2]-t[2],i=e[3]-t[3];return Math.sqrt(r*r+n*n+a*a+i*i)}},{}],379:[function(t,e,r){e.exports=function(t,e,r){return t[0]=e[0]/r[0],t[1]=e[1]/r[1],t[2]=e[2]/r[2],t[3]=e[3]/r[3],t}},{}],380:[function(t,e,r){e.exports=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]}},{}],381:[function(t,e,r){e.exports=function(t,e,r,n){var a=new Float32Array(4);return a[0]=t,a[1]=e,a[2]=r,a[3]=n,a}},{}],382:[function(t,e,r){e.exports={create:t(“./create”),clone:t(“./clone”),fromValues:t(“./fromValues”),copy:t(“./copy”),set:t(“./set”),add:t(“./add”),subtract:t(“./subtract”),multiply:t(“./multiply”),divide:t(“./divide”),min:t(“./min”),max:t(“./max”),scale:t(“./scale”),scaleAndAdd:t(“./scaleAndAdd”),distance:t(“./distance”),squaredDistance:t(“./squaredDistance”),length:t(“./length”),squaredLength:t(“./squaredLength”),negate:t(“./negate”),inverse:t(“./inverse”),normalize:t(“./normalize”),dot:t(“./dot”),lerp:t(“./lerp”),random:t(“./random”),transformMat4:t(“./transformMat4”),transformQuat:t(“./transformQuat”)}},{“./add”:374,“./clone”:375,“./copy”:376,“./create”:377,“./distance”:378,“./divide”:379,“./dot”:380,“./fromValues”:381,“./inverse”:383,“./length”:384,“./lerp”:385,“./max”:386,“./min”:387,“./multiply”:388,“./negate”:389,“./normalize”:390,“./random”:391,“./scale”:392,“./scaleAndAdd”:393,“./set”:394,“./squaredDistance”:395,“./squaredLength”:396,“./subtract”:397,“./transformMat4”:398,“./transformQuat”:399}],383:[function(t,e,r){e.exports=function(t,e){return t[0]=1/e[0],t[1]=1/e[1],t[2]=1/e[2],t[3]=1/e[3],t}},{}],384:[function(t,e,r){e.exports=function(t){var e=t[0],r=t[1],n=t[2],a=t[3];return Math.sqrt(e*e+r*r+n*n+aa)}},{}],385:[function(t,e,r){e.exports=function(t,e,r,n){var a=e[0],i=e[1],o=e[2],s=e[3];return t[0]=a+n(r[0]-a),t[1]=i+n(r[1]-i),t[2]=o+n(r[2]-o),t[3]=s+n*(r[3]-s),t}},{}],386:[function(t,e,r){e.exports=function(t,e,r){return t[0]=Math.max(e[0],r[0]),t[1]=Math.max(e[1],r[1]),t[2]=Math.max(e[2],r[2]),t[3]=Math.max(e[3],r[3]),t}},{}],387:[function(t,e,r){e.exports=function(t,e,r){return t[0]=Math.min(e[0],r[0]),t[1]=Math.min(e[1],r[1]),t[2]=Math.min(e[2],r[2]),t[3]=Math.min(e[3],r[3]),t}},{}],388:[function(t,e,r){e.exports=function(t,e,r){return t[0]=e[0]*r[0],t[1]=e[1]*r[1],t[2]=e[2]*r[2],t[3]=e[3]*r[3],t}},{}],389:[function(t,e,r){e.exports=function(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t[3]=-e[3],t}},{}],390:[function(t,e,r){e.exports=function(t,e){var r=e[0],n=e[1],a=e[2],i=e[3],o=r*r+n*n+a*a+i*i;o>0&&(o=1/Math.sqrt(o),t[0]=r*o,t[1]=n*o,t[2]=a*o,t[3]=i*o);return t}},{}],391:[function(t,e,r){var n=t(“./normalize”),a=t(“./scale”);e.exports=function(t,e){return e=e||1,t[0]=Math.random(),t[1]=Math.random(),t[2]=Math.random(),t[3]=Math.random(),n(t,t),a(t,t,e),t}},{“./normalize”:390,“./scale”:392}],392:[function(t,e,r){e.exports=function(t,e,r){return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t[3]=e[3]*r,t}},{}],393:[function(t,e,r){e.exports=function(t,e,r,n){return t[0]=e[0]+r[0]*n,t[1]=e[1]+r[1]*n,t[2]=e[2]+r[2]*n,t[3]=e[3]+r[3]*n,t}},{}],394:[function(t,e,r){e.exports=function(t,e,r,n,a){return t[0]=e,t[1]=r,t[2]=n,t[3]=a,t}},{}],395:[function(t,e,r){e.exports=function(t,e){var r=e[0]-t[0],n=e[1]-t[1],a=e[2]-t[2],i=e[3]-t[3];return r*r+n*n+a*a+i*i}},{}],396:[function(t,e,r){e.exports=function(t){var e=t[0],r=t[1],n=t[2],a=t[3];return e*e+r*r+n*n+a*a}},{}],397:[function(t,e,r){e.exports=function(t,e,r){return t[0]=e[0]-r[0],t[1]=e[1]-r[1],t[2]=e[2]-r[2],t[3]=e[3]-r[3],t}},{}],398:[function(t,e,r){e.exports=function(t,e,r){var n=e[0],a=e[1],i=e[2],o=e[3];return t[0]=r[0]*n+r[4]*a+r[8]*i+r[12]*o,t[1]=r[1]*n+r[5]*a+r[9]*i+r[13]*o,t[2]=r[2]*n+r[6]*a+r[10]*i+r[14]*o,t[3]=r[3]*n+r[7]*a+r[11]*i+r[15]*o,t}},{}],399:[function(t,e,r){e.exports=function(t,e,r){var n=e[0],a=e[1],i=e[2],o=r[0],s=r[1],l=r[2],c=r[3],u=c*n+s*i-l*a,h=c*a+l*n-o*i,f=c*i+o*a-s*n,p=-o*n-s*a-l*i;return t[0]=uc+p-o+h-l-f-s,t[1]=hc+p-s+f-o-u-l,t[2]=fc+p-l+u-s-h-o,t[3]=e[3],t}},{}],400:[function(t,e,r){var n=t(“glsl-tokenizer”),a=t(“atob-lite”);e.exports=function(t){for(var e=Array.isArray(t)?t:n(t),r=0;r0)continue;r=t.slice(0,1).join(“”)}return A®,v+=r.length,(p=p.slice(r.length)).length}}function I(){return/[^a-fA-F0-9]/.test(e)?(A(p.join(“”)),f=999,u):(p.push(e),r=e,u+1)}function z(){return”.“===e||/[eE]/.test(e)?(p.push(e),f=5,r=e,u+1):“x”===e&&1===p.length&&“0”===p[0]?(f=11,p.push(e),r=e,u+1):/[^\d]/.test(e)?(A(p.join(“”)),f=999,u):(p.push(e),r=e,u+1)}function O(){return”f”===e&&(p.push(e),r=e,u+=1),/[eE]/.test(e)?(p.push(e),r=e,u+1):(“-”!==e&&“+”!==e||!/[eE]/.test®)&&/[^\d]/.test(e)?(A(p.join(“”)),f=999,u):(p.push(e),r=e,u+1)}function D(){if(/[^\d\w]/.test(e)){var t=p.join(“”);return f=k[t]?8:T[t]?7:6,A(p.join(“”)),f=999,u}return p.push(e),r=e,u+1}};var n=t(“./lib/literals”),a=t(“./lib/operators”),i=t(“./lib/builtins”),o=t(“./lib/literals-300es”),s=t(“./lib/builtins-300es”),l=[“block-comment”,“line-comment”,“preprocessor”,“operator”,“integer”,“float”,“ident”,“builtin”,“keyword”,“whitespace”,“eof”,“integer”]},{“./lib/builtins”:403,“./lib/builtins-300es”:402,“./lib/literals”:405,“./lib/literals-300es”:404,“./lib/operators”:406}],402:[function(t,e,r){var n=t(“./builtins”);n=n.slice().filter((function(t){return!/^(gl|texture)/.test(t)})),e.exports=n.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”])},{“./builtins”:403}],403:[function(t,e,r){e.exports=[“abs”,“acos”,“all”,“any”,“asin”,“atan”,“ceil”,“clamp”,“cos”,“cross”,“dFdx”,“dFdy”,“degrees”,“distance”,“dot”,“equal”,“exp”,“exp2”,“faceforward”,“floor”,“fract”,“gl_BackColor”,“gl_BackLightModelProduct”,“gl_BackLightProduct”,“gl_BackMaterial”,“gl_BackSecondaryColor”,“gl_ClipPlane”,“gl_ClipVertex”,“gl_Color”,“gl_DepthRange”,“gl_DepthRangeParameters”,“gl_EyePlaneQ”,“gl_EyePlaneR”,“gl_EyePlaneS”,“gl_EyePlaneT”,“gl_Fog”,“gl_FogCoord”,“gl_FogFragCoord”,“gl_FogParameters”,“gl_FragColor”,“gl_FragCoord”,“gl_FragData”,“gl_FragDepth”,“gl_FragDepthEXT”,“gl_FrontColor”,“gl_FrontFacing”,“gl_FrontLightModelProduct”,“gl_FrontLightProduct”,“gl_FrontMaterial”,“gl_FrontSecondaryColor”,“gl_LightModel”,“gl_LightModelParameters”,“gl_LightModelProducts”,“gl_LightProducts”,“gl_LightSource”,“gl_LightSourceParameters”,“gl_MaterialParameters”,“gl_MaxClipPlanes”,“gl_MaxCombinedTextureImageUnits”,“gl_MaxDrawBuffers”,“gl_MaxFragmentUniformComponents”,“gl_MaxLights”,“gl_MaxTextureCoords”,“gl_MaxTextureImageUnits”,“gl_MaxTextureUnits”,“gl_MaxVaryingFloats”,“gl_MaxVertexAttribs”,“gl_MaxVertexTextureImageUnits”,“gl_MaxVertexUniformComponents”,“gl_ModelViewMatrix”,“gl_ModelViewMatrixInverse”,“gl_ModelViewMatrixInverseTranspose”,“gl_ModelViewMatrixTranspose”,“gl_ModelViewProjectionMatrix”,“gl_ModelViewProjectionMatrixInverse”,“gl_ModelViewProjectionMatrixInverseTranspose”,“gl_ModelViewProjectionMatrixTranspose”,“gl_MultiTexCoord0”,“gl_MultiTexCoord1”,“gl_MultiTexCoord2”,“gl_MultiTexCoord3”,“gl_MultiTexCoord4”,“gl_MultiTexCoord5”,“gl_MultiTexCoord6”,“gl_MultiTexCoord7”,“gl_Normal”,“gl_NormalMatrix”,“gl_NormalScale”,“gl_ObjectPlaneQ”,“gl_ObjectPlaneR”,“gl_ObjectPlaneS”,“gl_ObjectPlaneT”,“gl_Point”,“gl_PointCoord”,“gl_PointParameters”,“gl_PointSize”,“gl_Position”,“gl_ProjectionMatrix”,“gl_ProjectionMatrixInverse”,“gl_ProjectionMatrixInverseTranspose”,“gl_ProjectionMatrixTranspose”,“gl_SecondaryColor”,“gl_TexCoord”,“gl_TextureEnvColor”,“gl_TextureMatrix”,“gl_TextureMatrixInverse”,“gl_TextureMatrixInverseTranspose”,“gl_TextureMatrixTranspose”,“gl_Vertex”,“greaterThan”,“greaterThanEqual”,“inversesqrt”,“length”,“lessThan”,“lessThanEqual”,“log”,“log2”,“matrixCompMult”,“max”,“min”,“mix”,“mod”,“normalize”,“not”,“notEqual”,“pow”,“radians”,“reflect”,“refract”,“sign”,“sin”,“smoothstep”,“sqrt”,“step”,“tan”,“texture2D”,“texture2DLod”,“texture2DProj”,“texture2DProjLod”,“textureCube”,“textureCubeLod”,“texture2DLodEXT”,“texture2DProjLodEXT”,“textureCubeLodEXT”,“texture2DGradEXT”,“texture2DProjGradEXT”,“textureCubeGradEXT”]},{}],404:[function(t,e,r){var n=t(“./literals”);e.exports=n.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”])},{“./literals”:405}],405:[function(t,e,r){e.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”]},{}],406:[function(t,e,r){e.exports=[”<<=“,”>>=“,”++“,”–“,”<<“,”>>“,”<=“,”>=“,”==“,”!=“,”&&“,”||“,”+=“,”-=“,”=“,”/=“,”%=“,”&=“,”^^“,”^=“,”|=“,”(“,”)“,”[“,”]“,”.“,”!“,”~“,””,“/”,“%”,“+”,“-”,”<“,”>“,”&“,”^“,”|“,”?“,”:“,”=“,”,“,”;“,”{“,”}“]},{}],407:[function(t,e,r){var n=t(“./index”);e.exports=function(t,e){var r=n(e),a=[];return a=(a=a.concat(r(t))).concat(r(null))}},{“./index”:401}],408:[function(t,e,r){e.exports=function(t){“string”==typeof t&&(t=[t]);for(var e=[].slice.call(arguments,1),r=[],n=0;n>1,u=-7,h=r?a-1:0,f=r?-1:1,p=t[e+h];for(h+=f,i=p&(1<<-u)-1,p>>=-u,u+=s;u>0;i=256*i+t[e+h],h+=f,u-=8);for(o=i&(1<<-u)-1,i>>=-u,u+=n;u>0;o=256o+t[e+h],h+=f,u-=8);if(0===i)i=1-c;else{if(i===l)return o?NaN:10(p?-1:1);o+=Math.pow(2,n),i-=c}return(p?-1:1)*o*Math.pow(2,i-n)},r.write=function(t,e,r,n,a,i){var o,s,l,c=8i-a-1,u=(1<>1,f=23===a?Math.pow(2,-24)-Math.pow(2,-77):0,p=n?0:i-1,d=n?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===10?(s=isNaN(e)?1:0,o=u):(o=Math.floor(Math.log(e)/Math.LN2),e(l=Math.pow(2,-o))<1&&(o--,l*=2),(e+=o+h>=1?f/l:f*Math.pow(2,1-h))*l>=2&&(o++,l/=2),o+h>=u?(s=0,o=u):o+h>=1?(s=(e*l-1)*Math.pow(2,a),o+=h):(s=e*Math.pow(2,h-1)*Math.pow(2,a),o=0));a>=8;t[r+p]=255&s,p+=d,s/=256,a-=8);for(o=o<0;t[r+p]=255&o,p+=d,o/=256,c-=8);t[r+p-d]|=128*g}},{}],412:[function(t,e,r){“use strict”;e.exports=function(t,e){var r=t.length;if(0===r)throw new Error(“Must have at least d+1 points”);var a=t[0].length;if(r<=a)throw new Error(“Must input at least d+1 points”);var o=t.slice(0,a+1),s=n.apply(void 0,o);if(0===s)throw new Error(“Input not in general position”);for(var l=new Array(a+1),u=0;u<=a;++u)l[u]=u;s<0&&(l[0]=1,l[1]=0);var h=new i(l,new Array(a+1),!1),f=h.adjacent,p=new Array(a+2);for(u=0;u<=a;++u){for(var d=l.slice(),g=0;g<=a;++g)g===u&&(d[g]=-1);var m=d[0];d[0]=d[1],d[1]=m;var v=new i(d,new Array(a+1),!0);f[u]=v,p[u]=v}p[a+1]=h;for(u=0;u<=a;++u){d=f[u].vertices;var y=f[u].adjacent;for(g=0;g<=a;++g){var x=d[g];if(x<0)y[g]=h;else for(var b=0;b<=a;++b)f[b].vertices.indexOf(x)<0&&(y[g]=f[b])}}var _=new c(a,o,p),w=!!e;for(u=a+1;u0&&e.push(“,”),e.push(“tuple[“,r,”]“);e.push(”)}return orient”);var a=new Function(“test”,e.join(“”)),i=n[t+1];return i||(i=n),a(i)}(t)),this.orient=i}var u=c.prototype;u.handleBoundaryDegeneracy=function(t,e){var r=this.dimension,n=this.vertices.length-1,a=this.tuple,i=this.vertices,o=[t];for(t.lastVisited=-n;o.length>0;){(t=o.pop()).vertices;for(var s=t.adjacent,l=0;l<=r;++l){var c=s[l];if(c.boundary&&!(c.lastVisited<=-n)){for(var u=c.vertices,h=0;h<=r;++h){var f=u[h];a[h]=f<0?e:i[f]}var p=this.orient();if(p>0)return c;c.lastVisited=-n,0===p&&o.push©}}}return null},u.walk=function(t,e){var r=this.vertices.length-1,n=this.dimension,a=this.vertices,i=this.tuple,o=e?this.interior.lengthMath.random()|0:this.interior.length-1,s=this.interior[o];t:for(;!s.boundary;){for(var l=s.vertices,c=s.adjacent,u=0;u<=n;++u)i[u]=a[l[u]];s.lastVisited=r;for(u=0;u<=n;++u){var h=c[u];if(!(h.lastVisited>=r)){var f=i[u];i[u]=t;var p=this.orient();if(i[u]=f,p<0){s=h;continue t}h.boundary?h.lastVisited=-r:h.lastVisited=r}}return}return s},u.addPeaks=function(t,e){var r=this.vertices.length-1,n=this.dimension,a=this.vertices,l=this.tuple,c=this.interior,u=this.simplices,h=[e];e.lastVisited=r,e.vertices[e.vertices.indexOf(-1)]=r,e.boundary=!1,c.push(e);for(var f=[];h.length>0;){var p=(e=h.pop()).vertices,d=e.adjacent,g=p.indexOf®;if(!(g<0))for(var m=0;m<=n;++m)if(m!==g){var v=d[m];if(v.boundary&&!(v.lastVisited>=r)){var y=v.vertices;if(v.lastVisited!==-r){for(var x=0,b=0;b<=n;++b)y[b]<0?(x=b,l[b]=t):l[b]=a[y[b]];if(this.orient()>0){y[x]=r,v.boundary=!1,c.push(v),h.push(v),v.lastVisited=r;continue}v.lastVisited=-r}var =v.adjacent,w=p.slice(),T=d.slice(),k=new i(w,T,!0);u.push(k);var A=.indexOf(e);if(!(A<0)){_[A]=k,T[g]=v,w[m]=-1,T[m]=e,d[m]=k,k.flip();for(b=0;b<=n;++b){var M=w[b];if(!(M<0||M===r)){for(var S=new Array(n-1),E=0,C=0;C<=n;++C){var L=w[C];L<0||C===b||(S[E++]=L)}f.push(new o(S,k,b))}}}}}}f.sort(s);for(m=0;m+1=0?o[l++]=s[u]:c=1&u;if(c===(1&t)){var h=o[0];o[0]=o[1],o[1]=h}e.push(o)}}return e}},{“robust-orientation”:500,“simplicial-complex”:510}],413:[function(t,e,r){“use strict”;var n=t(“binary-search-bounds”);function a(t,e,r,n,a){this.mid=t,this.left=e,this.right=r,this.leftPoints=n,this.rightPoints=a,this.count=(e?e.count:0)+(r?r.count:0)+n.length}e.exports=function(t){if(!t||0===t.length)return new v(null);return new v(m(t))};var i=a.prototype;function o(t,e){t.mid=e.mid,t.left=e.left,t.right=e.right,t.leftPoints=e.leftPoints,t.rightPoints=e.rightPoints,t.count=e.count}function s(t,e){var r=m(e);t.mid=r.mid,t.left=r.left,t.right=r.right,t.leftPoints=r.leftPoints,t.rightPoints=r.rightPoints,t.count=r.count}function l(t,e){var r=t.intervals([]);r.push(e),s(t,r)}function c(t,e){var r=t.intervals([]),n=r.indexOf(e);return n<0?0:(r.splice(n,1),s(t,r),1)}function u(t,e,r){for(var n=0;n=0&&t[n][1]>=e;–n){var a=r(t[n]);if(a)return a}}function f(t,e){for(var r=0;r>1],i=[],o=[],s=[];for(r=0;r<t.length;++r){var l=t[r];l[1]<n?i.push(l):n<l[0]?o.push(l):s.push(l)}var c=s,u=s.slice();return c.sort(d),u.sort(g),new a(n,m(i),m(o),c,u)}function v(t){this.root=t}i.intervals=function(t){return t.push.apply(t,this.leftPoints),this.left&&this.left.intervals(t),this.right&&this.right.intervals(t),t},i.insert=function(t){var e=this.count-this.leftPoints.length;if(this.count+=1,t[1]<this.mid)this.left?4(this.left.count+1)>3(e+1)?l(this,t):this.left.insert(t):this.left=m([t]);else if(t[0]>this.mid)this.right?4(this.right.count+1)>3(e+1)?l(this,t):this.right.insert(t):this.right=m([t]);else{var r=n.ge(this.leftPoints,t,d),a=n.ge(this.rightPoints,t,g);this.leftPoints.splice(r,0,t),this.rightPoints.splice(a,0,t)}},i.remove=function(t){var e=this.count-this.leftPoints;if(t[1]<this.mid)return this.left?4(this.right?this.right.count:0)>3(e-1)?c(this,t):2===(s=this.left.remove(t))?(this.left=null,this.count-=1,1):(1===s&&(this.count-=1),s):0;if(t[0]>this.mid)return this.right?4(this.left?this.left.count:0)>3(e-1)?c(this,t):2===(s=this.right.remove(t))?(this.right=null,this.count-=1,1):(1===s&&(this.count-=1),s):0;if(1===this.count)return this.leftPoints[0]===t?2:0;if(1===this.leftPoints.length&&this.leftPoints[0]===t){if(this.left&&this.right){for(var r=this,a=this.left;a.right;)r=a,a=a.right;if(r===this)a.right=this.right;else{var i=this.left,s=this.right;r.count-=a.count,r.right=a.left,a.left=i,a.right=s}o(this,a),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?o(this,this.left):o(this,this.right);return 1}for(i=n.ge(this.leftPoints,t,d);ithis.mid){var r;if(this.right)if(r=this.right.queryPoint(t,e))return r;return h(this.rightPoints,t,e)}return f(this.leftPoints,e)},i.queryInterval=function(t,e,r){var n;if(tthis.mid&&this.right&&(n=this.right.queryInterval(t,e,r)))return n;return ethis.mid?h(this.rightPoints,t,r):f(this.leftPoints,r)};var y=v.prototype;y.insert=function(t){this.root?this.root.insert(t):this.root=new a(t[0],null,null,[t],[t])},y.remove=function(t){if(this.root){var e=this.root.remove(t);return 2===e&&(this.root=null),0!==e}return!1},y.queryPoint=function(t,e){if(this.root)return this.root.queryPoint(t,e)},y.queryInterval=function(t,e,r){if(t<=e&&this.root)return this.root.queryInterval(t,e,r)},Object.defineProperty(y,“count”,{get:function(){return this.root?this.root.count:0}}),Object.defineProperty(y,“intervals”,{get:function(){return this.root?this.root.intervals([]):[]}})},{“binary-search-bounds”:414}],414:[function(t,e,r){arguments[4][238][0].apply(r,arguments)},{dup:238}],415:[function(t,e,r){“use strict”;e.exports=function(t,e){e=e||new Array(t.length);for(var r=0;r<t.length;++r)e[t[r]]=r;return e}},{}],416:[function(t,e,r){“use strict”;e.exports=function(t){for(var e=new Array(t),r=0;r<t;++r)e[r]=r;return e}},{}],417:[function(t,e,r){e.exports=!0},{}],418:[function(t,e,r){function n(t){return!!t.constructor&&“function”==typeof t.constructor.isBuffer&&t.constructor.isBuffer(t)} /!
    • Determine if an object is a Buffer *
    • @author Feross Aboukhadijeh https://feross.org
    • @license MIT / e.exports=function(t){return null!=t&&(n(t)||function(t){return”function”==typeof t.readFloatLE&&“function”==typeof t.slice&&n(t.slice(0,0))}(t)||!!t._isBuffer)}},{}],419:[function(t,e,r){“use strict”;e.exports=“undefined”!=typeof navigator&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion))},{}],420:[function(t,e,r){“use strict”;e.exports=i,e.exports.isMobile=i,e.exports.default=i;var n=/(android|bb\d+|meego).+mobile|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|symbian|treo|up.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,a=/(android|bb\d+|meego).+mobile|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|symbian|treo|up.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino|android|ipad|playbook|silk/i;function i(t){t||(t={});var e=t.ua;if(e||“undefined”==typeof navigator||(e=navigator.userAgent),e&&e.headers&&“string”==typeof e.headers[“user-agent”]&&(e=e.headers[“user-agent”]),“string”!=typeof e)return!1;var r=t.tablet?a.test(e):n.test(e);return!r&&t.tablet&&t.featureDetect&&navigator&&navigator.maxTouchPoints>1&&-1!==e.indexOf(“Macintosh”)&&-1!==e.indexOf(“Safari”)&&(r=!0),r}},{}],421:[function(t,e,r){“use strict”;e.exports=function(t){var e=typeof t;return null!==t&&(“object”===e||“function”===e)}},{}],422:[function(t,e,r){“use strict”;var n=Object.prototype.toString;e.exports=function(t){var e;return”[object Object]“===n.call(t)&&(null===(e=Object.getPrototypeOf(t))||e===Object.getPrototypeOf({}))}},{}],423:[function(t,e,r){“use strict”;e.exports=function(t){for(var e,r=t.length,n=0;n13)&&32!==e&&133!==e&&160!==e&&5760!==e&&6158!==e&&(e<8192||e>8205)&&8232!==e&&8233!==e&&8239!==e&&8287!==e&&8288!==e&&12288!==e&&65279!==e)return!1;return!0}},{}],424:[function(t,e,r){“use strict”;e.exports=function(t){return”string”==typeof t&&(t=t.trim(),!!(/3\s[-+.0-9][^mlhvzcsqta]+/i.test(t)&&/[\dz]$/i.test(t)&&t.length>4))}},{}],425:[function(t,e,r){e.exports=function(t,e,r){return t*(1-r)+e*r}},{}],426:[function(t,e,r){!function(t,n){“object”==typeof r&&“undefined”!=typeof e?e.exports=n():(t=t||self).mapboxgl=n()}(this,(function(){“use strict”;var t,e,r;function n(n,a){if(t)if(e){var i=“var sharedChunk = {}; (”+t+“)(sharedChunk); (”+e+“)(sharedChunk);”,o={};t(o),(r=a(o)).workerUrl=window.URL.createObjectURL(new Blob([i],{type:“text/javascript”}))}else e=a;else t=a}return n(0,(function(t){function e(t,e){return t(e={exports:{}},e.exports),e.exports}var r=n;function n(t,e,r,n){this.cx=3t,this.bx=3(r-t)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3e,this.by=3(n-e)-this.cy,this.ay=1-this.cy-this.by,this.p1x=t,this.p1y=n,this.p2x=r,this.p2y=n}n.prototype.sampleCurveX=function(t){return((this.ax*t+this.bx)*t+this.cx)*t},n.prototype.sampleCurveY=function(t){return((this.ay*t+this.by)*t+this.cy)*t},n.prototype.sampleCurveDerivativeX=function(t){return(3*this.ax*t+2*this.bx)t+this.cx},n.prototype.solveCurveX=function(t,e){var r,n,a,i,o;for(void 0===e&&(e=1e-6),a=t,o=0;o<8;o++){if(i=this.sampleCurveX(a)-t,Math.abs(i)(n=1))return n;for(;ri?r=a:n=a,a=.5(n-r)+r}return a},n.prototype.solve=function(t,e){return this.sampleCurveY(this.solveCurveX(t,e))};var a=i;function i(t,e){this.x=t,this.y=e}function o(t,e,n,a){var i=new r(t,e,n,a);return function(t){return i.solve(t)}}i.prototype={clone:function(){return new i(this.x,this.y)},add:function(t){return this.clone()._add(t)},sub:function(t){return this.clone()._sub(t)},multByPoint:function(t){return this.clone()._multByPoint(t)},divByPoint:function(t){return this.clone()._divByPoint(t)},mult:function(t){return this.clone()._mult(t)},div:function(t){return this.clone()._div(t)},rotate:function(t){return this.clone()._rotate(t)},rotateAround:function(t,e){return this.clone()._rotateAround(t,e)},matMult:function(t){return this.clone()._matMult(t)},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(t){return this.x===t.x&&this.y===t.y},dist:function(t){return Math.sqrt(this.distSqr(t))},distSqr:function(t){var e=t.x-this.x,r=t.y-this.y;return e*e+r*r},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(t){return Math.atan2(this.y-t.y,this.x-t.x)},angleWith:function(t){return this.angleWithSep(t.x,t.y)},angleWithSep:function(t,e){return Math.atan2(this.x*e-this.y*t,this.x*t+this.y*e)},_matMult:function(t){var e=t[2]*this.x+t[3]*this.y;return this.x=t[0]*this.x+t[1]this.y,this.y=e,this},_add:function(t){return this.x+=t.x,this.y+=t.y,this},_sub:function(t){return this.x-=t.x,this.y-=t.y,this},_mult:function(t){return this.x=t,this.y=t,this},_div:function(t){return this.x/=t,this.y/=t,this},_multByPoint:function(t){return this.x=t.x,this.y*=t.y,this},_divByPoint:function(t){return this.x/=t.x,this.y/=t.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var t=this.y;return this.y=this.x,this.x=-t,this},_rotate:function(t){var e=Math.cos(t),r=Math.sin(t),n=r*this.x+e*this.y;return this.x=e*this.x-rthis.y,this.y=n,this},_rotateAround:function(t,e){var r=Math.cos(t),n=Math.sin(t),a=e.y+n(this.x-e.x)+r(this.y-e.y);return this.x=e.x+r(this.x-e.x)-n*(this.y-e.y),this.y=a,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},i.convert=function(t){return t instanceof i?t:Array.isArray(t)?new i(t[0],t[1]):t};var s=o(.25,.1,.25,1);function l(t,e,r){return Math.min(r,Math.max(e,t))}function c(t,e,r){var n=r-e,a=((t-e)%n+n)%n+e;return a===e?r:a}function u(t){for(var e=[],r=arguments.length-1;r– >0;)e[r]=arguments[r+1];for(var n=0,a=e;n>e/4).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,t)}()}function d(t){return!!t&&/4{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(t)}function g(t,e){t.forEach((function(t){e[t]&&(e[t]=e[t].bind(e))}))}function m(t,e){return-1!==t.indexOf(e,t.length-e.length)}function v(t,e,r){var n={};for(var a in t)n[a]=e.call(r||this,t[a],a,t);return n}function y(t,e,r){var n={};for(var a in t)e.call(r||this,t[a],a,t)&&(n[a]=t[a]);return n}function x(t){return Array.isArray(t)?t.map(x):“object”==typeof t&&t?v(t,x):t}var b={};function _(t){b[t]||(“undefined”!=typeof console&&console.warn(t),b[t]=!0)}function w(t,e,r){return(r.y-t.y)(e.x-t.x)>(e.y-t.y)(r.x-t.x)}function T(t){for(var e=0,r=0,n=t.length,a=n-1,i=void 0,o=void 0;r@\,;:\“\/[]\?\={}\x7F]+)(?:\=(?:([^\x00-\x20()<>@\,;:\“\/[]\?\={}\x7F]+)|(?:\“((?:[^”\]|\.)*)\“)))?/g,(function(t,r,n,a){var i=n||a;return e[r]=!i||i.toLowerCase(),“”})),e[“max-age”]){var r=parseInt(e[“max-age”],10);isNaN®?delete e[“max-age”]:e[“max-age”]=r}return e}var M=null;function S(t){if(null==M){var e=t.navigator?t.navigator.userAgent:null;M=!!t.safari||!(!e||!(/\b(iPad|iPhone|iPod)\b/.test(e)||e.match(“Safari”)&&!e.match(“Chrome”)))}return M}function E(t){try{var e=self[t];return e.setItem(”_mapboxtest”,1),e.removeItem(”_mapboxtest”),!0}catch(t){return!1}}var C,L,P,I,z=self.performance&&self.performance.now?self.performance.now.bind(self.performance):Date.now.bind(Date),O=self.requestAnimationFrame||self.mozRequestAnimationFrame||self.webkitRequestAnimationFrame||self.msRequestAnimationFrame,D=self.cancelAnimationFrame||self.mozCancelAnimationFrame||self.webkitCancelAnimationFrame||self.msCancelAnimationFrame,R={now:z,frame:function(t){var e=O(t);return{cancel:function(){return D(e)}}},getImageData:function(t,e){void 0===e&&(e=0);var r=self.document.createElement(“canvas”),n=r.getContext(“2d”);if(!n)throw new Error(“failed to create canvas 2d context”);return r.width=t.width,r.height=t.height,n.drawImage(t,0,0,t.width,t.height),n.getImageData(-e,-e,t.width+2*e,t.height+2*e)},resolveURL:function(t){return C||(C=self.document.createElement(“a”)),C.href=t,C.href},hardwareConcurrency:self.navigator.hardwareConcurrency||4,get devicePixelRatio(){return self.devicePixelRatio},get prefersReducedMotion(){return!!self.matchMedia&&(null==L&&(L=self.matchMedia(“(prefers-reduced-motion: reduce)“)),L.matches)}},F={API_URL:“https://api.mapbox.com",get EVENTS_URL(){return this.API_URL?0===this.API_URL.indexOf(“https://api.mapbox.cn")?"https://events.mapbox.cn/events/v2":0===this.API_URL.indexOf("https://api.mapbox.com")?"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},B={supported:!1,testSupport:function(t){!N&&I&&(j?V(t):P=t)}},N=!1,j=!1;function V(t){var e=t.createTexture();t.bindTexture(t.TEXTURE_2D,e);try{if(t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,I),t.isContextLost())return;B.supported=!0}catch(t){}t.deleteTexture(e),N=!0}self.document&&((I=self.document.createElement(“img”)).onload=function(){P&&V(P),P=null,j=!0},I.onerror=function(){N=!0,P=null},I.src=“data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=“);var U=“01”,q=function(t,e){this._transformRequestFn=t,this._customAccessToken=e,this._createSkuToken()};function H(t){return 0===t.indexOf(“mapbox:“)}q.prototype._createSkuToken=function(){var t=function(){for(var t=“”,e=0;e<10;e++)t+="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"[Math.floor(62*Math.random())];return{token:["1",U,t].join(""),tokenExpiresAt:Date.now()+432e5}}();this._skuToken=t.token,this._skuTokenExpiresAt=t.tokenExpiresAt},q.prototype._isSkuTokenExpired=function(){return Date.now()>this._skuTokenExpiresAt},q.prototype.transformRequest=function(t,e){return this._transformRequestFn&&this._transformRequestFn(t,e)||{url:t}},q.prototype.normalizeStyleURL=function(t,e){if(!H(t))return t;var r=Z(t);return r.path=“/styles/v1”+r.path,this._makeAPIURL(r,this._customAccessToken||e)},q.prototype.normalizeGlyphsURL=function(t,e){if(!H(t))return t;var r=Z(t);return r.path=“/fonts/v1”+r.path,this._makeAPIURL(r,this._customAccessToken||e)},q.prototype.normalizeSourceURL=function(t,e){if(!H(t))return t;var r=Z(t);return r.path=“/v4/”+r.authority+“.json”,r.params.push(“secure”),this._makeAPIURL(r,this._customAccessToken||e)},q.prototype.normalizeSpriteURL=function(t,e,r,n){var a=Z(t);return H(t)?(a.path=“/styles/v1”+a.path+“/sprite”+e+r,this._makeAPIURL(a,this._customAccessToken||n)):(a.path+=“”+e+r,X(a))},q.prototype.normalizeTileURL=function(t,e){if(this._isSkuTokenExpired()&&this._createSkuToken(),t&&!H(t))return t;var r=Z(t);r.path=r.path.replace(/(.(png|jpg)\d)(?=$)/,(R.devicePixelRatio>=2||512===e?“@2x”:“”)+(B.supported?“.webp”:“$1”)),r.path=r.path.replace(/^.+\/v4\//,“/”),r.path=“/v4”+r.path;var n=this._customAccessToken||function(t){for(var e=0,r=t;e<r.length;e+=1){var n=r[e].match(/^access_token=(.)$/);if(n)return n[1]}return null}(r.params)||F.ACCESS_TOKEN;return F.REQUIRE_ACCESS_TOKEN&&n&&this._skuToken&&r.params.push(“sku=”+this._skuToken),this._makeAPIURL(r,n)},q.prototype.canonicalizeTileURL=function(t,e){var r=Z(t);if(!r.path.match(/(^\/v4\/)/)||!r.path.match(/.[\w]+$/))return t;var n=“mapbox://tiles/“;n+=r.path.replace(”/v4/“,”“);var a=r.params;return e&&(a=a.filter((function(t){return!t.match(/^access_token=/)}))),a.length&&(n+=“?”+a.join(”&“)),n},q.prototype.canonicalizeTileset=function(t,e){for(var r=!!e&&H(e),n=[],a=0,i=t.tiles||[];a=1&&self.localStorage.setItem(e,JSON.stringify(this.eventData))}catch(t){_(“Unable to write to LocalStorage”)}},K.prototype.processRequests=function(t){},K.prototype.postEvent=function(t,e,r,n){var a=this;if(F.EVENTS_URL){var i=Z(F.EVENTS_URL);i.params.push(“access_token=“+(n||F.ACCESS_TOKEN||“”));var o={event:this.type,created:new Date(t).toISOString(),sdkIdentifier:“mapbox-gl-js”,sdkVersion:“1.10.1”,skuId:U,userId:this.anonId},s=e?u(o,e):o,l={url:X(i),headers:{“Content-Type”:“text/plain”},body:JSON.stringify([s])};this.pendingRequest=xt(l,(function(t){a.pendingRequest=null,r(t),a.saveEventData(),a.processRequests(n)}))}},K.prototype.queueRequest=function(t,e){this.queue.push(t),this.processRequests(e)};var Q,$,tt=function(t){function e(){t.call(this,“map.load”),this.success={},this.skuToken=“”}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.postMapLoadEvent=function(t,e,r,n){this.skuToken=r,(F.EVENTS_URL&&n||F.ACCESS_TOKEN&&Array.isArray(t)&&t.some((function(t){return H(t)||Y(t)})))&&this.queueRequest({id:e,timestamp:Date.now()},n)},e.prototype.processRequests=function(t){var e=this;if(!this.pendingRequest&&0!==this.queue.length){var r=this.queue.shift(),n=r.id,a=r.timestamp;n&&this.success[n]||(this.anonId||this.fetchEventData(),d(this.anonId)||(this.anonId=p()),this.postEvent(a,{skuToken:this.skuToken},(function(t){t||n&&(e.success[n]=!0)}),t))}},e}(K),et=new(function(t){function e(e){t.call(this,“appUserTurnstile”),this._customAccessToken=e}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.postTurnstileEvent=function(t,e){F.EVENTS_URL&&F.ACCESS_TOKEN&&Array.isArray(t)&&t.some((function(t){return H(t)||Y(t)}))&&this.queueRequest(Date.now(),e)},e.prototype.processRequests=function(t){var e=this;if(!this.pendingRequest&&0!==this.queue.length){this.anonId&&this.eventData.lastSuccess&&this.eventData.tokenU||this.fetchEventData();var r=J(F.ACCESS_TOKEN),n=r?r.u:F.ACCESS_TOKEN,a=n!==this.eventData.tokenU;d(this.anonId)||(this.anonId=p(),a=!0);var i=this.queue.shift();if(this.eventData.lastSuccess){var o=new Date(this.eventData.lastSuccess),s=new Date(i),l=(i-this.eventData.lastSuccess)/864e5;a=a||l>=1||l<-1||o.getDate()!==s.getDate()}else a=!0;if(!a)return this.processRequests();this.postEvent(i,{“enabled.telemetry”:!1},(function(t){t||(e.eventData.lastSuccess=i,e.eventData.tokenU=n)}),t)}},e}(K)),rt=et.postTurnstileEvent.bind(et),nt=new tt,at=nt.postMapLoadEvent.bind(nt),it=500,ot=50;function st(){self.caches&&!Q&&(Q=self.caches.open(“mapbox-tiles”))}function lt(t){var e=t.indexOf(“?”);return e<0?t:t.slice(0,e)}var ct,ut=1/0;function ht(){return null==ct&&(ct=self.OffscreenCanvas&&new self.OffscreenCanvas(1,1).getContext("2d")&&"function"==typeof self.createImageBitmap),ct}var ft={Unknown:"Unknown",Style:"Style",Source:"Source",Tile:"Tile",Glyphs:"Glyphs",SpriteImage:"SpriteImage",SpriteJSON:"SpriteJSON",Image:"Image"};"function"==typeof Object.freeze&&Object.freeze(ft);var pt,dt,gt=function(t){function e(e,r,n){401===r&&Y(n)&&(e+=": you may have provided an invalid Mapbox access token. See https://www.mapbox.com/api-documentation/#access-tokens-and-token-scopes"),t.call(this,e),this.status=r,this.url=n,this.name=this.constructor.name,this.message=e}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.toString=function(){return this.name+": "+this.message+" ("+this.status+"): "+this.url},e}(Error),mt=k()?function(){return self.worker&&self.worker.referrer}:function(){return("blob:"===self.location.protocol?self.parent:self).location.href},vt=function(t,e){if(!(/^file:/.test(r=t.url)||/^file:/.test(mt())&&!/^\w+:/.test(r))){if(self.fetch&&self.Request&&self.AbortController&&self.Request.prototype.hasOwnProperty("signal"))return function(t,e){var r,n=new self.AbortController,a=new self.Request(t.url,{method:t.method||"GET",body:t.body,credentials:t.credentials,headers:t.headers,referrer:mt(),signal:n.signal}),i=!1,o=!1,s=(r=a.url).indexOf("sku=")>0&&Y®;“json”===t.type&&a.headers.set(“Accept”,“application/json”);var l=function(r,n,i){if(!o){if(r&&“SecurityError”!==r.message&&_®,n&&i)return c(n);var l=Date.now();self.fetch(a).then((function®{if(r.ok){var n=s?r.clone():null;return c(r,n,l)}return e(new gt(r.statusText,r.status,t.url))})).catch((function(t){20!==t.code&&e(new Error(t.message))}))}},c=function(r,n,s){(“arrayBuffer”===t.type?r.arrayBuffer():“json”===t.type?r.json():r.text()).then((function(t){o||(n&&s&&function(t,e,r){if(st(),Q){var n={status:e.status,statusText:e.statusText,headers:new self.Headers};e.headers.forEach((function(t,e){return n.headers.set(e,t)}));var a=A(e.headers.get(“Cache-Control”)||“”);a[“no-store”]||(a[“max-age”]&&n.headers.set(“Expires”,new Date(r+1e3a[“max-age”]).toUTCString()),new Date(n.headers.get(“Expires”)).getTime()-r<42e4||function(t,e){if(void 0===$)try{new Response(new ReadableStream),$=!0}catch(t){$=!1}$?e(t.body):t.blob().then(e)}(e,(function(e){var r=new self.Response(e,n);st(),Q&&Q.then((function(e){return e.put(lt(t.url),r)})).catch((function(t){return _(t.message)}))})))}}(a,n,s),i=!0,e(null,t,r.headers.get("Cache-Control"),r.headers.get("Expires")))})).catch((function(t){o||e(new Error(t.message))}))};return s?function(t,e){if(st(),!Q)return e(null);var r=lt(t.url);Q.then((function(t){t.match(r).then((function(n){var a=function(t){if(!t)return!1;var e=new Date(t.headers.get("Expires")||0),r=A(t.headers.get("Cache-Control")||"");return e>Date.now()&&!r[“no-cache”]}(n);t.delete®,a&&t.put(r,n.clone()),e(null,n,a)})).catch(e)})).catch(e)}(a,l):l(null,null),{cancel:function(){o=!0,i||n.abort()}}}(t,e);if(k()&&self.worker&&self.worker.actor)return self.worker.actor.send(“getResource”,t,e,void 0,!0)}var r;return function(t,e){var r=new self.XMLHttpRequest;for(var n in r.open(t.method||“GET”,t.url,!0),“arrayBuffer”===t.type&&(r.responseType=“arraybuffer”),t.headers)r.setRequestHeader(n,t.headers[n]);return”json”===t.type&&(r.responseType=“text”,r.setRequestHeader(“Accept”,“application/json”)),r.withCredentials=“include”===t.credentials,r.onerror=function(){e(new Error(r.statusText))},r.onload=function(){if((r.status>=200&&r.status<300||0===r.status)&&null!==r.response){var n=r.response;if(“json”===t.type)try{n=JSON.parse(r.response)}catch(t){return e(t)}e(null,n,r.getResponseHeader(“Cache-Control”),r.getResponseHeader(“Expires”))}else e(new gt(r.statusText,r.status,t.url))},r.send(t.body),{cancel:function(){return r.abort()}}}(t,e)},yt=function(t,e){return vt(u(t,{type:“arrayBuffer”}),e)},xt=function(t,e){return vt(u(t,{method:“POST”}),e)};pt=[],dt=0;var bt=function(t,e){if(B.supported&&(t.headers||(t.headers={}),t.headers.accept=“image/webp,/”),dt>=F.MAX_PARALLEL_IMAGE_REQUESTS){var r={requestParameters:t,callback:e,cancelled:!1,cancel:function(){this.cancelled=!0}};return pt.push®,r}dt++;var n=!1,a=function(){if(!n)for(n=!0,dt–;pt.length&&dt0||this._oneTimeListeners&&this._oneTimeListeners[t]&&this._oneTimeListeners[t].length>0||this._eventedParent&&this._eventedParent.listens(t)},At.prototype.setEventedParent=function(t,e){return this._eventedParent=t,this._eventedParentData=e,this};var Mt={$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”},sources:{required:!0,type:“sources”},sprite:{type:“string”},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”},”“:{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”},”“:{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:{}},default:“mapbox”},”“:{type:””}},source_geojson:{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},tolerance:{type:“number”,default:.375},cluster:{type:“boolean”,default:!1},clusterRadius:{type:“number”,default:50,minimum:0},clusterMaxZoom:{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”],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”}},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”:{},within:{}}},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},expression_name:{type:“enum”,values:{let:{group:“Variable binding”},var:{group:“Variable binding”},literal:{group:“Types”},array:{group:“Types”},at:{group:“Lookup”},in:{group:“Lookup”},“index-of”:{group:“Lookup”},slice:{group:“Lookup”},case:{group:“Decision”},match:{group:“Decision”},coalesce:{group:“Decision”},step:{group:“Ramps, scales, curves”},interpolate:{group:“Ramps, scales, curves”},“interpolate-hcl”:{group:“Ramps, scales, curves”},“interpolate-lab”:{group:“Ramps, scales, curves”},ln2:{group:“Math”},pi:{group:“Math”},e:{group:“Math”},typeof:{group:“Types”},string:{group:“Types”},number:{group:“Types”},boolean:{group:“Types”},object:{group:“Types”},collator:{group:“Types”},format:{group:“Types”},image:{group:“Types”},“number-format”:{group:“Types”},“to-string”:{group:“Types”},“to-number”:{group:“Types”},“to-boolean”:{group:“Types”},“to-rgba”:{group:“Color”},“to-color”:{group:“Types”},rgb:{group:“Color”},rgba:{group:“Color”},get:{group:“Lookup”},has:{group:“Lookup”},length:{group:“Lookup”},properties:{group:“Feature data”},“feature-state”:{group:“Feature data”},“geometry-type”:{group:“Feature data”},id:{group:“Feature data”},zoom:{group:“Zoom”},“heatmap-density”:{group:“Heatmap”},“line-progress”:{group:“Feature data”},accumulated:{group:“Feature data”},“+”:{group:“Math”},”“:{group:“Math”},“-”:{group:“Math”},“/”:{group:“Math”},“%”:{group:“Math”},“^”:{group:“Math”},sqrt:{group:“Math”},log10:{group:“Math”},ln:{group:“Math”},log2:{group:“Math”},sin:{group:“Math”},cos:{group:“Math”},tan:{group:“Math”},asin:{group:“Math”},acos:{group:“Math”},atan:{group:“Math”},min:{group:“Math”},max:{group:“Math”},round:{group:“Math”},abs:{group:“Math”},ceil:{group:“Math”},floor:{group:“Math”},distance:{group:“Math”},“==”:{group:“Decision”},“!=”:{group:“Decision”},“>”:{group:“Decision”},”<”:{group:“Decision”},“>=”:{group:“Decision”},”<=”:{group:“Decision”},all:{group:“Decision”},any:{group:“Decision”},“!”:{group:“Decision”},within:{group:“Decision”},“is-supported-script”:{group:“String”},upcase:{group:“String”},downcase:{group:“String”},concat:{group:“String”},“resolved-locale”:{group:“String”}}},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}},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”}}},St=function(t,e,r,n){this.message=(t?t+”: “:“”)+r,n&&(this.identifier=n),null!=e&&e.line&&(this.line=e.line)};function Et(t){var e=t.value;return e?[new St(t.key,e,“constants have been deprecated as of v8”)]:[]}function Ct(t){for(var e=[],r=arguments.length-1;r– >0;)e[r]=arguments[r+1];for(var n=0,a=e;n“:“value”===t.itemType.kind?“array”:“array<“+e+”>“}return t.kind}var Yt=[Ot,Dt,Rt,Ft,Bt,Ut,Nt,Ht(jt),qt];function Wt(t,e){if(“error”===e.kind)return null;if(“array”===t.kind){if(“array”===e.kind&&(0===e.N&&“value”===e.itemType.kind||!Wt(t.itemType,e.itemType))&&(“number”!=typeof t.N||t.N===e.N))return null}else{if(t.kind===e.kind)return null;if(“value”===t.kind)for(var r=0,n=Yt;r255?255:t}function a(t){return n(“%”===t[t.length-1]?parseFloat(t)/100*255:parseInt(t))}function i(t){return(e=“%”===t[t.length-1]?parseFloat(t)/100:parseFloat(t))<0?0:e>1?1:e;var e}function o(t,e,r){return r<0?r+=1:r>1&&(r-=1),6*r<1?t+(e-t)*r*6:2*r<1?e:3*r<2?t+(e-t)*(2/3-r)*6:t}try{e.parseCSSColor=function(t){var e,s=t.replace(/ /g,"").toLowerCase();if(s in r)return r[s].slice();if("#"===s[0])return 4===s.length?(e=parseInt(s.substr(1),16))>=0&&e<=4095?[(3840&e)>>4|(3840&e)>>8,240&e|(240&e)>>4,15&e|(15&e)<<4,1]:null:7===s.length&&(e=parseInt(s.substr(1),16))>=0&&e<=16777215?[(16711680&e)>>16,(65280&e)>>8,255&e,1]:null;var l=s.indexOf(“(”),c=s.indexOf(“)”);if(-1!==l&&c+1===s.length){var u=s.substr(0,l),h=s.substr(l+1,c-(l+1)).split(“,”),f=1;switch(u){case”rgba”:if(4!==h.length)return null;f=i(h.pop());case”rgb”:return 3!==h.length?null:[a(h[0]),a(h[1]),a(h[2]),f];case”hsla”:if(4!==h.length)return null;f=i(h.pop());case”hsl”:if(3!==h.length)return null;var p=(parseFloat(h[0])%360+360)%360360,d=i(h[1]),g=i(h[2]),m=g<=.5?g*(d+1):g+d-g*d,v=2*g-m;return[n(255*o(v,m,p+13)),n(255*o(v,m,p)),n(255*o(v,m,p-13)),f];default:return null}}return null}}catch(t){}})).parseCSSColor,Kt=function(t,e,r,n){void 0===n&&(n=1),this.r=t,this.g=e,this.b=r,this.a=n};Kt.parse=function(t){if(t){if(t instanceof Kt)return t;if(“string”==typeof t){var e=Jt(t);if(e)return new Kt(e[0]/255*e[3],e[1]/255*e[3],e[2]/255*e[3],e[3])}}},Kt.prototype.toString=function(){var t=this.toArray(),e=t[1],r=t[2],n=t[3];return”rgba(“+Math.round(t[0])+“,”+Math.round(e)+“,”+Math.round®+“,”+n+“)”},Kt.prototype.toArray=function(){var t=this.a;return 0===t?[0,0,0,0]:[255*this.r/t,255*this.g/t,255*this.b/t,t]},Kt.black=new Kt(0,0,0,1),Kt.white=new Kt(1,1,1,1),Kt.transparent=new Kt(0,0,0,0),Kt.red=new Kt(1,0,0,1);var Qt=function(t,e,r){this.sensitivity=t?e?“variant”:“case”:e?“accent”:“base”,this.locale=r,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:“search”})};Qt.prototype.compare=function(t,e){return this.collator.compare(t,e)},Qt.prototype.resolvedLocale=function(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale};var $t=function(t,e,r,n,a){this.text=t,this.image=e,this.scale=r,this.fontStack=n,this.textColor=a},te=function(t){this.sections=t};te.fromString=function(t){return new te([new $t(t,null,null,null,null)])},te.prototype.isEmpty=function(){return 0===this.sections.length||!this.sections.some((function(t){return 0!==t.text.length||t.image&&0!==t.image.name.length}))},te.factory=function(t){return t instanceof te?t:te.fromString(t)},te.prototype.toString=function(){return 0===this.sections.length?“”:this.sections.map((function(t){return t.text})).join(“”)},te.prototype.serialize=function(){for(var t=[“format”],e=0,r=this.sections;e=0&&t<=255&&“number”==typeof e&&e>=0&&e<=255&&“number”==typeof r&&r>=0&&r<=255?void 0===n||“number”==typeof n&&n>=0&&n<=1?null:“Invalid rgba value [“+[t,e,r,n].join(“, “)+”]: ‘a’ must be between 0 and 1.”:“Invalid rgba value [“+(“number”==typeof n?[t,e,r,n]:[t,e,r]).join(“, “)+”]: ‘r’, ‘g’, and ‘b’ must be between 0 and 255.“}function ne(t){if(null===t)return!0;if(“string”==typeof t)return!0;if(“boolean”==typeof t)return!0;if(“number”==typeof t)return!0;if(t instanceof Kt)return!0;if(t instanceof Qt)return!0;if(t instanceof te)return!0;if(t instanceof ee)return!0;if(Array.isArray(t)){for(var e=0,r=t;e2){var s=t[1];if(“string”!=typeof s||!(s in le)||“object”===s)return e.error(‘The item type argument of “array” must be one of string, number, boolean’,1);i=le[s],n++}else i=jt;if(t.length>3){if(null!==t[2]&&(“number”!=typeof t[2]||t[2]<0||t[2]!==Math.floor(t[2])))return e.error('The length argument to "array" must be a positive integer literal',2);o=t[2],n++}r=Ht(i,o)}else r=le[a];for(var l=[];n1)&&e.push(n)}}return e.concat(this.args.map((function(t){return t.serialize()})))};var ue=function(t){this.type=Ut,this.sections=t};ue.parse=function(t,e){if(t.length<2)return e.error("Expected at least one argument.");var r=t[1];if(!Array.isArray(r)&&"object"==typeof r)return e.error("First argument must be an image or text section.");for(var n=[],a=!1,i=1;i<=t.length-1;++i){var o=t[i];if(a&&"object"==typeof o&&!Array.isArray(o)){a=!1;var s=null;if(o["font-scale"]&&!(s=e.parse(o["font-scale"],1,Dt)))return null;var l=null;if(o["text-font"]&&!(l=e.parse(o["text-font"],1,Ht(Rt))))return null;var c=null;if(o["text-color"]&&!(c=e.parse(o["text-color"],1,Bt)))return null;var u=n[n.length-1];u.scale=s,u.font=l,u.textColor=c}else{var h=e.parse(t[i],1,jt);if(!h)return null;var f=h.type.kind;if("string"!==f&&"value"!==f&&"null"!==f&&"resolvedImage"!==f)return e.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");a=!0,n.push({content:h,scale:null,font:null,textColor:null})}}return new ue(n)},ue.prototype.evaluate=function(t){return new te(this.sections.map((function(e){var r=e.content.evaluate(t);return ae(r)===qt?new $t("",r,null,null,null):new $t(ie(r),null,e.scale?e.scale.evaluate(t):null,e.font?e.font.evaluate(t).join(","):null,e.textColor?e.textColor.evaluate(t):null)})))},ue.prototype.eachChild=function(t){for(var e=0,r=this.sections;e-1),r},he.prototype.eachChild=function(t){t(this.input)},he.prototype.outputDefined=function(){return!1},he.prototype.serialize=function(){return[“image”,this.input.serialize()]};var fe={“to-boolean”:Ft,“to-color”:Bt,“to-number”:Dt,“to-string”:Rt},pe=function(t,e){this.type=t,this.args=e};pe.parse=function(t,e){if(t.length<2)return e.error("Expected at least one argument.");var r=t[0];if(("to-boolean"===r||"to-string"===r)&&2!==t.length)return e.error("Expected one argument.");for(var n=fe[r],a=[],i=1;i4?“Invalid rbga value “+JSON.stringify(e)+”: expected an array containing either three or four numeric values.”:re(e[0],e[1],e[2],e[3])))return new Kt(e[0]/255,e[1]/255,e[2]/255,e[3])}throw new se(r||“Could not parse color from value ‘”+(“string”==typeof e?e:String(JSON.stringify(e)))+“‘”)}if(“number”===this.type.kind){for(var o=null,s=0,l=this.args;s=e[2]||t[1]<=e[1]||t[3]>=e[3])}function be(t,e){var r=(180+t[0])/360,n=(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t[1]*Math.PI/360)))/360,a=Math.pow(2,e.z);return[Math.round(r*a*8192),Math.round(n*a8192)]}function _e(t,e,r){return e[1]>t[1]!=r[1]>t[1]&&t[0]<(r[0]-e[0])(t[1]-e[1])/(r[1]-e[1])+e[0]}function we(t,e){for(var r,n,a,i,o,s,l,c=!1,u=0,h=e.length;u0&&s<0||o<0&&s>0}function Ae(t,e,r){for(var n=0,a=r;nr[2]){var a=.5*n,i=t[0]-r[0]>a?-n:r[0]-t[0]>a?n:0;0===i&&(i=t[0]-r[2]>a?-n:r[2]-t[0]>a?n:0),t[0]+=i}ye(e,t)}function Pe(t,e,r,n){for(var a=8192*Math.pow(2,n.z),i=[8192*n.x,8192*n.y],o=[],s=0,l=t;s=0)return!1;var r=!0;return t.eachChild((function(t){r&&!Re(t,e)&&(r=!1)})),r}ze.parse=function(t,e){if(2!==t.length)return e.error(“‘within’ expression requires exactly one argument, but found “+(t.length-1)+” instead.“);if(ne(t[1])){var r=t[1];if(“FeatureCollection”===r.type)for(var n=0;ne))throw new se(“Input is not a number.”);i=o-1}return 0}Be.prototype.parse=function(t,e,r,n,a){return void 0===a&&(a={}),e?this.concat(e,r,n)._parse(t,a):this._parse(t,a)},Be.prototype._parse=function(t,e){function r(t,e,r){return”assert”===r?new ce(e,[t]):“coerce”===r?new pe(e,[t]):t}if(null!==t&&“string”!=typeof t&&“boolean”!=typeof t&&“number”!=typeof t||(t=[“literal”,t]),Array.isArray(t)){if(0===t.length)return this.error(‘Expected an array with at least one element. If you wanted a literal array, use [“literal”, []].‘);var n=t[0];if(“string”!=typeof n)return this.error(“Expression name must be a string, but found “+typeof n+’ instead. If you wanted a literal array, use [“literal”, […]].‘,0),null;var a=this.registry[n];if(a){var i=a.parse(t,this);if(!i)return null;if(this.expectedType){var o=this.expectedType,s=i.type;if(“string”!==o.kind&&“number”!==o.kind&&“boolean”!==o.kind&&“object”!==o.kind&&“array”!==o.kind||“value”!==s.kind)if(“color”!==o.kind&&“formatted”!==o.kind&&“resolvedImage”!==o.kind||“value”!==s.kind&&“string”!==s.kind){if(this.checkSubtype(o,s))return null}else i=r(i,o,e.typeAnnotation||“coerce”);else i=r(i,o,e.typeAnnotation||“assert”)}if(!(i instanceof oe)&&“resolvedImage”!==i.type.kind&&function t(e){if(e instanceof Fe)return t(e.boundExpression);if(e instanceof me&&“error”===e.name)return!1;if(e instanceof ve)return!1;if(e instanceof ze)return!1;var r=e instanceof pe||e instanceof ce,n=!0;return e.eachChild((function(e){n=r?n&&t(e):n&&e instanceof oe})),!!n&&Oe(e)&&Re(e,[“zoom”,“heatmap-density”,“line-progress”,“accumulated”,“is-supported-script”])}(i)){var l=new ge;try{i=new oe(i.type,i.evaluate(l))}catch(t){return this.error(t.message),null}}return i}return this.error(‘Unknown expression “’+n+‘”. If you wanted a literal array, use [“literal”, […]].‘,0)}return this.error(void 0===t?“‘undefined’ value invalid. Use null instead.”:“object”==typeof t?‘Bare objects invalid. Use [“literal”, {…}] instead.’:“Expected an array, but found “+typeof t+” instead.“)},Be.prototype.concat=function(t,e,r){var n=“number”==typeof t?this.path.concat(t):this.path,a=r?this.scope.concat®:this.scope;return new Be(this.registry,n,e||null,a,this.errors)},Be.prototype.error=function(t){for(var e=[],r=arguments.length-1;r– >0;)e[r]=arguments[r+1];var n=“”+this.key+e.map((function(t){return”[“+t+”]“})).join(”“);this.errors.push(new It(n,t))},Be.prototype.checkSubtype=function(t,e){var r=Wt(t,e);return r&&this.error®,r};var je=function(t,e,r){this.type=t,this.input=e,this.labels=[],this.outputs=[];for(var n=0,a=r;n=o)return e.error(‘Input/output pairs for “step” expressions must be arranged with input values in strictly ascending order.’,l);var u=e.parse(s,c,a);if(!u)return null;a=a||u.type,n.push([o,u])}return new je(a,r,n)},je.prototype.evaluate=function(t){var e=this.labels,r=this.outputs;if(1===e.length)return r[0].evaluate(t);var n=this.input.evaluate(t);if(n<=e[0])return r[0].evaluate(t);var a=e.length;return n>=e[a-1]?r[a-1].evaluate(t):r[Ne(e,n)].evaluate(t)},je.prototype.eachChild=function(t){t(this.input);for(var e=0,r=this.outputs;e0&&t.push(this.labels[e]),t.push(this.outputs[e].serialize());return t};var Ue=Object.freeze({proto:null,number:Ve,color:function(t,e,r){return new Kt(Ve(t.r,e.r,r),Ve(t.g,e.g,r),Ve(t.b,e.b,r),Ve(t.a,e.a,r))},array:function(t,e,r){return t.map((function(t,n){return Ve(t,e[n],r)}))}}),qe=6293(629),He=Math.PI/180,Ge=180/Math.PI;function Ye(t){return t>.008856451679035631?Math.pow(t,13):t/qe+429}function We(t){return t>629?t*tt:qe(t-429)}function Ze(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,12.4)-.055)}function Xe(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function Je(t){var e=Xe(t.r),r=Xe(t.g),n=Xe(t.b),a=Ye((.4124564*e+.3575761*r+.1804375*n)/.95047),i=Ye((.2126729*e+.7151522*r+.072175*n)/1);return{l:116i-16,a:500(a-i),b:200*(i-Ye((.0193339*e+.119192*r+.9503041*n)/1.08883)),alpha:t.a}}function Ke(t){var e=(t.l+16)/116,r=isNaN(t.a)?e:e+t.a/500,n=isNaN(t.b)?e:e-t.b/200;return e=1*We(e),r=.95047*We®,n=1.08883*We(n),new Kt(Ze(3.2404542*r-1.5371385*e-.4985314*n),Ze(-.969266*r+1.8760108*e+.041556*n),Ze(.0556434*r-.2040259*e+1.0572252n),t.alpha)}function Qe(t,e,r){var n=e-t;return t+r(n>180||n<-180?n-360*Math.round(n/360):n)}var $e={forward:Je,reverse:Ke,interpolate:function(t,e,r){return{l:Ve(t.l,e.l,r),a:Ve(t.a,e.a,r),b:Ve(t.b,e.b,r),alpha:Ve(t.alpha,e.alpha,r)}}},tr={forward:function(t){var e=Je(t),r=e.l,n=e.a,a=e.b,i=Math.atan2(a,n)*Ge;return{h:i<0?i+360:i,c:Math.sqrt(n*n+a*a),l:r,alpha:t.a}},reverse:function(t){var e=t.h*He,r=t.c;return Ke({l:t.l,a:Math.cos(e)*r,b:Math.sin(e)*r,alpha:t.alpha})},interpolate:function(t,e,r){return{h:Qe(t.h,e.h,r),c:Ve(t.c,e.c,r),l:Ve(t.l,e.l,r),alpha:Ve(t.alpha,e.alpha,r)}}},er=Object.freeze({__proto__:null,lab:$e,hcl:tr}),rr=function(t,e,r,n,a){this.type=t,this.operator=e,this.interpolation=r,this.input=n,this.labels=[],this.outputs=[];for(var i=0,o=a;i1})))return e.error(“Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.”,1);n={name:“cubic-bezier”,controlPoints:s}}if(t.length-1<4)return e.error("Expected at least 4 arguments, but found only "+(t.length-1)+".");if((t.length-1)%2!=0)return e.error("Expected an even number of arguments.");if(!(a=e.parse(a,2,Dt)))return null;var l=[],c=null;"interpolate-hcl"===r||"interpolate-lab"===r?c=Bt:e.expectedType&&"value"!==e.expectedType.kind&&(c=e.expectedType);for(var u=0;u=h)return e.error(‘Input/output pairs for “interpolate” expressions must be arranged with input values in strictly ascending order.’,p);var g=e.parse(f,d,c);if(!g)return null;c=c||g.type,l.push([h,g])}return”number”===c.kind||“color”===c.kind||“array”===c.kind&&“number”===c.itemType.kind&&“number”==typeof c.N?new rr(c,r,n,a,l):e.error(“Type “+Gt©+” is not interpolatable.“)},rr.prototype.evaluate=function(t){var e=this.labels,r=this.outputs;if(1===e.length)return r[0].evaluate(t);var n=this.input.evaluate(t);if(n<=e[0])return r[0].evaluate(t);var a=e.length;if(n>=e[a-1])return r[a-1].evaluate(t);var i=Ne(e,n),o=rr.interpolationFactor(this.interpolation,n,e[i],e[i+1]),s=r[i].evaluate(t),l=r[i+1].evaluate(t);return”interpolate”===this.operator?Uethis.type.kind.toLowerCase():“interpolate-hcl”===this.operator?tr.reverse(tr.interpolate(tr.forward(s),tr.forward(l),o)):$e.reverse($e.interpolate($e.forward(s),$e.forward(l),o))},rr.prototype.eachChild=function(t){t(this.input);for(var e=0,r=this.outputs;e=r.length)throw new se(“Array index out of bounds: “+e+” > “+(r.length-1)+”.“);if(e!==Math.floor(e))throw new se(“Array index must be an integer, but found “+e+” instead.“);return r[e]},or.prototype.eachChild=function(t){t(this.index),t(this.input)},or.prototype.outputDefined=function(){return!1},or.prototype.serialize=function(){return[“at”,this.index.serialize(),this.input.serialize()]};var sr=function(t,e){this.type=Ft,this.needle=t,this.haystack=e};sr.parse=function(t,e){if(3!==t.length)return e.error(“Expected 2 arguments, but found “+(t.length-1)+” instead.“);var r=e.parse(t[1],1,jt),n=e.parse(t[2],2,jt);return r&&n?Zt(r.type,[Ft,Rt,Dt,Ot,jt])?new sr(r,n):e.error(“Expected first argument to be of type boolean, string, number or null, but found “+Gt(r.type)+” instead”):null},sr.prototype.evaluate=function(t){var e=this.needle.evaluate(t),r=this.haystack.evaluate(t);if(!r)return!1;if(!Xt(e,[“boolean”,“string”,“number”,“null”]))throw new se(“Expected first argument to be of type boolean, string, number or null, but found “+Gt(ae(e))+” instead.“);if(!Xt(r,[“string”,“array”]))throw new se(“Expected second argument to be of type array or string, but found “+Gt(ae®)+” instead.“);return r.indexOf(e)>=0},sr.prototype.eachChild=function(t){t(this.needle),t(this.haystack)},sr.prototype.outputDefined=function(){return!0},sr.prototype.serialize=function(){return[“in”,this.needle.serialize(),this.haystack.serialize()]};var lr=function(t,e,r){this.type=Dt,this.needle=t,this.haystack=e,this.fromIndex=r};lr.parse=function(t,e){if(t.length<=2||t.length>=5)return e.error(“Expected 3 or 4 arguments, but found “+(t.length-1)+” instead.“);var r=e.parse(t[1],1,jt),n=e.parse(t[2],2,jt);if(!r||!n)return null;if(!Zt(r.type,[Ft,Rt,Dt,Ot,jt]))return e.error(“Expected first argument to be of type boolean, string, number or null, but found “+Gt(r.type)+” instead”);if(4===t.length){var a=e.parse(t[3],3,Dt);return a?new lr(r,n,a):null}return new lr(r,n)},lr.prototype.evaluate=function(t){var e=this.needle.evaluate(t),r=this.haystack.evaluate(t);if(!Xt(e,[“boolean”,“string”,“number”,“null”]))throw new se(“Expected first argument to be of type boolean, string, number or null, but found “+Gt(ae(e))+” instead.“);if(!Xt(r,[“string”,“array”]))throw new se(“Expected second argument to be of type array or string, but found “+Gt(ae®)+” instead.“);if(this.fromIndex){var n=this.fromIndex.evaluate(t);return r.indexOf(e,n)}return r.indexOf(e)},lr.prototype.eachChild=function(t){t(this.needle),t(this.haystack),this.fromIndex&&t(this.fromIndex)},lr.prototype.outputDefined=function(){return!1},lr.prototype.serialize=function(){if(null!=this.fromIndex&&void 0!==this.fromIndex){var t=this.fromIndex.serialize();return[“index-of”,this.needle.serialize(),this.haystack.serialize(),t]}return[“index-of”,this.needle.serialize(),this.haystack.serialize()]};var cr=function(t,e,r,n,a,i){this.inputType=t,this.type=e,this.input=r,this.cases=n,this.outputs=a,this.otherwise=i};cr.parse=function(t,e){if(t.length<5)return e.error("Expected at least 4 arguments, but found only "+(t.length-1)+".");if(t.length%2!=1)return e.error("Expected an even number of arguments.");var r,n;e.expectedType&&"value"!==e.expectedType.kind&&(n=e.expectedType);for(var a={},i=[],o=2;oNumber.MAX_SAFE_INTEGER)return c.error(“Branch labels must be integers no larger than “+Number.MAX_SAFE_INTEGER+“.”);if(“number”==typeof f&&Math.floor(f)!==f)return c.error(“Numeric branch labels must be integer values.”);if®{if(c.checkSubtype(r,ae(f)))return null}else r=ae(f);if(void 0!==a[String(f)])return c.error(“Branch labels must be unique.”);a[String(f)]=i.length}var p=e.parse(l,o,n);if(!p)return null;n=n||p.type,i.push(p)}var d=e.parse(t[1],1,jt);if(!d)return null;var g=e.parse(t[t.length-1],t.length-1,n);return g?“value”!==d.type.kind&&e.concat(1).checkSubtype(r,d.type)?null:new cr(r,n,d,a,i,g):null},cr.prototype.evaluate=function(t){var e=this.input.evaluate(t);return(ae(e)===this.inputType&&this.outputs[this.cases[e]]||this.otherwise).evaluate(t)},cr.prototype.eachChild=function(t){t(this.input),this.outputs.forEach(t),t(this.otherwise)},cr.prototype.outputDefined=function(){return this.outputs.every((function(t){return t.outputDefined()}))&&this.otherwise.outputDefined()},cr.prototype.serialize=function(){for(var t=this,e=[“match”,this.input.serialize()],r=[],n={},a=0,i=Object.keys(this.cases).sort();a=5)return e.error(“Expected 3 or 4 arguments, but found “+(t.length-1)+” instead.“);var r=e.parse(t[1],1,jt),n=e.parse(t[2],2,Dt);if(!r||!n)return null;if(!Zt(r.type,[Ht(jt),Rt,jt]))return e.error(“Expected first argument to be of type array or string, but found “+Gt(r.type)+” instead”);if(4===t.length){var a=e.parse(t[3],3,Dt);return a?new hr(r.type,r,n,a):null}return new hr(r.type,r,n)},hr.prototype.evaluate=function(t){var e=this.input.evaluate(t),r=this.beginIndex.evaluate(t);if(!Xt(e,[“string”,“array”]))throw new se(“Expected first argument to be of type array or string, but found “+Gt(ae(e))+” instead.“);if(this.endIndex){var n=this.endIndex.evaluate(t);return e.slice(r,n)}return e.slice®},hr.prototype.eachChild=function(t){t(this.input),t(this.beginIndex),this.endIndex&&t(this.endIndex)},hr.prototype.outputDefined=function(){return!1},hr.prototype.serialize=function(){if(null!=this.endIndex&&void 0!==this.endIndex){var t=this.endIndex.serialize();return[“slice”,this.input.serialize(),this.beginIndex.serialize(),t]}return[“slice”,this.input.serialize(),this.beginIndex.serialize()]};var gr=dr(“==”,(function(t,e,r){return e===r}),pr),mr=dr(“!=”,(function(t,e,r){return e!==r}),(function(t,e,r,n){return!pr(0,e,r,n)})),vr=dr(”<“,(function(t,e,r){return e”,(function(t,e,r){return e>r}),(function(t,e,r,n){return n.compare(e,r)>0})),xr=dr(”<=“,(function(t,e,r){return e<=r}),(function(t,e,r,n){return n.compare(e,r)<=0})),br=dr(“>=”,(function(t,e,r){return e>=r}),(function(t,e,r,n){return n.compare(e,r)>=0})),_r=function(t,e,r,n,a){this.type=Rt,this.number=t,this.locale=e,this.currency=r,this.minFractionDigits=n,this.maxFractionDigits=a};_r.parse=function(t,e){if(3!==t.length)return e.error(“Expected two arguments.”);var r=e.parse(t[1],1,Dt);if(!r)return null;var n=t[2];if(“object”!=typeof n||Array.isArray(n))return e.error(“NumberFormat options argument must be an object.”);var a=null;if(n.locale&&!(a=e.parse(n.locale,1,Rt)))return null;var i=null;if(n.currency&&!(i=e.parse(n.currency,1,Rt)))return null;var o=null;if(n[“min-fraction-digits”]&&!(o=e.parse(n[“min-fraction-digits”],1,Dt)))return null;var s=null;return n[“max-fraction-digits”]&&!(s=e.parse(n[“max-fraction-digits”],1,Dt))?null:new _r(r,a,i,o,s)},_r.prototype.evaluate=function(t){return new Intl.NumberFormat(this.locale?this.locale.evaluate(t):[],{style:this.currency?“currency”:“decimal”,currency:this.currency?this.currency.evaluate(t):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(t):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(t):void 0}).format(this.number.evaluate(t))},_r.prototype.eachChild=function(t){t(this.number),this.locale&&t(this.locale),this.currency&&t(this.currency),this.minFractionDigits&&t(this.minFractionDigits),this.maxFractionDigits&&t(this.maxFractionDigits)},_r.prototype.outputDefined=function(){return!1},_r.prototype.serialize=function(){var t={};return this.locale&&(t.locale=this.locale.serialize()),this.currency&&(t.currency=this.currency.serialize()),this.minFractionDigits&&(t[“min-fraction-digits”]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(t[“max-fraction-digits”]=this.maxFractionDigits.serialize()),[“number-format”,this.number.serialize(),t]};var wr=function(t){this.type=Dt,this.input=t};wr.parse=function(t,e){if(2!==t.length)return e.error(“Expected 1 argument, but found “+(t.length-1)+” instead.“);var r=e.parse(t[1],1);return r?“array”!==r.type.kind&&“string”!==r.type.kind&&“value”!==r.type.kind?e.error(“Expected argument of type string or array, but found “+Gt(r.type)+” instead.“):new wr®:null},wr.prototype.evaluate=function(t){var e=this.input.evaluate(t);if(“string”==typeof e)return e.length;if(Array.isArray(e))return e.length;throw new se(“Expected value to be of type string or array, but found “+Gt(ae(e))+” instead.“)},wr.prototype.eachChild=function(t){t(this.input)},wr.prototype.outputDefined=function(){return!1},wr.prototype.serialize=function(){var t=[“length”];return this.eachChild((function(e){t.push(e.serialize())})),t};var Tr={“==”:gr,“!=”:mr,“>”:yr,”<”:vr,“>=”:br,”<=”:xr,array:ce,at:or,boolean:ce,case:ur,coalesce:ar,collator:ve,format:ue,image:he,in:sr,“index-of”:lr,interpolate:rr,“interpolate-hcl”:rr,“interpolate-lab”:rr,length:wr,let:ir,literal:oe,match:cr,number:ce,“number-format”:_r,object:ce,slice:hr,step:je,string:ce,“to-boolean”:pe,“to-color”:pe,“to-number”:pe,“to-string”:pe,var:Fe,within:ze};function kr(t,e){var r=e[0],n=e[1],a=e[2],i=e[3];r=r.evaluate(t),n=n.evaluate(t),a=a.evaluate(t);var o=i?i.evaluate(t):1,s=re(r,n,a,o);if(s)throw new se(s);return new Kt(r/255*o,n/255*o,a/255o,o)}function Ar(t,e){return t in e}function Mr(t,e){var r=e[t];return void 0===r?null:r}function Sr(t){return{type:t}}function Er(t){return{result:“success”,value:t}}function Cr(t){return{result:“error”,value:t}}function Lr(t){return”data-driven”===t[“property-type”]||“cross-faded-data-driven”===t[“property-type”]}function Pr(t){return!!t.expression&&t.expression.parameters.indexOf(“zoom”)>-1}function Ir(t){return!!t.expression&&t.expression.interpolated}function zr(t){return t instanceof Number?“number”:t instanceof String?“string”:t instanceof Boolean?“boolean”:Array.isArray(t)?“array”:null===t?“null”:typeof t}function Or(t){return”object”==typeof t&&null!==t&&!Array.isArray(t)}function Dr(t){return t}function Rr(t,e,r){return void 0!==t?t:void 0!==e?e:void 0!==r?r:void 0}function Fr(t,e,r,n,a){return Rr(typeof r===a?n[r]:void 0,t.default,e.default)}function Br(t,e,r){if(“number”!==zr®)return Rr(t.default,e.default);var n=t.stops.length;if(1===n)return t.stops[0][1];if(r<=t.stops[0][0])return t.stops[0][1];if(r>=t.stops[n-1][0])return t.stops[n-1][1];var a=Ne(t.stops.map((function(t){return t[0]})),r);return t.stops[a][1]}function Nr(t,e,r){var n=void 0!==t.base?t.base:1;if(“number”!==zr®)return Rr(t.default,e.default);var a=t.stops.length;if(1===a)return t.stops[0][1];if(r<=t.stops[0][0])return t.stops[0][1];if(r>=t.stops[a-1][0])return t.stops[a-1][1];var i=Ne(t.stops.map((function(t){return t[0]})),r),o=function(t,e,r,n){var a=n-r,i=t-r;return 0===a?0:1===e?i/a:(Math.pow(e,i)-1)/(Math.pow(e,a)-1)}(r,n,t.stops[i][0],t.stops[i+1][0]),s=t.stops[i][1],l=t.stops[i+1][1],c=Ue[e.type]||Dr;if(t.colorSpace&&“rgb”!==t.colorSpace){var u=er[t.colorSpace];c=function(t,e){return u.reverse(u.interpolate(u.forward(t),u.forward(e),o))}}return”function”==typeof s.evaluate?{evaluate:function(){for(var t=[],e=arguments.length;e–;)t[e]=arguments[e];var r=s.evaluate.apply(void 0,t),n=l.evaluate.apply(void 0,t);if(void 0!==r&&void 0!==n)return c(r,n,o)}}:c(s,l,o)}function jr(t,e,r){return”color”===e.type?r=Kt.parse®:“formatted”===e.type?r=te.fromString(r.toString()):“resolvedImage”===e.type?r=ee.fromString(r.toString()):zr®===e.type||“enum”===e.type&&e.values[r]||(r=void 0),Rr(r,t.default,e.default)}me.register(Tr,{error:[{kind:“error”},[Rt],function(t,e){throw new se(e[0].evaluate(t))}],typeof:[Rt,[jt],function(t,e){return Gt(ae(e[0].evaluate(t)))}],“to-rgba”:[Ht(Dt,4),[Bt],function(t,e){return e[0].evaluate(t).toArray()}],rgb:[Bt,[Dt,Dt,Dt],kr],rgba:[Bt,[Dt,Dt,Dt,Dt],kr],has:{type:Ft,overloads:[[[Rt],function(t,e){return Ar(e[0].evaluate(t),t.properties())}],[[Rt,Nt],function(t,e){var r=e[1];return Ar(e[0].evaluate(t),r.evaluate(t))}]]},get:{type:jt,overloads:[[[Rt],function(t,e){return Mr(e[0].evaluate(t),t.properties())}],[[Rt,Nt],function(t,e){var r=e[1];return Mr(e[0].evaluate(t),r.evaluate(t))}]]},“feature-state”:[jt,[Rt],function(t,e){return Mr(e[0].evaluate(t),t.featureState||{})}],properties:[Nt,[],function(t){return t.properties()}],“geometry-type”:[Rt,[],function(t){return t.geometryType()}],id:[jt,[],function(t){return t.id()}],zoom:[Dt,[],function(t){return t.globals.zoom}],“heatmap-density”:[Dt,[],function(t){return t.globals.heatmapDensity||0}],“line-progress”:[Dt,[],function(t){return t.globals.lineProgress||0}],accumulated:[jt,[],function(t){return void 0===t.globals.accumulated?null:t.globals.accumulated}],“+”:[Dt,Sr(Dt),function(t,e){for(var r=0,n=0,a=e;n<a.length;n+=1)r+=a[n].evaluate(t);return r}],”“:[Dt,Sr(Dt),function(t,e){for(var r=1,n=0,a=e;n“:[Ft,[Rt,jt],function(t,e){var r=e[0],n=e[1],a=t.properties()[r.value],i=n.value;return typeof a==typeof i&&a>i}],“filter-id->”:[Ft,[jt],function(t,e){var r=e[0],n=t.id(),a=r.value;return typeof n==typeof a&&n>a}],“filter-<=”:[Ft,[Rt,jt],function(t,e){var r=e[0],n=e[1],a=t.properties()[r.value],i=n.value;return typeof a==typeof i&&a<=i}],“filter-id-<=”:[Ft,[jt],function(t,e){var r=e[0],n=t.id(),a=r.value;return typeof n==typeof a&&n<=a}],“filter->=”:[Ft,[Rt,jt],function(t,e){var r=e[0],n=e[1],a=t.properties()[r.value],i=n.value;return typeof a==typeof i&&a>=i}],“filter-id->=”:[Ft,[jt],function(t,e){var r=e[0],n=t.id(),a=r.value;return typeof n==typeof a&&n>=a}],“filter-has”:[Ft,[jt],function(t,e){return e[0].value in t.properties()}],“filter-has-id”:[Ft,[],function(t){return null!==t.id()&&void 0!==t.id()}],“filter-type-in”:[Ft,[Ht(Rt)],function(t,e){return e[0].value.indexOf(t.geometryType())>=0}],“filter-id-in”:[Ft,[Ht(jt)],function(t,e){return e[0].value.indexOf(t.id())>=0}],“filter-in-small”:[Ft,[Rt,Ht(jt)],function(t,e){var r=e[0];return e[1].value.indexOf(t.properties()[r.value])>=0}],“filter-in-large”:[Ft,[Rt,Ht(jt)],function(t,e){var r=e[0],n=e[1];return function(t,e,r,n){for(;r<=n;){var a=r+n>>1;if(e[a]===t)return!0;e[a]>t?n=a-1:r=a+1}return!1}(t.properties()[r.value],n.value,0,n.value.length-1)}],all:{type:Ft,overloads:[[[Ft,Ft],function(t,e){var r=e[1];return e[0].evaluate(t)&&r.evaluate(t)}],[Sr(Ft),function(t,e){for(var r=0,n=e;r0&&“string”==typeof t[0]&&t[0]in Tr}function qr(t,e){var r=new Be(Tr,[],e?function(t){var e={color:Bt,string:Rt,number:Dt,enum:Rt,boolean:Ft,formatted:Ut,resolvedImage:qt};return”array”===t.type?Ht(e[t.value]||jt,t.length):e[t.type]}(e):void 0),n=r.parse(t,void 0,void 0,void 0,e&&“string”===e.type?{typeAnnotation:“coerce”}:void 0);return n?Er(new Vr(n,e)):Cr(r.errors)}Vr.prototype.evaluateWithoutErrorHandling=function(t,e,r,n,a,i){return this._evaluator.globals=t,this._evaluator.feature=e,this._evaluator.featureState=r,this._evaluator.canonical=n,this._evaluator.availableImages=a||null,this._evaluator.formattedSection=i,this.expression.evaluate(this._evaluator)},Vr.prototype.evaluate=function(t,e,r,n,a,i){this._evaluator.globals=t,this._evaluator.feature=e||null,this._evaluator.featureState=r||null,this._evaluator.canonical=n,this._evaluator.availableImages=a||null,this._evaluator.formattedSection=i||null;try{var o=this.expression.evaluate(this._evaluator);if(null==o||“number”==typeof o&&o!=o)return this._defaultValue;if(this._enumValues&&!(o in this._enumValues))throw new se(“Expected value to be one of “+Object.keys(this._enumValues).map((function(t){return JSON.stringify(t)})).join(“, “)+”, but found “+JSON.stringify(o)+” instead.“);return o}catch(t){return this._warningHistory[t.message]||(this._warningHistory[t.message]=!0,“undefined”!=typeof console&&console.warn(t.message)),this._defaultValue}};var Hr=function(t,e){this.kind=t,this._styleExpression=e,this.isStateDependent=“constant”!==t&&!De(e.expression)};Hr.prototype.evaluateWithoutErrorHandling=function(t,e,r,n,a,i){return this._styleExpression.evaluateWithoutErrorHandling(t,e,r,n,a,i)},Hr.prototype.evaluate=function(t,e,r,n,a,i){return this._styleExpression.evaluate(t,e,r,n,a,i)};var Gr=function(t,e,r,n){this.kind=t,this.zoomStops=r,this._styleExpression=e,this.isStateDependent=“camera”!==t&&!De(e.expression),this.interpolationType=n};function Yr(t,e){if(“error”===(t=qr(t,e)).result)return t;var r=t.value.expression,n=Oe®;if(!n&&!Lr(e))return Cr([new It(“”,“data expressions not supported”)]);var a=Re(r,[“zoom”]);if(!a&&!Pr(e))return Cr([new It(“”,“zoom expressions not supported”)]);var i=function t(e){var r=null;if(e instanceof ir)r=t(e.result);else if(e instanceof ar)for(var n=0,a=e.args;nn.maximum?[new St(e,r,r+” is greater than the maximum value “+n.maximum)]:[]}function Kr(t){var e,r,n,a=t.valueSpec,i=Lt(t.value.type),o={},s=“categorical”!==i&&void 0===t.value.property,l=!s,c=“array”===zr(t.value.stops)&&“array”===zr(t.value.stops[0])&&“object”===zr(t.value.stops[0][0]),u=Zr({key:t.key,value:t.value,valueSpec:t.styleSpec.function,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{stops:function(t){if(“identity”===i)return[new St(t.key,t.value,‘identity function may not have a “stops” property’)];var e=[],r=t.value;return e=e.concat(Xr({key:t.key,value:r,valueSpec:t.valueSpec,style:t.style,styleSpec:t.styleSpec,arrayElementValidator:h})),“array”===zr®&&0===r.length&&e.push(new St(t.key,r,“array must have at least one stop”)),e},default:function(t){return bn({key:t.key,value:t.value,valueSpec:a,style:t.style,styleSpec:t.styleSpec})}}});return”identity”===i&&s&&u.push(new St(t.key,t.value,‘missing required property “property”’)),“identity”===i||t.value.stops||u.push(new St(t.key,t.value,‘missing required property “stops”’)),“exponential”===i&&t.valueSpec.expression&&!Ir(t.valueSpec)&&u.push(new St(t.key,t.value,“exponential functions not supported”)),t.styleSpec.$version>=8&&(l&&!Lr(t.valueSpec)?u.push(new St(t.key,t.value,“property functions not supported”)):s&&!Pr(t.valueSpec)&&u.push(new St(t.key,t.value,“zoom functions not supported”))),“categorical”!==i&&!c||void 0!==t.value.property||u.push(new St(t.key,t.value,‘“property” property is required’)),u;function h(t){var e=[],i=t.value,s=t.key;if(“array”!==zr(i))return[new St(s,i,“array expected, “+zr(i)+” found”)];if(2!==i.length)return[new St(s,i,“array length 2 expected, length “+i.length+” found”)];if©{if(“object”!==zr(i[0]))return[new St(s,i,“object expected, “+zr(i[0])+” found”)];if(void 0===i[0].zoom)return[new St(s,i,“object stop key must have zoom”)];if(void 0===i[0].value)return[new St(s,i,“object stop key must have value”)];if(n&&n>Lt(i[0].zoom))return[new St(s,i[0].zoom,“stop zoom values must appear in ascending order”)];Lt(i[0].zoom)!==n&&(n=Lt(i[0].zoom),r=void 0,o={}),e=e.concat(Zr({key:s+”[0]“,value:i[0],valueSpec:{zoom:{}},style:t.style,styleSpec:t.styleSpec,objectElementValidators:{zoom:Jr,value:f}}))}else e=e.concat(f({key:s+”[0]“,value:i[0],valueSpec:{},style:t.style,styleSpec:t.styleSpec},i));return Ur(Pt(i[1]))?e.concat([new St(s+”[1]“,i[1],“expressions are not allowed in function stops.”)]):e.concat(bn({key:s+”[1]“,value:i[1],valueSpec:a,style:t.style,styleSpec:t.styleSpec}))}function f(t,n){var s=zr(t.value),l=Lt(t.value),c=null!==t.value?t.value:n;if(e){if(s!==e)return[new St(t.key,c,s+” stop domain type must match previous stop domain type “+e)]}else e=s;if(“number”!==s&&“string”!==s&&“boolean”!==s)return[new St(t.key,c,“stop domain value must be a number, string, or boolean”)];if(“number”!==s&&“categorical”!==i){var u=“number expected, “+s+” found”;return Lr(a)&&void 0===i&&(u+=’\nIf you intended to use a categorical function, specify "type": "categorical".‘),[new St(t.key,c,u)]}return”categorical”!==i||“number”!==s||isFinite(l)&&Math.floor(l)===l?“categorical”!==i&&“number”===s&&void 0!==r&&l=2&&“$id”!==t[1]&&“$type”!==t[1];case”in”:return t.length>=3&&(“string”!=typeof t[1]||Array.isArray(t[2]));case”!in”:case”!has”:case”none”:return!1;case”==”:case”!=”:case”>”:case”>=”:case”<”:case”<=”:return 3!==t.length||Array.isArray(t[1])||Array.isArray(t[2]);case”any”:case”all”:for(var e=0,r=t.slice(1);ee?1:0}function an(t){if(!t)return!0;var e,r=t[0];return t.length<=1?“any”!==r:“==”===r?on(t[1],t[2],“==”):“!=”===r?cn(on(t[1],t[2],“==”)):”<“===r||”>“===r||”<=“===r||”>=“===r?on(t[1],t[2],r):“any”===r?(e=t.slice(1),[“any”].concat(e.map(an))):“all”===r?[“all”].concat(t.slice(1).map(an)):“none”===r?[“all”].concat(t.slice(1).map(an).map(cn)):“in”===r?sn(t[1],t.slice(2)):“!in”===r?cn(sn(t[1],t.slice(2))):“has”===r?ln(t[1]):“!has”===r?cn(ln(t[1])):“within”!==r||t}function on(t,e,r){switch(t){case”$type”:return[“filter-type-”+r,e];case”$id”:return[“filter-id-”+r,e];default:return[“filter-”+r,t,e]}}function sn(t,e){if(0===e.length)return!1;switch(t){case”$type”:return[“filter-type-in”,[“literal”,e]];case”$id”:return[“filter-id-in”,[“literal”,e]];default:return e.length>200&&!e.some((function(t){return typeof t!=typeof e[0]}))?[“filter-in-large”,t,[“literal”,e.sort(nn)]]:[“filter-in-small”,t,[“literal”,e]]}}function ln(t){switch(t){case”$type”:return!0;case”$id”:return[“filter-has-id”];default:return[“filter-has”,t]}}function cn(t){return[“!”,t]}function un(t){return tn(Pt(t.value))?Qr(Ct({},t,{expressionContext:“filter”,valueSpec:{value:“boolean”}})):function t(e){var r=e.value,n=e.key;if(“array”!==zr®)return[new St(n,r,“array expected, “+zr®+” found”)];var a,i=e.styleSpec,o=[];if(r.length<1)return[new St(n,r,"filter array must have at least 1 element")];switch(o=o.concat($r({key:n+"[0]",value:r[0],valueSpec:i.filter_operator,style:e.style,styleSpec:e.styleSpec})),Lt(r[0])){case"<":case"<=":case">“:case”>=”:r.length>=2&&“$type”===Lt(r[1])&&o.push(new St(n,r,‘“$type” cannot be use with operator “’+r[0]+‘“’));case”==”:case”!=”:3!==r.length&&o.push(new St(n,r,‘filter array for operator “’+r[0]+‘” must have 3 elements’));case”in”:case”!in”:r.length>=2&&“string”!==(a=zr(r[1]))&&o.push(new St(n+”[1]“,r[1],“string expected, “+a+” found”));for(var s=2;s=u[p+0]&&n>=u[p+1])?(o[f]=!0,i.push(c[f])):o[f]=!1}}},Pn.prototype._forEachCell=function(t,e,r,n,a,i,o,s){for(var l=this._convertToCellCoord(t),c=this._convertToCellCoord(e),u=this._convertToCellCoord®,h=this._convertToCellCoord(n),f=l;f<=u;f++)for(var p=c;p<=h;p++){var d=this.d*p+f;if((!s||s(this._convertFromCellCoord(f),this._convertFromCellCoord(p),this._convertFromCellCoord(f+1),this._convertFromCellCoord(p+1)))&&a.call(this,t,e,r,n,d,i,o,s))return}},Pn.prototype._convertFromCellCoord=function(t){return(t-this.padding)/this.scale},Pn.prototype._convertToCellCoord=function(t){return Math.max(0,Math.min(this.d-1,Math.floor(t*this.scale)+this.padding))},Pn.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var t=this.cells,e=3+this.cells.length+1+1,r=0,n=0;n=0)){var u=t[c];l[c]=On[s].shallow.indexOf©>=0?u:Nn(u,e)}t instanceof Error&&(l.message=t.message)}if(l.$name)throw new Error(“$name property is reserved for worker serialization logic.”);return”Object”!==s&&(l.$name=s),l}throw new Error(“can’t serialize object of type “+typeof t)}function jn(t){if(null==t||“boolean”==typeof t||“number”==typeof t||“string”==typeof t||t instanceof Boolean||t instanceof Number||t instanceof String||t instanceof Date||t instanceof RegExp||Fn(t)||Bn(t)||ArrayBuffer.isView(t)||t instanceof In)return t;if(Array.isArray(t))return t.map(jn);if(“object”==typeof t){var e=t.$name||“Object”,r=On[e].klass;if(!r)throw new Error(“can’t deserialize unregistered class “+e);if(r.deserialize)return r.deserialize(t);for(var n=Object.create(r.prototype),a=0,i=Object.keys(t);a=0?s:jn(s)}}return n}throw new Error(“can’t deserialize object of type “+typeof t)}var Vn=function(){this.first=!0};Vn.prototype.update=function(t,e){var r=Math.floor(t);return this.first?(this.first=!1,this.lastIntegerZoom=r,this.lastIntegerZoomTime=0,this.lastZoom=t,this.lastFloorZoom=r,!0):(this.lastFloorZoom>r?(this.lastIntegerZoom=r+1,this.lastIntegerZoomTime=e):this.lastFloorZoom=128&&t<=255},Arabic:function(t){return t>=1536&&t<=1791},“Arabic Supplement”:function(t){return t>=1872&&t<=1919},“Arabic Extended-A”:function(t){return t>=2208&&t<=2303},“Hangul Jamo”:function(t){return t>=4352&&t<=4607},“Unified Canadian Aboriginal Syllabics”:function(t){return t>=5120&&t<=5759},Khmer:function(t){return t>=6016&&t<=6143},“Unified Canadian Aboriginal Syllabics Extended”:function(t){return t>=6320&&t<=6399},“General Punctuation”:function(t){return t>=8192&&t<=8303},“Letterlike Symbols”:function(t){return t>=8448&&t<=8527},“Number Forms”:function(t){return t>=8528&&t<=8591},“Miscellaneous Technical”:function(t){return t>=8960&&t<=9215},“Control Pictures”:function(t){return t>=9216&&t<=9279},“Optical Character Recognition”:function(t){return t>=9280&&t<=9311},“Enclosed Alphanumerics”:function(t){return t>=9312&&t<=9471},“Geometric Shapes”:function(t){return t>=9632&&t<=9727},“Miscellaneous Symbols”:function(t){return t>=9728&&t<=9983},“Miscellaneous Symbols and Arrows”:function(t){return t>=11008&&t<=11263},“CJK Radicals Supplement”:function(t){return t>=11904&&t<=12031},“Kangxi Radicals”:function(t){return t>=12032&&t<=12255},“Ideographic Description Characters”:function(t){return t>=12272&&t<=12287},“CJK Symbols and Punctuation”:function(t){return t>=12288&&t<=12351},Hiragana:function(t){return t>=12352&&t<=12447},Katakana:function(t){return t>=12448&&t<=12543},Bopomofo:function(t){return t>=12544&&t<=12591},“Hangul Compatibility Jamo”:function(t){return t>=12592&&t<=12687},Kanbun:function(t){return t>=12688&&t<=12703},“Bopomofo Extended”:function(t){return t>=12704&&t<=12735},“CJK Strokes”:function(t){return t>=12736&&t<=12783},“Katakana Phonetic Extensions”:function(t){return t>=12784&&t<=12799},“Enclosed CJK Letters and Months”:function(t){return t>=12800&&t<=13055},“CJK Compatibility”:function(t){return t>=13056&&t<=13311},“CJK Unified Ideographs Extension A”:function(t){return t>=13312&&t<=19903},“Yijing Hexagram Symbols”:function(t){return t>=19904&&t<=19967},“CJK Unified Ideographs”:function(t){return t>=19968&&t<=40959},“Yi Syllables”:function(t){return t>=40960&&t<=42127},“Yi Radicals”:function(t){return t>=42128&&t<=42191},“Hangul Jamo Extended-A”:function(t){return t>=43360&&t<=43391},“Hangul Syllables”:function(t){return t>=44032&&t<=55215},“Hangul Jamo Extended-B”:function(t){return t>=55216&&t<=55295},“Private Use Area”:function(t){return t>=57344&&t<=63743},“CJK Compatibility Ideographs”:function(t){return t>=63744&&t<=64255},“Arabic Presentation Forms-A”:function(t){return t>=64336&&t<=65023},“Vertical Forms”:function(t){return t>=65040&&t<=65055},“CJK Compatibility Forms”:function(t){return t>=65072&&t<=65103},“Small Form Variants”:function(t){return t>=65104&&t<=65135},“Arabic Presentation Forms-B”:function(t){return t>=65136&&t<=65279},“Halfwidth and Fullwidth Forms”:function(t){return t>=65280&&t<=65519}};function qn(t){for(var e=0,r=t;e=65097&&t<=65103)||Un“CJK Compatibility Ideographs”||Un“CJK Compatibility”||Un“CJK Radicals Supplement”||Un“CJK Strokes”||!(!Un“CJK Symbols and Punctuation”||t>=12296&&t<=12305||t>=12308&&t<=12319||12336===t)||Un“CJK Unified Ideographs Extension A”||Un“CJK Unified Ideographs”||Un“Enclosed CJK Letters and Months”||Un“Hangul Compatibility Jamo”||Un“Hangul Jamo Extended-A”||Un“Hangul Jamo Extended-B”||Un“Hangul Jamo”||Un“Hangul Syllables”||Un.Hiragana(t)||Un“Ideographic Description Characters”||Un.Kanbun(t)||Un“Kangxi Radicals”||Un“Katakana Phonetic Extensions”||Un.Katakana(t)&&12540!==t||!(!Un“Halfwidth and Fullwidth Forms”||65288===t||65289===t||65293===t||t>=65306&&t<=65310||65339===t||65341===t||65343===t||t>=65371&&t<=65503||65507===t||t>=65512&&t<=65519)||!(!Un“Small Form Variants”||t>=65112&&t<=65118||t>=65123&&t<=65126)||Un“Unified Canadian Aboriginal Syllabics”||Un“Unified Canadian Aboriginal Syllabics Extended”||Un“Vertical Forms”||Un“Yijing Hexagram Symbols”||Un“Yi Syllables”||Un“Yi Radicals”)))}function Gn(t){return!(Hn(t)||function(t){return!!(Un“Latin-1 Supplement”&&(167===t||169===t||174===t||177===t||188===t||189===t||190===t||215===t||247===t)||Un“General Punctuation”&&(8214===t||8224===t||8225===t||8240===t||8241===t||8251===t||8252===t||8258===t||8263===t||8264===t||8265===t||8273===t)||Un“Letterlike Symbols”||Un“Number Forms”||Un“Miscellaneous Technical”&&(t>=8960&&t<=8967||t>=8972&&t<=8991||t>=8996&&t<=9e3||9003===t||t>=9085&&t<=9114||t>=9150&&t<=9165||9167===t||t>=9169&&t<=9179||t>=9186&&t<=9215)||Un“Control Pictures”&&9251!==t||Un“Optical Character Recognition”||Un“Enclosed Alphanumerics”||Un“Geometric Shapes”||Un“Miscellaneous Symbols”&&!(t>=9754&&t<=9759)||Un“Miscellaneous Symbols and Arrows”&&(t>=11026&&t<=11055||t>=11088&&t<=11097||t>=11192&&t<=11243)||Un“CJK Symbols and Punctuation”||Un.Katakana(t)||Un“Private Use Area”||Un“CJK Compatibility Forms”||Un“Small Form Variants”||Un“Halfwidth and Fullwidth Forms”||8734===t||8756===t||8757===t||t>=9984&&t<=10087||t>=10102&&t<=10131||65532===t||65533===t)}(t))}function Yn(t){return t>=1424&&t<=2303||Un“Arabic Presentation Forms-A”||Un“Arabic Presentation Forms-B”}function Wn(t,e){return!(!e&&Yn(t)||t>=2304&&t<=3583||t>=3840&&t<=4255||Un.Khmer(t))}function Zn(t){for(var e=0,r=t;e-1&&(Jn=“error”),Xn&&Xn(t)};function $n(){ta.fire(new Tt(“pluginStateChange”,{pluginStatus:Jn,pluginURL:Kn}))}var ta=new At,ea=function(){return Jn},ra=function(){if(“deferred”!==Jn||!Kn)throw new Error(“rtl-text-plugin cannot be downloaded unless a pluginURL is specified”);Jn=“loading”,$n(),Kn&&yt({url:Kn},(function(t){t?Qn(t):(Jn=“loaded”,$n())}))},na={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:function(){return”loaded”===Jn||null!=na.applyArabicShaping},isLoading:function(){return”loading”===Jn},setState:function(t){Jn=t.pluginStatus,Kn=t.pluginURL},isParsed:function(){return null!=na.applyArabicShaping&&null!=na.processBidirectionalText&&null!=na.processStyledBidirectionalText},getPluginURL:function(){return Kn}},aa=function(t,e){this.zoom=t,e?(this.now=e.now,this.fadeDuration=e.fadeDuration,this.zoomHistory=e.zoomHistory,this.transition=e.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new Vn,this.transition={})};aa.prototype.isSupportedScript=function(t){return function(t,e){for(var r=0,n=t;rthis.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:e+(1-e)*r}:{fromScale:.5,toScale:1,t:1-(1-r)*e}};var ia=function(t,e){this.property=t,this.value=e,this.expression=function(t,e){if(Or(t))return new Wr(t,e);if(Ur(t)){var r=Yr(t,e);if(“error”===r.result)throw new Error(r.value.map((function(t){return t.key+”: “+t.message})).join(”, “));return r.value}var n=t;return”string”==typeof t&&“color”===e.type&&(n=Kt.parse(t)),{kind:“constant”,evaluate:function(){return n}}}(void 0===e?t.specification.default:e,t.specification)};ia.prototype.isDataDriven=function(){return”source”===this.expression.kind||“composite”===this.expression.kind},ia.prototype.possiblyEvaluate=function(t,e,r){return this.property.possiblyEvaluate(this,t,e,r)};var oa=function(t){this.property=t,this.value=new ia(t,void 0)};oa.prototype.transitioned=function(t,e){return new la(this.property,this.value,e,u({},t.transition,this.transition),t.now)},oa.prototype.untransitioned=function(){return new la(this.property,this.value,null,{},0)};var sa=function(t){this._properties=t,this._values=Object.create(t.defaultTransitionablePropertyValues)};sa.prototype.getValue=function(t){return x(this._values[t].value.value)},sa.prototype.setValue=function(t,e){this._values.hasOwnProperty(t)||(this._values[t]=new oa(this._values[t].property)),this._values[t].value=new ia(this._values[t].property,null===e?void 0:x(e))},sa.prototype.getTransition=function(t){return x(this._values[t].transition)},sa.prototype.setTransition=function(t,e){this._values.hasOwnProperty(t)||(this._values[t]=new oa(this._values[t].property)),this._values[t].transition=x(e)||void 0},sa.prototype.serialize=function(){for(var t={},e=0,r=Object.keys(this._values);ethis.end)return this.prior=null,a;if(this.value.isDataDriven())return this.prior=null,a;if(n=1)return 1;var e=t*t,r=et;return 4(t<.5?r:3*(t-e)+r-.75)}(o))}return a};var ca=function(t){this._properties=t,this._values=Object.create(t.defaultTransitioningPropertyValues)};ca.prototype.possiblyEvaluate=function(t,e,r){for(var n=new fa(this._properties),a=0,i=Object.keys(this._values);an.zoomHistory.lastIntegerZoom?{from:t,to:e}:{from:r,to:e}},e.prototype.interpolate=function(t){return t},e}(da),ma=function(t){this.specification=t};ma.prototype.possiblyEvaluate=function(t,e,r,n){if(void 0!==t.value){if(“constant”===t.expression.kind){var a=t.expression.evaluate(e,null,{},r,n);return this._calculate(a,a,a,e)}return this._calculate(t.expression.evaluate(new aa(Math.floor(e.zoom-1),e)),t.expression.evaluate(new aa(Math.floor(e.zoom),e)),t.expression.evaluate(new aa(Math.floor(e.zoom+1),e)),e)}},ma.prototype._calculate=function(t,e,r,n){return n.zoom>n.zoomHistory.lastIntegerZoom?{from:t,to:e}:{from:r,to:e}},ma.prototype.interpolate=function(t){return t};var va=function(t){this.specification=t};va.prototype.possiblyEvaluate=function(t,e,r,n){return!!t.expression.evaluate(e,null,{},r,n)},va.prototype.interpolate=function(){return!1};var ya=function(t){for(var e in this.properties=t,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[],t){var r=t[e];r.specification.overridable&&this.overridableProperties.push(e);var n=this.defaultPropertyValues[e]=new ia(r,void 0),a=this.defaultTransitionablePropertyValues[e]=new oa®;this.defaultTransitioningPropertyValues[e]=a.untransitioned(),this.defaultPossiblyEvaluatedValues[e]=n.possiblyEvaluate({})}};Dn(“DataDrivenProperty”,da),Dn(“DataConstantProperty”,pa),Dn(“CrossFadedDataDrivenProperty”,ga),Dn(“CrossFadedProperty”,ma),Dn(“ColorRampProperty”,va);var xa=function(t){function e(e,r){if(t.call(this),this.id=e.id,this.type=e.type,this._featureFilter={filter:function(){return!0},needGeometry:!1},“custom”!==e.type&&(this.metadata=(e=e).metadata,this.minzoom=e.minzoom,this.maxzoom=e.maxzoom,“background”!==e.type&&(this.source=e.source,this.sourceLayer=e[“source-layer”],this.filter=e.filter),r.layout&&(this._unevaluatedLayout=new ua(r.layout)),r.paint)){for(var n in this._transitionablePaint=new sa(r.paint),e.paint)this.setPaintProperty(n,e.paint[n],{validate:!1});for(var a in e.layout)this.setLayoutProperty(a,e.layout[a],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new fa(r.paint)}}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getCrossfadeParameters=function(){return this._crossfadeParameters},e.prototype.getLayoutProperty=function(t){return”visibility”===t?this.visibility:this._unevaluatedLayout.getValue(t)},e.prototype.setLayoutProperty=function(t,e,r){void 0===r&&(r={}),null!=e&&this._validate(En,“layers.”+this.id+“.layout.”+t,t,e,r)||(“visibility”!==t?this._unevaluatedLayout.setValue(t,e):this.visibility=e)},e.prototype.getPaintProperty=function(t){return m(t,“-transition”)?this._transitionablePaint.getTransition(t.slice(0,-“-transition”.length)):this._transitionablePaint.getValue(t)},e.prototype.setPaintProperty=function(t,e,r){if(void 0===r&&(r={}),null!=e&&this._validate(Sn,“layers.”+this.id+“.paint.”+t,t,e,r))return!1;if(m(t,“-transition”))return this._transitionablePaint.setTransition(t.slice(0,-“-transition”.length),e||void 0),!1;var n=this._transitionablePaint._values[t],a=“cross-faded-data-driven”===n.property.specification[“property-type”],i=n.value.isDataDriven(),o=n.value;this._transitionablePaint.setValue(t,e),this._handleSpecialPaintPropertyUpdate(t);var s=this._transitionablePaint._values[t].value;return s.isDataDriven()||i||a||this._handleOverridablePaintPropertyUpdate(t,o,s)},e.prototype._handleSpecialPaintPropertyUpdate=function(t){},e.prototype._handleOverridablePaintPropertyUpdate=function(t,e,r){return!1},e.prototype.isHidden=function(t){return!!(this.minzoom&&t=this.maxzoom)||“none”===this.visibility},e.prototype.updateTransitions=function(t){this._transitioningPaint=this._transitionablePaint.transitioned(t,this._transitioningPaint)},e.prototype.hasTransition=function(){return this._transitioningPaint.hasTransition()},e.prototype.recalculate=function(t,e){t.getCrossfadeParameters&&(this._crossfadeParameters=t.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(t,void 0,e)),this.paint=this._transitioningPaint.possiblyEvaluate(t,void 0,e)},e.prototype.serialize=function(){var t={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&&(t.layout=t.layout||{},t.layout.visibility=this.visibility),y(t,(function(t,e){return!(void 0===t||“layout”===e&&!Object.keys(t).length||“paint”===e&&!Object.keys(t).length)}))},e.prototype._validate=function(t,e,r,n,a){return void 0===a&&(a={}),(!a||!1!==a.validate)&&Cn(this,t.call(An,{key:e,layerType:this.type,objectKey:r,value:n,styleSpec:Mt,style:{glyphs:!0,sprite:!0}}))},e.prototype.is3D=function(){return!1},e.prototype.isTileClipped=function(){return!1},e.prototype.hasOffscreenPass=function(){return!1},e.prototype.resize=function(){},e.prototype.isStateDependent=function(){for(var t in this.paint._values){var e=this.paint.get(t);if(e instanceof ha&&Lr(e.property.specification)&&(“source”===e.value.kind||“composite”===e.value.kind)&&e.value.isStateDependent)return!0}return!1},e}(At),ba={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},_a=function(t,e){this._structArray=t,this._pos1=e*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},wa=function(){this.isTransferred=!1,this.capacity=-1,this.resize(0)};function Ta(t,e){void 0===e&&(e=1);var r=0,n=0;return{members:t.map((function(t){var a=ba[t.type].BYTES_PER_ELEMENT,i=r=ka(r,Math.max(e,a)),o=t.components||1;return n=Math.max(n,a),r+=a*o,{name:t.name,type:t.type,components:o,offset:i}})),size:ka(r,Math.max(n,e)),alignment:e}}function ka(t,e){return Math.ceil(t/e)*e}wa.serialize=function(t,e){return t._trim(),e&&(t.isTransferred=!0,e.push(t.arrayBuffer)),{length:t.length,arrayBuffer:t.arrayBuffer}},wa.deserialize=function(t){var e=Object.create(this.prototype);return e.arrayBuffer=t.arrayBuffer,e.length=t.length,e.capacity=t.arrayBuffer.byteLength/e.bytesPerElement,e._refreshViews(),e},wa.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},wa.prototype.clear=function(){this.length=0},wa.prototype.resize=function(t){this.reserve(t),this.length=t},wa.prototype.reserve=function(t){if(t>this.capacity){this.capacity=Math.max(t,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var e=this.uint8;this._refreshViews(),e&&this.uint8.set(e)}},wa.prototype._refreshViews=function(){throw new Error(”_refreshViews() must be implemented by each concrete StructArray layout”)};var Aa=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e){var r=this.length;return this.resize(r+1),this.emplace(r,t,e)},e.prototype.emplace=function(t,e,r){var n=2*t;return this.int16[n+0]=e,this.int16[n+1]=r,t},e}(wa);Aa.prototype.bytesPerElement=4,Dn(“StructArrayLayout2i4”,Aa);var Ma=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n){var a=this.length;return this.resize(a+1),this.emplace(a,t,e,r,n)},e.prototype.emplace=function(t,e,r,n,a){var i=4*t;return this.int16[i+0]=e,this.int16[i+1]=r,this.int16[i+2]=n,this.int16[i+3]=a,t},e}(wa);Ma.prototype.bytesPerElement=8,Dn(“StructArrayLayout4i8”,Ma);var Sa=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,a,i){var o=this.length;return this.resize(o+1),this.emplace(o,t,e,r,n,a,i)},e.prototype.emplace=function(t,e,r,n,a,i,o){var s=6*t;return this.int16[s+0]=e,this.int16[s+1]=r,this.int16[s+2]=n,this.int16[s+3]=a,this.int16[s+4]=i,this.int16[s+5]=o,t},e}(wa);Sa.prototype.bytesPerElement=12,Dn(“StructArrayLayout2i4i12”,Sa);var Ea=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,a,i){var o=this.length;return this.resize(o+1),this.emplace(o,t,e,r,n,a,i)},e.prototype.emplace=function(t,e,r,n,a,i,o){var s=4*t,l=8*t;return this.int16[s+0]=e,this.int16[s+1]=r,this.uint8[l+4]=n,this.uint8[l+5]=a,this.uint8[l+6]=i,this.uint8[l+7]=o,t},e}(wa);Ea.prototype.bytesPerElement=8,Dn(“StructArrayLayout2i4ub8”,Ea);var Ca=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,a,i,o,s,l,c){var u=this.length;return this.resize(u+1),this.emplace(u,t,e,r,n,a,i,o,s,l,c)},e.prototype.emplace=function(t,e,r,n,a,i,o,s,l,c,u){var h=9*t,f=18*t;return this.uint16[h+0]=e,this.uint16[h+1]=r,this.uint16[h+2]=n,this.uint16[h+3]=a,this.uint16[h+4]=i,this.uint16[h+5]=o,this.uint16[h+6]=s,this.uint16[h+7]=l,this.uint8[f+16]=c,this.uint8[f+17]=u,t},e}(wa);Ca.prototype.bytesPerElement=18,Dn(“StructArrayLayout8ui2ub18”,Ca);var La=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,a,i,o,s,l,c,u,h){var f=this.length;return this.resize(f+1),this.emplace(f,t,e,r,n,a,i,o,s,l,c,u,h)},e.prototype.emplace=function(t,e,r,n,a,i,o,s,l,c,u,h,f){var p=12*t;return this.int16[p+0]=e,this.int16[p+1]=r,this.int16[p+2]=n,this.int16[p+3]=a,this.uint16[p+4]=i,this.uint16[p+5]=o,this.uint16[p+6]=s,this.uint16[p+7]=l,this.int16[p+8]=c,this.int16[p+9]=u,this.int16[p+10]=h,this.int16[p+11]=f,t},e}(wa);La.prototype.bytesPerElement=24,Dn(“StructArrayLayout4i4ui4i24”,La);var Pa=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r){var n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)},e.prototype.emplace=function(t,e,r,n){var a=3*t;return this.float32[a+0]=e,this.float32[a+1]=r,this.float32[a+2]=n,t},e}(wa);Pa.prototype.bytesPerElement=12,Dn(“StructArrayLayout3f12”,Pa);var Ia=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t){var e=this.length;return this.resize(e+1),this.emplace(e,t)},e.prototype.emplace=function(t,e){return this.uint32[1*t+0]=e,t},e}(wa);Ia.prototype.bytesPerElement=4,Dn(“StructArrayLayout1ul4”,Ia);var za=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.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)},e.prototype.emplaceBack=function(t,e,r,n,a,i,o,s,l){var c=this.length;return this.resize(c+1),this.emplace(c,t,e,r,n,a,i,o,s,l)},e.prototype.emplace=function(t,e,r,n,a,i,o,s,l,c){var u=10*t,h=5*t;return this.int16[u+0]=e,this.int16[u+1]=r,this.int16[u+2]=n,this.int16[u+3]=a,this.int16[u+4]=i,this.int16[u+5]=o,this.uint32[h+3]=s,this.uint16[u+8]=l,this.uint16[u+9]=c,t},e}(wa);za.prototype.bytesPerElement=20,Dn(“StructArrayLayout6i1ul2ui20”,za);var Oa=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,a,i){var o=this.length;return this.resize(o+1),this.emplace(o,t,e,r,n,a,i)},e.prototype.emplace=function(t,e,r,n,a,i,o){var s=6*t;return this.int16[s+0]=e,this.int16[s+1]=r,this.int16[s+2]=n,this.int16[s+3]=a,this.int16[s+4]=i,this.int16[s+5]=o,t},e}(wa);Oa.prototype.bytesPerElement=12,Dn(“StructArrayLayout2i2i2i12”,Oa);var Da=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n,a){var i=this.length;return this.resize(i+1),this.emplace(i,t,e,r,n,a)},e.prototype.emplace=function(t,e,r,n,a,i){var o=4*t,s=8*t;return this.float32[o+0]=e,this.float32[o+1]=r,this.float32[o+2]=n,this.int16[s+6]=a,this.int16[s+7]=i,t},e}(wa);Da.prototype.bytesPerElement=16,Dn(“StructArrayLayout2f1f2i16”,Da);var Ra=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n){var a=this.length;return this.resize(a+1),this.emplace(a,t,e,r,n)},e.prototype.emplace=function(t,e,r,n,a){var i=12*t,o=3*t;return this.uint8[i+0]=e,this.uint8[i+1]=r,this.float32[o+1]=n,this.float32[o+2]=a,t},e}(wa);Ra.prototype.bytesPerElement=12,Dn(“StructArrayLayout2ub2f12”,Ra);var Fa=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r){var n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)},e.prototype.emplace=function(t,e,r,n){var a=3*t;return this.uint16[a+0]=e,this.uint16[a+1]=r,this.uint16[a+2]=n,t},e}(wa);Fa.prototype.bytesPerElement=6,Dn(“StructArrayLayout3ui6”,Fa);var Ba=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.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)},e.prototype.emplaceBack=function(t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g,m){var v=this.length;return this.resize(v+1),this.emplace(v,t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g,m)},e.prototype.emplace=function(t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g,m,v){var y=24*t,x=12*t,b=48*t;return this.int16[y+0]=e,this.int16[y+1]=r,this.uint16[y+2]=n,this.uint16[y+3]=a,this.uint32[x+2]=i,this.uint32[x+3]=o,this.uint32[x+4]=s,this.uint16[y+10]=l,this.uint16[y+11]=c,this.uint16[y+12]=u,this.float32[x+7]=h,this.float32[x+8]=f,this.uint8[b+36]=p,this.uint8[b+37]=d,this.uint8[b+38]=g,this.uint32[x+10]=m,this.int16[y+22]=v,t},e}(wa);Ba.prototype.bytesPerElement=48,Dn(“StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48”,Ba);var Na=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.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)},e.prototype.emplaceBack=function(t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g,m,v,y,x,b,,w,T,k,A,M,S){var E=this.length;return this.resize(E+1),this.emplace(E,t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g,m,v,y,x,b,,w,T,k,A,M,S)},e.prototype.emplace=function(t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g,m,v,y,x,b,,w,T,k,A,M,S,E){var C=34*t,L=17*t;return this.int16[C+0]=e,this.int16[C+1]=r,this.int16[C+2]=n,this.int16[C+3]=a,this.int16[C+4]=i,this.int16[C+5]=o,this.int16[C+6]=s,this.int16[C+7]=l,this.uint16[C+8]=c,this.uint16[C+9]=u,this.uint16[C+10]=h,this.uint16[C+11]=f,this.uint16[C+12]=p,this.uint16[C+13]=d,this.uint16[C+14]=g,this.uint16[C+15]=m,this.uint16[C+16]=v,this.uint16[C+17]=y,this.uint16[C+18]=x,this.uint16[C+19]=b,this.uint16[C+20]=_,this.uint16[C+21]=w,this.uint16[C+22]=T,this.uint32[L+12]=k,this.float32[L+13]=A,this.float32[L+14]=M,this.float32[L+15]=S,this.float32[L+16]=E,t},e}(wa);Na.prototype.bytesPerElement=68,Dn(“StructArrayLayout8i15ui1ul4f68”,Na);var ja=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t){var e=this.length;return this.resize(e+1),this.emplace(e,t)},e.prototype.emplace=function(t,e){return this.float32[1*t+0]=e,t},e}(wa);ja.prototype.bytesPerElement=4,Dn(“StructArrayLayout1f4”,ja);var Va=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r){var n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)},e.prototype.emplace=function(t,e,r,n){var a=3*t;return this.int16[a+0]=e,this.int16[a+1]=r,this.int16[a+2]=n,t},e}(wa);Va.prototype.bytesPerElement=6,Dn(“StructArrayLayout3i6”,Va);var Ua=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r){var n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)},e.prototype.emplace=function(t,e,r,n){var a=4*t;return this.uint32[2*t+0]=e,this.uint16[a+2]=r,this.uint16[a+3]=n,t},e}(wa);Ua.prototype.bytesPerElement=8,Dn(“StructArrayLayout1ul2ui8”,Ua);var qa=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e){var r=this.length;return this.resize(r+1),this.emplace(r,t,e)},e.prototype.emplace=function(t,e,r){var n=2*t;return this.uint16[n+0]=e,this.uint16[n+1]=r,t},e}(wa);qa.prototype.bytesPerElement=4,Dn(“StructArrayLayout2ui4”,qa);var Ha=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t){var e=this.length;return this.resize(e+1),this.emplace(e,t)},e.prototype.emplace=function(t,e){return this.uint16[1*t+0]=e,t},e}(wa);Ha.prototype.bytesPerElement=2,Dn(“StructArrayLayout1ui2”,Ha);var Ga=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e){var r=this.length;return this.resize(r+1),this.emplace(r,t,e)},e.prototype.emplace=function(t,e,r){var n=2*t;return this.float32[n+0]=e,this.float32[n+1]=r,t},e}(wa);Ga.prototype.bytesPerElement=8,Dn(“StructArrayLayout2f8”,Ga);var Ya=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},e.prototype.emplaceBack=function(t,e,r,n){var a=this.length;return this.resize(a+1),this.emplace(a,t,e,r,n)},e.prototype.emplace=function(t,e,r,n,a){var i=4*t;return this.float32[i+0]=e,this.float32[i+1]=r,this.float32[i+2]=n,this.float32[i+3]=a,t},e}(wa);Ya.prototype.bytesPerElement=16,Dn(“StructArrayLayout4f16”,Ya);var Wa=function(t){function e(){t.apply(this,arguments)}t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e;var r={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 r.anchorPointX.get=function(){return this._structArray.int16[this._pos2+0]},r.anchorPointY.get=function(){return this._structArray.int16[this._pos2+1]},r.x1.get=function(){return this._structArray.int16[this._pos2+2]},r.y1.get=function(){return this._structArray.int16[this._pos2+3]},r.x2.get=function(){return this._structArray.int16[this._pos2+4]},r.y2.get=function(){return this._structArray.int16[this._pos2+5]},r.featureIndex.get=function(){return this._structArray.uint32[this._pos4+3]},r.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+8]},r.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+9]},r.anchorPoint.get=function(){return new a(this.anchorPointX,this.anchorPointY)},Object.defineProperties(e.prototype,r),e}(_a);Wa.prototype.size=20;var Za=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.get=function(t){return new Wa(this,t)},e}(za);Dn(“CollisionBoxArray”,Za);var Xa=function(t){function e(){t.apply(this,arguments)}t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e;var r={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 r.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},r.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},r.glyphStartIndex.get=function(){return this._structArray.uint16[this._pos2+2]},r.numGlyphs.get=function(){return this._structArray.uint16[this._pos2+3]},r.vertexStartIndex.get=function(){return this._structArray.uint32[this._pos4+2]},r.lineStartIndex.get=function(){return this._structArray.uint32[this._pos4+3]},r.lineLength.get=function(){return this._structArray.uint32[this._pos4+4]},r.segment.get=function(){return this._structArray.uint16[this._pos2+10]},r.lowerSize.get=function(){return this._structArray.uint16[this._pos2+11]},r.upperSize.get=function(){return this._structArray.uint16[this._pos2+12]},r.lineOffsetX.get=function(){return this._structArray.float32[this._pos4+7]},r.lineOffsetY.get=function(){return this._structArray.float32[this._pos4+8]},r.writingMode.get=function(){return this._structArray.uint8[this._pos1+36]},r.placedOrientation.get=function(){return this._structArray.uint8[this._pos1+37]},r.placedOrientation.set=function(t){this._structArray.uint8[this._pos1+37]=t},r.hidden.get=function(){return this._structArray.uint8[this._pos1+38]},r.hidden.set=function(t){this._structArray.uint8[this._pos1+38]=t},r.crossTileID.get=function(){return this._structArray.uint32[this._pos4+10]},r.crossTileID.set=function(t){this._structArray.uint32[this._pos4+10]=t},r.associatedIconIndex.get=function(){return this._structArray.int16[this._pos2+22]},Object.defineProperties(e.prototype,r),e}(_a);Xa.prototype.size=48;var Ja=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.get=function(t){return new Xa(this,t)},e}(Ba);Dn(“PlacedSymbolArray”,Ja);var Ka=function(t){function e(){t.apply(this,arguments)}t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e;var r={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 r.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},r.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},r.rightJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+2]},r.centerJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+3]},r.leftJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+4]},r.verticalPlacedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+5]},r.placedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+6]},r.verticalPlacedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+7]},r.key.get=function(){return this._structArray.uint16[this._pos2+8]},r.textBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+9]},r.textBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+10]},r.verticalTextBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+11]},r.verticalTextBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+12]},r.iconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+13]},r.iconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+14]},r.verticalIconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+15]},r.verticalIconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+16]},r.featureIndex.get=function(){return this._structArray.uint16[this._pos2+17]},r.numHorizontalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+18]},r.numVerticalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+19]},r.numIconVertices.get=function(){return this._structArray.uint16[this._pos2+20]},r.numVerticalIconVertices.get=function(){return this._structArray.uint16[this._pos2+21]},r.useRuntimeCollisionCircles.get=function(){return this._structArray.uint16[this._pos2+22]},r.crossTileID.get=function(){return this._structArray.uint32[this._pos4+12]},r.crossTileID.set=function(t){this._structArray.uint32[this._pos4+12]=t},r.textBoxScale.get=function(){return this._structArray.float32[this._pos4+13]},r.textOffset0.get=function(){return this._structArray.float32[this._pos4+14]},r.textOffset1.get=function(){return this._structArray.float32[this._pos4+15]},r.collisionCircleDiameter.get=function(){return this._structArray.float32[this._pos4+16]},Object.defineProperties(e.prototype,r),e}(_a);Ka.prototype.size=68;var Qa=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.get=function(t){return new Ka(this,t)},e}(Na);Dn(“SymbolInstanceArray”,Qa);var $a=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getoffsetX=function(t){return this.float32[1*t+0]},e}(ja);Dn(“GlyphOffsetArray”,$a);var ti=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getx=function(t){return this.int16[3*t+0]},e.prototype.gety=function(t){return this.int16[3*t+1]},e.prototype.gettileUnitDistanceFromAnchor=function(t){return this.int16[3t+2]},e}(Va);Dn(“SymbolLineVertexArray”,ti);var ei=function(t){function e(){t.apply(this,arguments)}t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e;var r={featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0}};return r.featureIndex.get=function(){return this._structArray.uint32[this._pos4+0]},r.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+2]},r.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+3]},Object.defineProperties(e.prototype,r),e}(_a);ei.prototype.size=8;var ri=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.get=function(t){return new ei(this,t)},e}(Ua);Dn(“FeatureIndexArray”,ri);var ni=Ta([{name:“a_pos”,components:2,type:“Int16”}],4).members,ai=function(t){void 0===t&&(t=[]),this.segments=t};function ii(t,e){return 256(t=l(Math.floor(t),0,255))+l(Math.floor(e),0,255)}ai.prototype.prepareSegment=function(t,e,r,n){var a=this.segments[this.segments.length-1];return t>ai.MAX_VERTEX_ARRAYLENGTH&&(“Max vertices per segment is “+ai.MAX_VERTEX_ARRAY_LENGTH+”: bucket requested “+t),(!a||a.vertexLength+t>ai.MAX_VERTEX_ARRAY_LENGTH||a.sortKey!==n)&&(a={vertexOffset:e.length,primitiveOffset:r.length,vertexLength:0,primitiveLength:0},void 0!==n&&(a.sortKey=n),this.segments.push(a)),a},ai.prototype.get=function(){return this.segments},ai.prototype.destroy=function(){for(var t=0,e=this.segments;t>>16)*o&65535)<<16)&4294967295)<<15|l>>>17))*s+(((l>>>16)s&65535)<<16)&4294967295)<<13|a>>>19))+((5(a>>>16)&65535)<<16)&4294967295))+((58964+(i>>>16)&65535)<<16);switch(l=0,r){case 3:l^=(255&t.charCodeAt(c+2))<<16;case 2:l^=(255&t.charCodeAt(c+1))<<8;case 1:a^=l=(65535&(l=(l=(65535&(l^=255&t.charCodeAt(c)))*o+(((l>>>16)*o&65535)<<16)&4294967295)<<15|l>>>17))*s+(((l>>>16)s&65535)<<16)&4294967295}return a^=t.length,a=2246822507(65535&(a^=a>>>16))+((2246822507(a>>>16)&65535)<<16)&4294967295,a=3266489909(65535&(a^=a>>>13))+((3266489909(a>>>16)&65535)<<16)&4294967295,(a^=a>>>16)>>>0}})),li=e((function(t){t.exports=function(t,e){for(var r,n=t.length,a=e^n,i=0;n>=4;)r=1540483477(65535&(r=255&t.charCodeAt(i)|(255&t.charCodeAt(++i))<<8|(255&t.charCodeAt(++i))<<16|(255&t.charCodeAt(++i))<<24))+((1540483477*(r>>>16)&65535)<<16),a=1540483477*(65535&a)+((1540483477*(a>>>16)&65535)<<16)^(r=1540483477*(65535&(r^=r>>>24))+((1540483477(r>>>16)&65535)<<16)),n-=4,++i;switch(n){case 3:a^=(255&t.charCodeAt(i+2))<<16;case 2:a^=(255&t.charCodeAt(i+1))<<8;case 1:a=1540483477(65535&(a^=255&t.charCodeAt(i)))+((1540483477(a>>>16)&65535)<<16)}return a=1540483477(65535&(a^=a>>>13))+((1540483477*(a>>>16)&65535)<<16),(a^=a>>>15)>>>0}})),ci=si,ui=li;ci.murmur3=si,ci.murmur2=ui;var hi=function(){this.ids=[],this.positions=[],this.indexed=!1};hi.prototype.add=function(t,e,r,n){this.ids.push(pi(t)),this.positions.push(e,r,n)},hi.prototype.getPositions=function(t){for(var e=pi(t),r=0,n=this.ids.length-1;r>1;this.ids[a]>=e?n=a:r=a+1}for(var i=[];this.ids[r]===e;)i.push({index:this.positions[3*r],start:this.positions[3*r+1],end:this.positions[3*r+2]}),r++;return i},hi.serialize=function(t,e){var r=new Float64Array(t.ids),n=new Uint32Array(t.positions);return function t(e,r,n,a){for(;n>1],o=n-1,s=a+1;;){do{o++}while(e[o]i);if(o>=s)break;di(e,o,s),di(r,3*o,3*s),di(r,3*o+1,3*s+1),di(r,3*o+2,3*s+2)}s-nOi.max||o.yOi.max)&&(_(“Geometry exceeds allowed extent, reduce your vector tile buffer size”),o.x=l(o.x,Oi.min,Oi.max),o.y=l(o.y,Oi.min,Oi.max))}return r}function Ri(t,e,r,n,a){t.emplaceBack(2*e+(n+1)/2,2*r+(a+1)/2)}var Fi=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((function(t){return t.id})),this.index=t.index,this.hasPattern=!1,this.layoutVertexArray=new Aa,this.indexArray=new Fa,this.segments=new ai,this.programConfigurations=new Pi(ni,t.layers,t.zoom),this.stateDependentLayerIds=this.layers.filter((function(t){return t.isStateDependent()})).map((function(t){return t.id}))};function Bi(t,e){for(var r=0;r1){if(Ui(t,e))return!0;for(var n=0;n1?r:r.sub(e)._mult(a)._add(e))}function Yi(t,e){for(var r,n,a,i=!1,o=0;oe.y!=(a=r[l]).y>e.y&&e.x<(a.x-n.x)(e.y-n.y)/(a.y-n.y)+n.x&&(i=!i);return i}function Wi(t,e){for(var r=!1,n=0,a=t.length-1;ne.y!=o.y>e.y&&e.x<(o.x-i.x)(e.y-i.y)/(o.y-i.y)+i.x&&(r=!r)}return r}function Zi(t,e,r){var n=r[0],a=r[2];if(t.xa.x&&e.x>a.x||t.ya.y&&e.y>a.y)return!1;var i=w(t,e,r[0]);return i!==w(t,e,r[1])||i!==w(t,e,r[2])||i!==w(t,e,r[3])}function Xi(t,e,r){var n=e.paint.get(t).value;return”constant”===n.kind?n.value:r.programConfigurations.get(e.id).getMaxValue(t)}function Ji(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1])}function Ki(t,e,r,n,i){if(!e[0]&&!e[1])return t;var o=a.convert(e)._mult(i);“viewport”===r&&o._rotate(-n);for(var s=[],l=0;l=8192||u<0||u>=8192)){var h=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,t.sortKey),f=h.vertexLength;Ri(this.layoutVertexArray,c,u,-1,-1),Ri(this.layoutVertexArray,c,u,1,-1),Ri(this.layoutVertexArray,c,u,1,1),Ri(this.layoutVertexArray,c,u,-1,1),this.indexArray.emplaceBack(f,f+1,f+2),this.indexArray.emplaceBack(f,f+3,f+2),h.vertexLength+=4,h.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,r,{},n)},Dn(“CircleBucket”,Fi,{omit:[“layers”]});var Qi=new ya({“circle-sort-key”:new da(Mt.layout_circle[“circle-sort-key”])}),$i={paint:new ya({“circle-radius”:new da(Mt.paint_circle[“circle-radius”]),“circle-color”:new da(Mt.paint_circle[“circle-color”]),“circle-blur”:new da(Mt.paint_circle[“circle-blur”]),“circle-opacity”:new da(Mt.paint_circle[“circle-opacity”]),“circle-translate”:new pa(Mt.paint_circle[“circle-translate”]),“circle-translate-anchor”:new pa(Mt.paint_circle[“circle-translate-anchor”]),“circle-pitch-scale”:new pa(Mt.paint_circle[“circle-pitch-scale”]),“circle-pitch-alignment”:new pa(Mt.paint_circle[“circle-pitch-alignment”]),“circle-stroke-width”:new da(Mt.paint_circle[“circle-stroke-width”]),“circle-stroke-color”:new da(Mt.paint_circle[“circle-stroke-color”]),“circle-stroke-opacity”:new da(Mt.paintcircle[“circle-stroke-opacity”])}),layout:Qi},to=“undefined”!=typeof Float32Array?Float32Array:Array;function eo(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function ro(t,e,r){var n=e[0],a=e[1],i=e[2],o=e[3],s=e[4],l=e[5],c=e[6],u=e[7],h=e[8],f=e[9],p=e[10],d=e[11],g=e[12],m=e[13],v=e[14],y=e[15],x=r[0],b=r[1],=r[2],w=r[3];return t[0]=x*n+b*s+*h+w*g,t[1]=x*a+b*l+*f+w*m,t[2]=x*i+b*c+*p+w*v,t[3]=x*o+b*u+*d+w*y,t[4]=(x=r[4])*n+(b=r[5])*s+(=r[6])*h+(w=r[7])*g,t[5]=x*a+b*l+*f+w*m,t[6]=x*i+b*c+*p+w*v,t[7]=x*o+b*u+*d+w*y,t[8]=(x=r[8])*n+(b=r[9])*s+(=r[10])*h+(w=r[11])*g,t[9]=x*a+b*l+*f+w*m,t[10]=x*i+b*c+*p+w*v,t[11]=x*o+b*u+*d+w*y,t[12]=(x=r[12])*n+(b=r[13])*s+(=r[14])*h+(w=r[15])*g,t[13]=x*a+b*l+*f+w*m,t[14]=x*i+b*c+*p+w*v,t[15]=x*o+b*u+*d+w*y,t}Math.hypot||(Math.hypot=function(){for(var t=arguments,e=0,r=arguments.length;r–;)e+=t[r]*t[r];return Math.sqrt(e)});var no,ao=ro;function io(t,e,r){var n=e[0],a=e[1],i=e[2],o=e[3];return t[0]=r[0]*n+r[4]*a+r[8]*i+r[12]*o,t[1]=r[1]*n+r[5]*a+r[9]*i+r[13]*o,t[2]=r[2]*n+r[6]*a+r[10]*i+r[14]*o,t[3]=r[3]*n+r[7]*a+r[11]*i+r[15]*o,t}no=new to(3),to!=Float32Array&&(no[0]=0,no[1]=0,no[2]=0),function(){var t=new to(4);to!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0,t[3]=0)}();var oo=(function(){var t=new to(2);to!=Float32Array&&(t[0]=0,t[1]=0)}(),function(t){function e(e){t.call(this,e,$i)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.createBucket=function(t){return new Fi(t)},e.prototype.queryRadius=function(t){var e=t;return Xi(“circle-radius”,this,e)+Xi(“circle-stroke-width”,this,e)+Ji(this.paint.get(“circle-translate”))},e.prototype.queryIntersectsFeature=function(t,e,r,n,a,i,o,s){for(var l=Ki(t,this.paint.get(“circle-translate”),this.paint.get(“circle-translate-anchor”),i.angle,o),c=this.paint.get(“circle-radius”).evaluate(e,r)+this.paint.get(“circle-stroke-width”).evaluate(e,r),u=“map”===this.paint.get(“circle-pitch-alignment”),h=u?l:function(t,e){return t.map((function(t){return so(t,e)}))}(l,s),f=u?co:c,p=0,d=n;p<d.length;p+=1)for(var g=0,m=d[p];g<m.length;g+=1){var v=m[g],y=u?v:so(v,s),x=f,b=io([],[v.x,v.y,0,1],s);if(“viewport”===this.paint.get(“circle-pitch-scale”)&&“map”===this.paint.get(“circle-pitch-alignment”)?x=b[3]/i.cameraToCenterDistance:“map”===this.paint.get(“circle-pitch-scale”)&&“viewport”===this.paint.get(“circle-pitch-alignment”)&&(x*=i.cameraToCenterDistance/b[3]),Ni(h,y,x))return!0}return!1},e}(xa));function so(t,e){var r=io([],[t.x,t.y,0,1],e);return new a(r[0]/r[3],r[1]/r[3])}var lo=function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e}(Fi);function co(t,e,r,n){var a=e.width,i=e.height;if(n){if(n instanceof Uint8ClampedArray)n=new Uint8Array(n.buffer);else if(n.length!==a*i*r)throw new RangeError(“mismatched image size”)}else n=new Uint8Array(a*i*r);return t.width=a,t.height=i,t.data=n,t}function uo(t,e,r){var n=e.width,a=e.height;if(n!==t.width||a!==t.height){var i=co({},{width:n,height:a},r);ho(t,i,{x:0,y:0},{x:0,y:0},{width:Math.min(t.width,n),height:Math.min(t.height,a)},r),t.width=n,t.height=a,t.data=i.data}}function ho(t,e,r,n,a,i){if(0===a.width||0===a.height)return e;if(a.width>t.width||a.height>t.height||r.x>t.width-a.width||r.y>t.height-a.height)throw new RangeError(“out of range source coordinates for image copy”);if(a.width>e.width||a.height>e.height||n.x>e.width-a.width||n.y>e.height-a.height)throw new RangeError(“out of range destination coordinates for image copy”);for(var o=t.data,s=e.data,l=0;l80r){n=i=t[0],a=o=t[1];for(var d=r;di&&(i=s),l>o&&(o=l);c=0!==(c=Math.max(i-n,o-a))?1/c:0}return Mo(f,p,r,n,a,c),p}function ko(t,e,r,n,a){var i,o;if(a===Zo(t,e,r,n)>0)for(i=e;i=e;i-=n)o=Go(i,t[i],t[i+1],o);return o&&No(o,o.next)&&(Yo(o),o=o.next),o}function Ao(t,e){if(!t)return t;e||(e=t);var r,n=t;do{if(r=!1,n.steiner||!No(n,n.next)&&0!==Bo(n.prev,n,n.next))n=n.next;else{if(Yo(n),(n=e=n.prev)===n.next)break;r=!0}}while(r||n!==e);return e}function Mo(t,e,r,n,a,i,o){if(t){!o&&i&&function(t,e,r,n){var a=t;do{null===a.z&&(a.z=Oo(a.x,a.y,e,r,n)),a.prevZ=a.prev,a.nextZ=a.next,a=a.next}while(a!==t);a.prevZ.nextZ=null,a.prevZ=null,function(t){var e,r,n,a,i,o,s,l,c=1;do{for(r=t,t=null,i=null,o=0;r;){for(o++,n=r,s=0,e=0;e0||l>0&&n;)0!==s&&(0===l||!n||r.z<=n.z)?(a=r,r=r.nextZ,s–):(a=n,n=n.nextZ,l–),i?i.nextZ=a:t=a,a.prevZ=i,i=a;r=n}i.nextZ=null,c=2}while(o>1)}(a)}(t,n,a,i);for(var s,l,c=t;t.prev!==t.next;)if(s=t.prev,l=t.next,i?Eo(t,n,a,i):So(t))e.push(s.i/r),e.push(t.i/r),e.push(l.i/r),Yo(t),t=l.next,c=l.next;else if((t=l)===c){o?1===o?Mo(t=Co(Ao(t),e,r),e,r,n,a,i,2):2===o&&Lo(t,e,r,n,a,i):Mo(Ao(t),e,r,n,a,i,1);break}}}function So(t){var e=t.prev,r=t,n=t.next;if(Bo(e,r,n)>=0)return!1;for(var a=t.next.next;a!==t.prev;){if(Ro(e.x,e.y,r.x,r.y,n.x,n.y,a.x,a.y)&&Bo(a.prev,a,a.next)>=0)return!1;a=a.next}return!0}function Eo(t,e,r,n){var a=t.prev,i=t,o=t.next;if(Bo(a,i,o)>=0)return!1;for(var s=a.x>i.x?a.x>o.x?a.x:o.x:i.x>o.x?i.x:o.x,l=a.y>i.y?a.y>o.y?a.y:o.y:i.y>o.y?i.y:o.y,c=Oo(a.x=c&&f&&f.z<=u;){if(h!==t.prev&&h!==t.next&&Ro(a.x,a.y,i.x,i.y,o.x,o.y,h.x,h.y)&&Bo(h.prev,h,h.next)>=0)return!1;if(h=h.prevZ,f!==t.prev&&f!==t.next&&Ro(a.x,a.y,i.x,i.y,o.x,o.y,f.x,f.y)&&Bo(f.prev,f,f.next)>=0)return!1;f=f.nextZ}for(;h&&h.z>=c;){if(h!==t.prev&&h!==t.next&&Ro(a.x,a.y,i.x,i.y,o.x,o.y,h.x,h.y)&&Bo(h.prev,h,h.next)>=0)return!1;h=h.prevZ}for(;f&&f.z<=u;){if(f!==t.prev&&f!==t.next&&Ro(a.x,a.y,i.x,i.y,o.x,o.y,f.x,f.y)&&Bo(f.prev,f,f.next)>=0)return!1;f=f.nextZ}return!0}function Co(t,e,r){var n=t;do{var a=n.prev,i=n.next.next;!No(a,i)&&jo(a,n,n.next,i)&&qo(a,i)&&qo(i,a)&&(e.push(a.i/r),e.push(n.i/r),e.push(i.i/r),Yo(n),Yo(n.next),n=t=i),n=n.next}while(n!==t);return Ao(n)}function Lo(t,e,r,n,a,i){var o=t;do{for(var s=o.next.next;s!==o.prev;){if(o.i!==s.i&&Fo(o,s)){var l=Ho(o,s);return o=Ao(o,o.next),l=Ao(l,l.next),Mo(o,e,r,n,a,i),void Mo(l,e,r,n,a,i)}s=s.next}o=o.next}while(o!==t)}function Po(t,e){return t.x-e.x}function Io(t,e){if(e=function(t,e){var r,n=e,a=t.x,i=t.y,o=-10;do{if(i<=n.y&&i>=n.next.y&&n.next.y!==n.y){var s=n.x+(i-n.y)(n.next.x-n.x)/(n.next.y-n.y);if(s<=a&&s>o){if(o=s,s===a){if(i===n.y)return n;if(i===n.next.y)return n.next}r=n.x=n.x&&n.x>=u&&a!==n.x&&Ro(ir.x||n.x===r.x&&zo(r,n)))&&(r=n,f=l)),n=n.next}while(n!==c);return r}(t,e)){var r=Ho(e,t);Ao(e,e.next),Ao(r,r.next)}}function zo(t,e){return Bo(t.prev,t,e.prev)<0&&Bo(e.next,t,t.next)<0}function Oo(t,e,r,n,a){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767(t-r)a)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767(e-n)a)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function Do(t){var e=t,r=t;do{(e.x<r.x||e.x===r.x&&e.y<r.y)&&(r=e),e=e.next}while(e!==t);return r}function Ro(t,e,r,n,a,i,o,s){return(a-o)(e-s)-(t-o)(i-s)>=0&&(t-o)(n-s)-(r-o)(e-s)>=0&&(r-o)(i-s)-(a-o)(n-s)>=0}function Fo(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!function(t,e){var r=t;do{if(r.i!==t.i&&r.next.i!==t.i&&r.i!==e.i&&r.next.i!==e.i&&jo(r,r.next,t,e))return!0;r=r.next}while(r!==t);return!1}(t,e)&&(qo(t,e)&&qo(e,t)&&function(t,e){var r=t,n=!1,a=(t.x+e.x)/2,i=(t.y+e.y)/2;do{r.y>i!=r.next.y>i&&r.next.y!==r.y&&a<(r.next.x-r.x)(i-r.y)/(r.next.y-r.y)+r.x&&(n=!n),r=r.next}while(r!==t);return n}(t,e)&&(Bo(t.prev,t,e.prev)||Bo(t,e.prev,e))||No(t,e)&&Bo(t.prev,t,t.next)>0&&Bo(e.prev,e,e.next)>0)}function Bo(t,e,r){return(e.y-t.y)(r.x-e.x)-(e.x-t.x)(r.y-e.y)}function No(t,e){return t.x===e.x&&t.y===e.y}function jo(t,e,r,n){var a=Uo(Bo(t,e,r)),i=Uo(Bo(t,e,n)),o=Uo(Bo(r,n,t)),s=Uo(Bo(r,n,e));return a!==i&&o!==s||!(0!==a||!Vo(t,r,e))||!(0!==i||!Vo(t,n,e))||!(0!==o||!Vo(r,t,n))||!(0!==s||!Vo(r,e,n))}function Vo(t,e,r){return e.x<=Math.max(t.x,r.x)&&e.x>=Math.min(t.x,r.x)&&e.y<=Math.max(t.y,r.y)&&e.y>=Math.min(t.y,r.y)}function Uo(t){return t>0?1:t<0?-1:0}function qo(t,e){return Bo(t.prev,t,t.next)<0?Bo(t,e,t.next)>=0&&Bo(t,t.prev,e)>=0:Bo(t,e,t.prev)<0||Bo(t,t.next,e)<0}function Ho(t,e){var r=new Wo(t.i,t.x,t.y),n=new Wo(e.i,e.x,e.y),a=t.next,i=e.prev;return t.next=e,e.prev=t,r.next=a,a.prev=r,n.next=r,r.prev=n,i.next=n,n.prev=i,n}function Go(t,e,r,n){var a=new Wo(t,e,r);return n?(a.next=n.next,a.prev=n,n.next.prev=a,n.next=a):(a.prev=a,a.next=a),a}function Yo(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function Wo(t,e,r){this.i=t,this.x=e,this.y=r,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function Zo(t,e,r,n){for(var a=0,i=e,o=r-n;in;){if(a-n>600){var o=a-n+1,s=r-n+1,l=Math.log(o),c=.5*Math.exp(2*l/3),u=.5*Math.sqrt(lc(o-c)/o)*(s-o/2<0?-1:1);t(e,r,Math.max(n,Math.floor(r-s*c/o+u)),Math.min(a,Math.floor(r+(o-s)*c/o+u)),i)}var h=e[r],f=n,p=a;for(Jo(e,n,r),i(e[a],h)>0&&Jo(e,n,a);f0;)p–}0===i(e[n],h)?Jo(e,n,p):Jo(e,++p,a),p<=r&&(n=p+1),r<=p&&(a=p-1)}}(t,e,r||0,n||t.length-1,a||Ko)}function Jo(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function Ko(t,e){return te?1:0}function Qo(t,e){var r=t.length;if(r<=1)return[t];for(var n,a,i=[],o=0;o1)for(var l=0;l0&&r.holes.push(n+=t[a-1].length)}return r},_o.default=wo;var rs=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((function(t){return t.id})),this.index=t.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new Aa,this.indexArray=new Fa,this.indexArray2=new qa,this.programConfigurations=new Pi(bo,t.layers,t.zoom),this.segments=new ai,this.segments2=new ai,this.stateDependentLayerIds=this.layers.filter((function(t){return t.isStateDependent()})).map((function(t){return t.id}))};rs.prototype.populate=function(t,e,r){this.hasPattern=ts(“fill”,this.layers,e);for(var n=this.layers[0].layout.get(“fill-sort-key”),a=[],i=0,o=t;i>3}if(i–,1===n||2===n)o+=t.readSVarint(),s+=t.readSVarint(),1===n&&(e&&l.push(e),e=[]),e.push(new a(o,s));else{if(7!==n)throw new Error(“unknown command “+n);e&&e.push(e[0].clone())}}return e&&l.push(e),l},ls.prototype.bbox=function(){var t=this._pbf;t.pos=this._geometry;for(var e=t.readVarint()+t.pos,r=1,n=0,a=0,i=0,o=10,s=-10,l=10,c=-10;t.pos>3}if(n–,1===r||2===r)(a+=t.readSVarint())s&&(s=a),(i+=t.readSVarint())c&&(c=i);else if(7!==r)throw new Error(“unknown command “+r)}return[o,l,s,c]},ls.prototype.toGeoJSON=function(t,e,r){var n,a,i=this.extent*Math.pow(2,r),o=this.extent*t,s=this.extente,l=this.loadGeometry(),c=ls.types[this.type];function u(t){for(var e=0;e<t.length;e++){var r=t[e];t[e]=[360(r.x+o)/i-180,360/Math.PIMath.atan(Math.exp((180-360(r.y+s)/i)*Math.PI/180))-90]}}switch(this.type){case 1:var h=[];for(n=0;n>3;e=1===n?t.readString():2===n?t.readFloat():3===n?t.readDouble():4===n?t.readVarint64():5===n?t.readVarint():6===n?t.readSVarint():7===n?t.readBoolean():null}return e}®)}function ds(t,e,r){if(3===t){var n=new hs(r,r.readVarint()+r.pos);n.length&&(e[n.name]=n)}}fs.prototype.feature=function(t){if(t<0||t>=this._features.length)throw new Error(“feature index out of bounds”);this._pbf.pos=this._features[t];var e=this._pbf.readVarint()+this._pbf.pos;return new ss(this._pbf,e,this.extent,this._keys,this._values)};var gs={VectorTile:function(t,e){this.layers=t.readFields(ds,{},e)},VectorTileFeature:ss,VectorTileLayer:hs},ms=gs.VectorTileFeature.types,vs=Math.pow(2,13);function ys(t,e,r,n,a,i,o,s){t.emplaceBack(e,r,2*Math.floor(n*vs)+o,a*vs*2,i*vs*2,Math.round(s))}var xs=function(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((function(t){return t.id})),this.index=t.index,this.hasPattern=!1,this.layoutVertexArray=new Sa,this.indexArray=new Fa,this.programConfigurations=new Pi(os,t.layers,t.zoom),this.segments=new ai,this.stateDependentLayerIds=this.layers.filter((function(t){return t.isStateDependent()})).map((function(t){return t.id}))};function bs(t,e){return t.x===e.x&&(t.x<0||t.x>8192)||t.y===e.y&&(t.y<0||t.y>8192)}xs.prototype.populate=function(t,e,r){this.features=[],this.hasPattern=ts(“fill-extrusion”,this.layers,e);for(var n=0,a=t;n8192}))||I.every((function(t){return t.y<0}))||I.every((function(t){return t.y>8192}))))for(var g=0,m=0;m=1){var y=d[m-1];if(!bs(v,y)){h.vertexLength+4>ai.MAX_VERTEX_ARRAY_LENGTH&&(h=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));var x=v.sub(y)._perp()._unit(),b=y.dist(v);g+b>32768&&(g=0),ys(this.layoutVertexArray,v.x,v.y,x.x,x.y,0,0,g),ys(this.layoutVertexArray,v.x,v.y,x.x,x.y,0,1,g),ys(this.layoutVertexArray,y.x,y.y,x.x,x.y,0,0,g+=b),ys(this.layoutVertexArray,y.x,y.y,x.x,x.y,0,1,g);var =h.vertexLength;this.indexArray.emplaceBack(,+2,+1),this.indexArray.emplaceBack(+1,+2,_+3),h.vertexLength+=4,h.primitiveLength+=2}}}}if(h.vertexLength+l>ai.MAX_VERTEX_ARRAY_LENGTH&&(h=this.segments.prepareSegment(l,this.layoutVertexArray,this.indexArray)),“Polygon”===ms[t.type]){for(var w=[],T=[],k=h.vertexLength,A=0,M=s;A=2&&t[l-1].equals(t[l-2]);)l–;for(var c=0;c0;if(T&&v>c){var A=u.dist(p);if(A>2*h){var M=u.sub(u.sub(p)._mult(h/A).round());this.updateDistance(p,M),this.addCurrentVertex(M,g,0,0,f),p=M}}var S=p&&d,E=S?r:s?“butt”:n;if(S&&“round”===E&&(a&&(E=“bevel”),“bevel”===E&&(>2&&(E=“flipbevel”),100)y=m.mult(-1);else{var C=_g.add(m).mag()/g.sub(m).mag();y._perp()._mult(C(k?-1:1))}this.addCurrentVertex(u,y,0,0,f),this.addCurrentVertex(u,y.mult(-1),0,0,f)}else if(“bevel”===E||“fakeround”===E){var L=-Math.sqrt(*-1),P=k?L:0,I=k?0:L;if(p&&this.addCurrentVertex(u,g,P,I,f),“fakeround”===E)for(var z=Math.round(180*w/Math.PI/20),O=1;O2*h){var j=u.add(d.sub(u)._mult(h/N)._round());this.updateDistance(u,j),this.addCurrentVertex(j,m,0,0,f),u=j}}}}},Cs.prototype.addCurrentVertex=function(t,e,r,n,a,i){void 0===i&&(i=!1);var o=e.y*n-e.x,s=-e.y-e.x*n;this.addHalfVertex(t,e.x+e.y*r,e.y-e.x*r,i,!1,r,a),this.addHalfVertex(t,o,s,i,!0,-n,a),this.distance>Es/2&&0===this.totalDistance&&(this.distance=0,this.addCurrentVertex(t,e,r,n,a,i))},Cs.prototype.addHalfVertex=function(t,e,r,n,a,i,o){var s=.5*this.scaledDistance;this.layoutVertexArray.emplaceBack((t.x<<1)+(n?1:0),(t.y<<1)+(a?1:0),Math.round(63*e)+128,Math.round(63*r)+128,1+(0===i?0:i<0?-1:1)|(63&s)<<2,s>>6);var l=o.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,l),o.primitiveLength++),a?this.e2=l:this.e1=l},Cs.prototype.updateScaledDistance=function(){this.scaledDistance=this.totalDistance>0?(this.clipStart+(this.clipEnd-this.clipStart)this.distance/this.totalDistance)(Es-1):this.distance},Cs.prototype.updateDistance=function(t,e){this.distance+=t.dist(e),this.updateScaledDistance()},Dn(“LineBucket”,Cs,{omit:[“layers”,“patternFeatures”]});var Ls=new ya({“line-cap”:new pa(Mt.layout_line[“line-cap”]),“line-join”:new da(Mt.layout_line[“line-join”]),“line-miter-limit”:new pa(Mt.layout_line[“line-miter-limit”]),“line-round-limit”:new pa(Mt.layout_line[“line-round-limit”]),“line-sort-key”:new da(Mt.layout_line[“line-sort-key”])}),Ps={paint:new ya({“line-opacity”:new da(Mt.paint_line[“line-opacity”]),“line-color”:new da(Mt.paint_line[“line-color”]),“line-translate”:new pa(Mt.paint_line[“line-translate”]),“line-translate-anchor”:new pa(Mt.paint_line[“line-translate-anchor”]),“line-width”:new da(Mt.paint_line[“line-width”]),“line-gap-width”:new da(Mt.paint_line[“line-gap-width”]),“line-offset”:new da(Mt.paint_line[“line-offset”]),“line-blur”:new da(Mt.paint_line[“line-blur”]),“line-dasharray”:new ma(Mt.paint_line[“line-dasharray”]),“line-pattern”:new ga(Mt.paint_line[“line-pattern”]),“line-gradient”:new va(Mt.paint_line[“line-gradient”])}),layout:Ls},Is=new(function(t){function e(){t.apply(this,arguments)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.possiblyEvaluate=function(e,r){return r=new aa(Math.floor(r.zoom),{now:r.now,fadeDuration:r.fadeDuration,zoomHistory:r.zoomHistory,transition:r.transition}),t.prototype.possiblyEvaluate.call(this,e,r)},e.prototype.evaluate=function(e,r,n,a){return r=u({},r,{zoom:Math.floor(r.zoom)}),t.prototype.evaluate.call(this,e,r,n,a)},e}(da))(Ps.paint.properties[“line-width”].specification);Is.useIntegerZoom=!0;var zs=function(t){function e(e){t.call(this,e,Ps)}return t&&(e.proto=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._handleSpecialPaintPropertyUpdate=function(t){“line-gradient”===t&&this._updateGradient()},e.prototype._updateGradient=function(){this.gradient=mo(this._transitionablePaint._values[“line-gradient”].value.expression,“lineProgress”),this.gradientTexture=null},e.prototype.recalculate=function(e,r){t.prototype.recalculate.call(this,e,r),this.paint._values[“line-floorwidth”]=Is.possiblyEvaluate(this._transitioningPaint._values[“line-width”].value,e)},e.prototype.createBucket=function(t){return new Cs(t)},e.prototype.queryRadius=function(t){var e=t,r=Os(Xi(“line-width”,this,e),Xi(“line-gap-width”,this,e)),n=Xi(“line-offset”,this,e);return r/2+Math.abs(n)+Ji(this.paint.get(“line-translate”))},e.prototype.queryIntersectsFeature=function(t,e,r,n,i,o,s){var l=Ki(t,this.paint.get(“line-translate”),this.paint.get(“line-translate-anchor”),o.angle,s),c=s/2*Os(this.paint.get(“line-width”).evaluate(e,r),this.paint.get(“line-gap-width”).evaluate(e,r)),u=this.paint.get(“line-offset”).evaluate(e,r);return u&&(n=function(t,e){for(var r=[],n=new a(0,0),i=0;i=3)for(var i=0;i0?e+2t:t}var Ds=Ta([{name:“a_pos_offset”,components:4,type:“Int16”},{name:“a_data”,components:4,type:“Uint16”},{name:“a_pixeloffset”,components:4,type:“Int16”}],4),Rs=Ta([{name:“a_projected_pos”,components:3,type:“Float32”}],4),Fs=(Ta([{name:“a_fade_opacity”,components:1,type:“Uint32”}],4),Ta([{name:“a_placed”,components:2,type:“Uint8”},{name:“a_shift”,components:2,type:“Float32”}])),Bs=(Ta([{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”}]),Ta([{name:“a_pos”,components:2,type:“Int16”},{name:“a_anchor_pos”,components:2,type:“Int16”},{name:“a_extrude”,components:2,type:“Int16”}],4)),Ns=Ta([{name:“a_pos”,components:2,type:“Float32”},{name:“a_radius”,components:1,type:“Float32”},{name:“a_flags”,components:2,type:“Int16”}],4);function js(t,e,r){return t.sections.forEach((function(t){t.text=function(t,e,r){var n=e.layout.get(“text-transform”).evaluate(r,{});return”uppercase”===n?t=t.toLocaleUpperCase():“lowercase”===n&&(t=t.toLocaleLowerCase()),na.applyArabicShaping&&(t=na.applyArabicShaping(t)),t}(t.text,e,r)})),t}Ta([{name:“triangle”,components:3,type:“Uint16”}]),Ta([{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”}]),Ta([{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”,components:2,name:“textOffset”},{type:“Float32”,name:“collisionCircleDiameter”}]),Ta([{type:“Float32”,name:“offsetX”}]),Ta([{type:“Int16”,name:“x”},{type:“Int16”,name:“y”},{type:“Int16”,name:“tileUnitDistanceFromAnchor”}]);var Vs={“!”:”\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"},Us=function(t,e,r,n,a){var i,o,s=8*a-n-1,l=(1<<s)-1,c=l>>1,u=-7,h=r?a-1:0,f=r?-1:1,p=t[e+h];for(h+=f,i=p&(1<<-u)-1,p>>=-u,u+=s;u>0;i=256*i+t[e+h],h+=f,u-=8);for(o=i&(1<<-u)-1,i>>=-u,u+=n;u>0;o=256*o+t[e+h],h+=f,u-=8);if(0===i)i=1-c;else{if(i===l)return o?NaN:1/0*(p?-1:1);o+=Math.pow(2,n),i-=c}return(p?-1:1)*o*Math.pow(2,i-n)},qs=function(t,e,r,n,a,i){var o,s,l,c=8*i-a-1,u=(1<<c)-1,h=u>>1,f=23===a?Math.pow(2,-24)-Math.pow(2,-77):0,p=n?0:i-1,d=n?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,o=u):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),(e+=o+h>=1?f/l:f*Math.pow(2,1-h))*l>=2&&(o++,l/=2),o+h>=u?(s=0,o=u):o+h>=1?(s=(e*l-1)*Math.pow(2,a),o+=h):(s=e*Math.pow(2,h-1)*Math.pow(2,a),o=0));a>=8;t[r+p]=255&s,p+=d,s/=256,a-=8);for(o=o<<a|s,c+=a;c>0;t[r+p]=255&o,p+=d,o/=256,c-=8);t[r+p-d]|=128*g},Hs=Gs;function Gs(t){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(t)?t:new Uint8Array(t||0),this.pos=0,this.type=0,this.length=this.buf.length}Gs.Varint=0,Gs.Fixed64=1,Gs.Bytes=2,Gs.Fixed32=5;var Ys="undefined"==typeof TextDecoder?null:new TextDecoder("utf8");function Ws(t){return t.type===Gs.Bytes?t.readVarint()+t.pos:t.pos+1}function Zs(t,e,r){return r?4294967296*e+(t>>>0):4294967296*(e>>>0)+(t>>>0)}function Xs(t,e,r){var n=e<=16383?1:e<=2097151?2:e<=268435455?3:Math.floor(Math.log(e)/(7*Math.LN2));r.realloc(n);for(var a=r.pos-1;a>=t;a--)r.buf[a+n]=r.buf[a]}function Js(t,e){for(var r=0;r<t.length;r++)e.writeVarint(t[r])}function Ks(t,e){for(var r=0;r<t.length;r++)e.writeSVarint(t[r])}function Qs(t,e){for(var r=0;r<t.length;r++)e.writeFloat(t[r])}function $s(t,e){for(var r=0;r<t.length;r++)e.writeDouble(t[r])}function tl(t,e){for(var r=0;r<t.length;r++)e.writeBoolean(t[r])}function el(t,e){for(var r=0;r<t.length;r++)e.writeFixed32(t[r])}function rl(t,e){for(var r=0;r<t.length;r++)e.writeSFixed32(t[r])}function nl(t,e){for(var r=0;r<t.length;r++)e.writeFixed64(t[r])}function al(t,e){for(var r=0;r<t.length;r++)e.writeSFixed64(t[r])}function il(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16)+16777216*t[e+3]}function ol(t,e,r){t[r]=e,t[r+1]=e>>>8,t[r+2]=e>>>16,t[r+3]=e>>>24}function sl(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16)+(t[e+3]<<24)}function ll(t,e,r){1===t&&r.readMessage(cl,e)}function cl(t,e,r){if(3===t){var n=r.readMessage(ul,{}),a=n.width,i=n.height,o=n.left,s=n.top,l=n.advance;e.push({id:n.id,bitmap:new fo({width:a+6,height:i+6},n.bitmap),metrics:{width:a,height:i,left:o,top:s,advance:l}})}}function ul(t,e,r){1===t?e.id=r.readVarint():2===t?e.bitmap=r.readBytes():3===t?e.width=r.readVarint():4===t?e.height=r.readVarint():5===t?e.left=r.readSVarint():6===t?e.top=r.readSVarint():7===t&&(e.advance=r.readVarint())}function hl(t){for(var e=0,r=0,n=0,a=t;n<a.length;n+=1){var i=a[n];e+=i.w*i.h,r=Math.max(r,i.w)}t.sort((function(t,e){return e.h-t.h}));for(var o=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(e/.95)),r),h:1/0}],s=0,l=0,c=0,u=t;c<u.length;c+=1)for(var h=u[c],f=o.length-1;f>=0;f--){var p=o[f];if(!(h.w>p.w||h.h>p.h)){if(h.x=p.x,h.y=p.y,l=Math.max(l,h.y+h.h),s=Math.max(s,h.x+h.w),h.w===p.w&&h.h===p.h){var d=o.pop();f<o.length&&(o[f]=d)}else h.h===p.h?(p.x+=h.w,p.w-=h.w):h.w===p.w?(p.y+=h.h,p.h-=h.h):(o.push({x:p.x+h.w,y:p.y,w:p.w-h.w,h:h.h}),p.y+=h.h,p.h-=h.h);break}}return{w:s,h:l,fill:e/(s*l)||0}}Gs.prototype={destroy:function(){this.buf=null},readFields:function(t,e,r){for(r=r||this.length;this.pos<r;){var n=this.readVarint(),a=n>>3,i=this.pos;this.type=7&n,t(a,e,this),this.pos===i&&this.skip(n)}return e},readMessage:function(t,e){return this.readFields(t,e,this.readVarint()+this.pos)},readFixed32:function(){var t=il(this.buf,this.pos);return this.pos+=4,t},readSFixed32:function(){var t=sl(this.buf,this.pos);return this.pos+=4,t},readFixed64:function(){var t=il(this.buf,this.pos)+4294967296*il(this.buf,this.pos+4);return this.pos+=8,t},readSFixed64:function(){var t=il(this.buf,this.pos)+4294967296*sl(this.buf,this.pos+4);return this.pos+=8,t},readFloat:function(){var t=Us(this.buf,this.pos,!0,23,4);return this.pos+=4,t},readDouble:function(){var t=Us(this.buf,this.pos,!0,52,8);return this.pos+=8,t},readVarint:function(t){var e,r,n=this.buf;return e=127&(r=n[this.pos++]),r<128?e:(e|=(127&(r=n[this.pos++]))<<7,r<128?e:(e|=(127&(r=n[this.pos++]))<<14,r<128?e:(e|=(127&(r=n[this.pos++]))<<21,r<128?e:function(t,e,r){var n,a,i=r.buf;if(n=(112&(a=i[r.pos++]))>>4,a<128)return Zs(t,n,e);if(n|=(127&(a=i[r.pos++]))<<3,a<128)return Zs(t,n,e);if(n|=(127&(a=i[r.pos++]))<<10,a<128)return Zs(t,n,e);if(n|=(127&(a=i[r.pos++]))<<17,a<128)return Zs(t,n,e);if(n|=(127&(a=i[r.pos++]))<<24,a<128)return Zs(t,n,e);if(n|=(1&(a=i[r.pos++]))<<31,a<128)return Zs(t,n,e);throw new Error("Expected varint not more than 10 bytes")}(e|=(15&(r=n[this.pos]))<<28,t,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var t=this.readVarint();return t%2==1?(t+1)/-2:t/2},readBoolean:function(){return Boolean(this.readVarint())},readString:function(){var t=this.readVarint()+this.pos,e=this.pos;return this.pos=t,t-e>=12&&Ys?function(t,e,r){return Ys.decode(t.subarray(e,r))}(this.buf,e,t):function(t,e,r){for(var n="",a=e;a<r;){var i,o,s,l=t[a],c=null,u=l>239?4:l>223?3:l>191?2:1;if(a+u>r)break;1===u?l<128&&(c=l):2===u?128==(192&(i=t[a+1]))&&(c=(31&l)<<6|63&i)<=127&&(c=null):3===u?(o=t[a+2],128==(192&(i=t[a+1]))&&128==(192&o)&&((c=(15&l)<<12|(63&i)<<6|63&o)<=2047||c>=55296&&c<=57343)&&(c=null)):4===u&&(o=t[a+2],s=t[a+3],128==(192&(i=t[a+1]))&&128==(192&o)&&128==(192&s)&&((c=(15&l)<<18|(63&i)<<12|(63&o)<<6|63&s)<=65535||c>=1114112)&&(c=null)),null===c?(c=65533,u=1):c>65535&&(c-=65536,n+=String.fromCharCode(c>>>10&1023|55296),c=56320|1023&c),n+=String.fromCharCode(c),a+=u}return n}(this.buf,e,t)},readBytes:function(){var t=this.readVarint()+this.pos,e=this.buf.subarray(this.pos,t);return this.pos=t,e},readPackedVarint:function(t,e){if(this.type!==Gs.Bytes)return t.push(this.readVarint(e));var r=Ws(this);for(t=t||[];this.pos<r;)t.push(this.readVarint(e));return t},readPackedSVarint:function(t){if(this.type!==Gs.Bytes)return t.push(this.readSVarint());var e=Ws(this);for(t=t||[];this.pos<e;)t.push(this.readSVarint());return t},readPackedBoolean:function(t){if(this.type!==Gs.Bytes)return t.push(this.readBoolean());var e=Ws(this);for(t=t||[];this.pos<e;)t.push(this.readBoolean());return t},readPackedFloat:function(t){if(this.type!==Gs.Bytes)return t.push(this.readFloat());var e=Ws(this);for(t=t||[];this.pos<e;)t.push(this.readFloat());return t},readPackedDouble:function(t){if(this.type!==Gs.Bytes)return t.push(this.readDouble());var e=Ws(this);for(t=t||[];this.pos<e;)t.push(this.readDouble());return t},readPackedFixed32:function(t){if(this.type!==Gs.Bytes)return t.push(this.readFixed32());var e=Ws(this);for(t=t||[];this.pos<e;)t.push(this.readFixed32());return t},readPackedSFixed32:function(t){if(this.type!==Gs.Bytes)return t.push(this.readSFixed32());var e=Ws(this);for(t=t||[];this.pos<e;)t.push(this.readSFixed32());return t},readPackedFixed64:function(t){if(this.type!==Gs.Bytes)return t.push(this.readFixed64());var e=Ws(this);for(t=t||[];this.pos<e;)t.push(this.readFixed64());return t},readPackedSFixed64:function(t){if(this.type!==Gs.Bytes)return t.push(this.readSFixed64());var e=Ws(this);for(t=t||[];this.pos<e;)t.push(this.readSFixed64());return t},skip:function(t){var e=7&t;if(e===Gs.Varint)for(;this.buf[this.pos++]>127;);else if(e===Gs.Bytes)this.pos=this.readVarint()+this.pos;else if(e===Gs.Fixed32)this.pos+=4;else{if(e!==Gs.Fixed64)throw new Error("Unimplemented type: "+e);this.pos+=8}},writeTag:function(t,e){this.writeVarint(t<<3|e)},realloc:function(t){for(var e=this.length||16;e<this.pos+t;)e*=2;if(e!==this.length){var r=new Uint8Array(e);r.set(this.buf),this.buf=r,this.length=e}},finish:function(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length)},writeFixed32:function(t){this.realloc(4),ol(this.buf,t,this.pos),this.pos+=4},writeSFixed32:function(t){this.realloc(4),ol(this.buf,t,this.pos),this.pos+=4},writeFixed64:function(t){this.realloc(8),ol(this.buf,-1&t,this.pos),ol(this.buf,Math.floor(t*(1/4294967296)),this.pos+4),this.pos+=8},writeSFixed64:function(t){this.realloc(8),ol(this.buf,-1&t,this.pos),ol(this.buf,Math.floor(t*(1/4294967296)),this.pos+4),this.pos+=8},writeVarint:function(t){(t=+t||0)>268435455||t<0?function(t,e){var r,n;if(t>=0?(r=t%4294967296|0,n=t/4294967296|0):(n=~(-t/4294967296),4294967295^(r=~(-t%4294967296))?r=r+1|0:(r=0,n=n+1|0)),t>=0x10000000000000000||t<-0x10000000000000000)throw new Error("Given varint doesn't fit into 10 bytes");e.realloc(10),function(t,e,r){r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,r.buf[r.pos]=127&(t>>>=7)}(r,0,e),function(t,e){var r=(7&t)<<4;e.buf[e.pos++]|=r|((t>>>=3)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t)))))}(n,e)}(t,this):(this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=t>>>7&127))))},writeSVarint:function(t){this.writeVarint(t<0?2*-t-1:2*t)},writeBoolean:function(t){this.writeVarint(Boolean(t))},writeString:function(t){t=String(t),this.realloc(4*t.length),this.pos++;var e=this.pos;this.pos=function(t,e,r){for(var n,a,i=0;i<e.length;i++){if((n=e.charCodeAt(i))>55295&&n<57344){if(!a){n>56319||i+1===e.length?(t[r++]=239,t[r++]=191,t[r++]=189):a=n;continue}if(n<56320){t[r++]=239,t[r++]=191,t[r++]=189,a=n;continue}n=a-55296<<10|n-56320|65536,a=null}else a&&(t[r++]=239,t[r++]=191,t[r++]=189,a=null);n<128?t[r++]=n:(n<2048?t[r++]=n>>6|192:(n<65536?t[r++]=n>>12|224:(t[r++]=n>>18|240,t[r++]=n>>12&63|128),t[r++]=n>>6&63|128),t[r++]=63&n|128)}return r}(this.buf,t,this.pos);var r=this.pos-e;r>=128&&Xs(e,r,this),this.pos=e-1,this.writeVarint(r),this.pos+=r},writeFloat:function(t){this.realloc(4),qs(this.buf,t,this.pos,!0,23,4),this.pos+=4},writeDouble:function(t){this.realloc(8),qs(this.buf,t,this.pos,!0,52,8),this.pos+=8},writeBytes:function(t){var e=t.length;this.writeVarint(e),this.realloc(e);for(var r=0;r<e;r++)this.buf[this.pos++]=t[r]},writeRawMessage:function(t,e){this.pos++;var r=this.pos;t(e,this);var n=this.pos-r;n>=128&&Xs(r,n,this),this.pos=r-1,this.writeVarint(n),this.pos+=n},writeMessage:function(t,e,r){this.writeTag(t,Gs.Bytes),this.writeRawMessage(e,r)},writePackedVarint:function(t,e){e.length&&this.writeMessage(t,Js,e)},writePackedSVarint:function(t,e){e.length&&this.writeMessage(t,Ks,e)},writePackedBoolean:function(t,e){e.length&&this.writeMessage(t,tl,e)},writePackedFloat:function(t,e){e.length&&this.writeMessage(t,Qs,e)},writePackedDouble:function(t,e){e.length&&this.writeMessage(t,$s,e)},writePackedFixed32:function(t,e){e.length&&this.writeMessage(t,el,e)},writePackedSFixed32:function(t,e){e.length&&this.writeMessage(t,rl,e)},writePackedFixed64:function(t,e){e.length&&this.writeMessage(t,nl,e)},writePackedSFixed64:function(t,e){e.length&&this.writeMessage(t,al,e)},writeBytesField:function(t,e){this.writeTag(t,Gs.Bytes),this.writeBytes(e)},writeFixed32Field:function(t,e){this.writeTag(t,Gs.Fixed32),this.writeFixed32(e)},writeSFixed32Field:function(t,e){this.writeTag(t,Gs.Fixed32),this.writeSFixed32(e)},writeFixed64Field:function(t,e){this.writeTag(t,Gs.Fixed64),this.writeFixed64(e)},writeSFixed64Field:function(t,e){this.writeTag(t,Gs.Fixed64),this.writeSFixed64(e)},writeVarintField:function(t,e){this.writeTag(t,Gs.Varint),this.writeVarint(e)},writeSVarintField:function(t,e){this.writeTag(t,Gs.Varint),this.writeSVarint(e)},writeStringField:function(t,e){this.writeTag(t,Gs.Bytes),this.writeString(e)},writeFloatField:function(t,e){this.writeTag(t,Gs.Fixed32),this.writeFloat(e)},writeDoubleField:function(t,e){this.writeTag(t,Gs.Fixed64),this.writeDouble(e)},writeBooleanField:function(t,e){this.writeVarintField(t,Boolean(e))}};var fl=function(t,e){var r=e.pixelRatio,n=e.version,a=e.stretchX,i=e.stretchY,o=e.content;this.paddedRect=t,this.pixelRatio=r,this.stretchX=a,this.stretchY=i,this.content=o,this.version=n},pl={tl:{configurable:!0},br:{configurable:!0},tlbr:{configurable:!0},displaySize:{configurable:!0}};pl.tl.get=function(){return[this.paddedRect.x+1,this.paddedRect.y+1]},pl.br.get=function(){return[this.paddedRect.x+this.paddedRect.w-1,this.paddedRect.y+this.paddedRect.h-1]},pl.tlbr.get=function(){return this.tl.concat(this.br)},pl.displaySize.get=function(){return[(this.paddedRect.w-2)/this.pixelRatio,(this.paddedRect.h-2)/this.pixelRatio]},Object.defineProperties(fl.prototype,pl);var dl=function(t,e){var r={},n={};this.haveRenderCallbacks=[];var a=[];this.addImages(t,r,a),this.addImages(e,n,a);var i=hl(a),o=new po({width:i.w||1,height:i.h||1});for(var s in t){var l=t[s],c=r[s].paddedRect;po.copy(l.data,o,{x:0,y:0},{x:c.x+1,y:c.y+1},l.data)}for(var u in e){var h=e[u],f=n[u].paddedRect,p=f.x+1,d=f.y+1,g=h.data.width,m=h.data.height;po.copy(h.data,o,{x:0,y:0},{x:p,y:d},h.data),po.copy(h.data,o,{x:0,y:m-1},{x:p,y:d-1},{width:g,height:1}),po.copy(h.data,o,{x:0,y:0},{x:p,y:d+m},{width:g,height:1}),po.copy(h.data,o,{x:g-1,y:0},{x:p-1,y:d},{width:1,height:m}),po.copy(h.data,o,{x:0,y:0},{x:p+g,y:d},{width:1,height:m})}this.image=o,this.iconPositions=r,this.patternPositions=n};dl.prototype.addImages=function(t,e,r){for(var n in t){var a=t[n],i={x:0,y:0,w:a.data.width+2,h:a.data.height+2};r.push(i),e[n]=new fl(i,a),a.hasRenderCallback&&this.haveRenderCallbacks.push(n)}},dl.prototype.patchUpdatedImages=function(t,e){for(var r in t.dispatchRenderCallbacks(this.haveRenderCallbacks),t.updatedImages)this.patchUpdatedImage(this.iconPositions[r],t.getImage(r),e),this.patchUpdatedImage(this.patternPositions[r],t.getImage(r),e)},dl.prototype.patchUpdatedImage=function(t,e,r){if(t&&e&&t.version!==e.version){t.version=e.version;var n=t.tl;r.update(e.data,void 0,{x:n[0],y:n[1]})}},Dn("ImagePosition",fl),Dn("ImageAtlas",dl);var gl={horizontal:1,vertical:2,horizontalOnly:3},ml=function(){this.scale=1,this.fontStack="",this.imageName=null};ml.forText=function(t,e){var r=new ml;return r.scale=t||1,r.fontStack=e,r},ml.forImage=function(t){var e=new ml;return e.imageName=t,e};var vl=function(){this.text="",this.sectionIndex=[],this.sections=[],this.imageSectionID=null};function yl(t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g){var m,v=vl.fromFeature(t,a);h===gl.vertical&&v.verticalizePunctuation();var y=na.processBidirectionalText,x=na.processStyledBidirectionalText;if(y&&1===v.sections.length){m=[];for(var b=0,_=y(v.toString(),Al(v,c,i,e,n,p,d));b<_.length;b+=1){var w=_[b],T=new vl;T.text=w,T.sections=v.sections;for(var k=0;k<w.length;k++)T.sectionIndex.push(0);m.push(T)}}else if(x){m=[];for(var A=0,M=x(v.text,v.sectionIndex,Al(v,c,i,e,n,p,d));A<M.length;A+=1){var S=M[A],E=new vl;E.text=S[0],E.sectionIndex=S[1],E.sections=v.sections,m.push(E)}}else m=function(t,e){for(var r=[],n=t.text,a=0,i=0,o=e;i<o.length;i+=1){var s=o[i];r.push(t.substring(a,s)),a=s}return a<n.length&&r.push(t.substring(a,n.length)),r}(v,Al(v,c,i,e,n,p,d));var C=[],L={positionedLines:C,text:v.toString(),top:u[1],bottom:u[1],left:u[0],right:u[0],writingMode:h,iconsInText:!1,verticalizable:!1};return function(t,e,r,n,a,i,o,s,l,c,u,h){for(var f=0,p=-17,d=0,g=0,m="right"===s?1:"left"===s?0:.5,v=0,y=0,x=a;y<x.length;y+=1){var b=x[y];b.trim();var _=b.getMaxScale(),w=24*(_-1),T={positionedGlyphs:[],lineOffset:0};t.positionedLines[v]=T;var k=T.positionedGlyphs,A=0;if(b.length()){for(var M=0;M<b.length();M++){var S=b.getSection(M),E=b.getSectionIndex(M),C=b.getCharCode(M),L=0,P=null,I=null,z=null,O=24,D=!(l===gl.horizontal||!u&&!Hn(C)||u&&(xl[C]||(H=C,Un.Arabic(H)||Un["Arabic Supplement"](H)||Un["Arabic Extended-A"](H)||Un["Arabic Presentation Forms-A"](H)||Un["Arabic Presentation Forms-B"](H))));if(S.imageName){var R=n[S.imageName];if(!R)continue;z=S.imageName,t.iconsInText=t.iconsInText||!0,I=R.paddedRect;var F=R.displaySize;S.scale=24*S.scale/h,L=w+(24-F[1]*S.scale),O=(P={width:F[0],height:F[1],left:1,top:-3,advance:D?F[1]:F[0]}).advance;var B=D?F[0]*S.scale-24*_:F[1]*S.scale-24*_;B>0&&B>A&&(A=B)}else{var N=r[S.fontStack],j=N&&N[C];if(j&&j.rect)I=j.rect,P=j.metrics;else{var V=e[S.fontStack],U=V&&V[C];if(!U)continue;P=U.metrics}L=24*(_-S.scale)}D?(t.verticalizable=!0,k.push({glyph:C,imageName:z,x:f,y:p+L,vertical:D,scale:S.scale,fontStack:S.fontStack,sectionIndex:E,metrics:P,rect:I}),f+=O*S.scale+c):(k.push({glyph:C,imageName:z,x:f,y:p+L,vertical:D,scale:S.scale,fontStack:S.fontStack,sectionIndex:E,metrics:P,rect:I}),f+=P.advance*S.scale+c)}0!==k.length&&(d=Math.max(f-c,d),Sl(k,0,k.length-1,m,A)),f=0;var q=i*_+A;T.lineOffset=Math.max(A,w),p+=q,g=Math.max(q,g),++v}else p+=i,++v}var H,G=p- -17,Y=Ml(o),W=Y.horizontalAlign,Z=Y.verticalAlign;(function(t,e,r,n,a,i,o,s,l){var c,u=(e-r)*a;c=i!==o?-s*n- -17:(-n*l+.5)*o;for(var h=0,f=t;h<f.length;h+=1)for(var p=0,d=f[h].positionedGlyphs;p<d.length;p+=1){var g=d[p];g.x+=u,g.y+=c}})(t.positionedLines,m,W,Z,d,g,i,G,a.length),t.top+=-Z*G,t.bottom=t.top+G,t.left+=-W*d,t.right=t.left+d}(L,e,r,n,m,o,s,l,h,c,f,g),!function(t){for(var e=0,r=t;e<r.length;e+=1)if(0!==r[e].positionedGlyphs.length)return!1;return!0}(C)&&L}vl.fromFeature=function(t,e){for(var r=new vl,n=0;n<t.sections.length;n++){var a=t.sections[n];a.image?r.addImageSection(a):r.addTextSection(a,e)}return r},vl.prototype.length=function(){return this.text.length},vl.prototype.getSection=function(t){return this.sections[this.sectionIndex[t]]},vl.prototype.getSectionIndex=function(t){return this.sectionIndex[t]},vl.prototype.getCharCode=function(t){return this.text.charCodeAt(t)},vl.prototype.verticalizePunctuation=function(){this.text=function(t){for(var e="",r=0;r<t.length;r++){var n=t.charCodeAt(r+1)||null,a=t.charCodeAt(r-1)||null;e+=n&&Gn(n)&&!Vs[t[r+1]]||a&&Gn(a)&&!Vs[t[r-1]]||!Vs[t[r]]?t[r]:Vs[t[r]]}return e}(this.text)},vl.prototype.trim=function(){for(var t=0,e=0;e<this.text.length&&xl[this.text.charCodeAt(e)];e++)t++;for(var r=this.text.length,n=this.text.length-1;n>=0&&n>=t&&xl[this.text.charCodeAt(n)];n--)r--;this.text=this.text.substring(t,r),this.sectionIndex=this.sectionIndex.slice(t,r)},vl.prototype.substring=function(t,e){var r=new vl;return r.text=this.text.substring(t,e),r.sectionIndex=this.sectionIndex.slice(t,e),r.sections=this.sections,r},vl.prototype.toString=function(){return this.text},vl.prototype.getMaxScale=function(){var t=this;return this.sectionIndex.reduce((function(e,r){return Math.max(e,t.sections[r].scale)}),0)},vl.prototype.addTextSection=function(t,e){this.text+=t.text,this.sections.push(ml.forText(t.scale,t.fontStack||e));for(var r=this.sections.length-1,n=0;n<t.text.length;++n)this.sectionIndex.push(r)},vl.prototype.addImageSection=function(t){var e=t.image?t.image.name:"";if(0!==e.length){var r=this.getNextImageSectionCharCode();r?(this.text+=String.fromCharCode(r),this.sections.push(ml.forImage(e)),this.sectionIndex.push(this.sections.length-1)):_("Reached maximum number of images 6401")}else _("Can't add FormattedSection with an empty image.")},vl.prototype.getNextImageSectionCharCode=function(){return this.imageSectionID?this.imageSectionID>=63743?null:++this.imageSectionID:(this.imageSectionID=57344,this.imageSectionID)};var xl={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0},bl={};function _l(t,e,r,n,a,i){if(e.imageName){var o=n[e.imageName];return o?o.displaySize[0]*e.scale*24/i+a:0}var s=r[e.fontStack],l=s&&s[t];return l?l.metrics.advance*e.scale+a:0}function wl(t,e,r,n){var a=Math.pow(t-e,2);return n?t<e?a/2:2*a:a+Math.abs(r)*r}function Tl(t,e,r){var n=0;return 10===t&&(n-=1e4),r&&(n+=150),40!==t&&65288!==t||(n+=50),41!==e&&65289!==e||(n+=50),n}function kl(t,e,r,n,a,i){for(var o=null,s=wl(e,r,a,i),l=0,c=n;l<c.length;l+=1){var u=c[l],h=wl(e-u.x,r,a,i)+u.badness;h<=s&&(o=u,s=h)}return{index:t,x:e,priorBreak:o,badness:s}}function Al(t,e,r,n,a,i,o){if("point"!==i)return[];if(!t)return[];for(var s,l=[],c=function(t,e,r,n,a,i){for(var o=0,s=0;s<t.length();s++){var l=t.getSection(s);o+=_l(t.getCharCode(s),l,n,a,e,i)}return o/Math.max(1,Math.ceil(o/r))}(t,e,r,n,a,o),u=t.text.indexOf("\u200b")>=0,h=0,f=0;f<t.length();f++){var p=t.getSection(f),d=t.getCharCode(f);if(xl[d]||(h+=_l(d,p,n,a,e,o)),f<t.length()-1){var g=!((s=d)<11904||!(Un["Bopomofo Extended"](s)||Un.Bopomofo(s)||Un["CJK Compatibility Forms"](s)||Un["CJK Compatibility Ideographs"](s)||Un["CJK Compatibility"](s)||Un["CJK Radicals Supplement"](s)||Un["CJK Strokes"](s)||Un["CJK Symbols and Punctuation"](s)||Un["CJK Unified Ideographs Extension A"](s)||Un["CJK Unified Ideographs"](s)||Un["Enclosed CJK Letters and Months"](s)||Un["Halfwidth and Fullwidth Forms"](s)||Un.Hiragana(s)||Un["Ideographic Description Characters"](s)||Un["Kangxi Radicals"](s)||Un["Katakana Phonetic Extensions"](s)||Un.Katakana(s)||Un["Vertical Forms"](s)||Un["Yi Radicals"](s)||Un["Yi Syllables"](s)));(bl[d]||g||p.imageName)&&l.push(kl(f+1,h,c,l,Tl(d,t.getCharCode(f+1),g&&u),!1))}}return function t(e){return e?t(e.priorBreak).concat(e.index):[]}(kl(t.length(),h,c,l,0,!0))}function Ml(t){var e=.5,r=.5;switch(t){case"right":case"top-right":case"bottom-right":e=1;break;case"left":case"top-left":case"bottom-left":e=0}switch(t){case"bottom":case"bottom-right":case"bottom-left":r=1;break;case"top":case"top-right":case"top-left":r=0}return{horizontalAlign:e,verticalAlign:r}}function Sl(t,e,r,n,a){if(n||a)for(var i=t[r],o=(t[r].x+i.metrics.advance*i.scale)*n,s=e;s<=r;s++)t[s].x-=o,t[s].y+=a}function El(t,e,r,n,a,i){var o,s=t.image;if(s.content){var l=s.content,c=s.pixelRatio||1;o=[l[0]/c,l[1]/c,s.displaySize[0]-l[2]/c,s.displaySize[1]-l[3]/c]}var u,h,f,p,d=e.left*i,g=e.right*i;"width"===r||"both"===r?(p=a[0]+d-n[3],h=a[0]+g+n[1]):h=(p=a[0]+(d+g-s.displaySize[0])/2)+s.displaySize[0];var m=e.top*i,v=e.bottom*i;return"height"===r||"both"===r?(u=a[1]+m-n[0],f=a[1]+v+n[2]):f=(u=a[1]+(m+v-s.displaySize[1])/2)+s.displaySize[1],{image:s,top:u,right:h,bottom:f,left:p,collisionPadding:o}}bl[10]=!0,bl[32]=!0,bl[38]=!0,bl[40]=!0,bl[41]=!0,bl[43]=!0,bl[45]=!0,bl[47]=!0,bl[173]=!0,bl[183]=!0,bl[8203]=!0,bl[8208]=!0,bl[8211]=!0,bl[8231]=!0;var Cl=function(t){function e(e,r,n,a){t.call(this,e,r),this.angle=n,void 0!==a&&(this.segment=a)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.clone=function(){return new e(this.x,this.y,this.angle,this.segment)},e}(a);function Ll(t,e){var r=e.expression;if("constant"===r.kind)return{kind:"constant",layoutSize:r.evaluate(new aa(t+1))};if("source"===r.kind)return{kind:"source"};for(var n=r.zoomStops,a=r.interpolationType,i=0;i<n.length&&n[i]<=t;)i++;for(var o=i=Math.max(0,i-1);o<n.length&&n[o]<t+1;)o++;o=Math.min(n.length-1,o);var s=n[i],l=n[o];return"composite"===r.kind?{kind:"composite",minZoom:s,maxZoom:l,interpolationType:a}:{kind:"camera",minZoom:s,maxZoom:l,minSize:r.evaluate(new aa(s)),maxSize:r.evaluate(new aa(l)),interpolationType:a}}function Pl(t,e,r){var n=e.uSize,a=r.lowerSize;return"source"===t.kind?a/128:"composite"===t.kind?Ve(a/128,r.upperSize/128,e.uSizeT):n}function Il(t,e){var r=0,n=0;if("constant"===t.kind)n=t.layoutSize;else if("source"!==t.kind){var a=t.interpolationType,i=a?l(rr.interpolationFactor(a,e,t.minZoom,t.maxZoom),0,1):0;"camera"===t.kind?n=Ve(t.minSize,t.maxSize,i):r=i}return{uSizeT:r,uSize:n}}Dn("Anchor",Cl);var zl=Object.freeze({__proto__:null,getSizeData:Ll,evaluateSizeForFeature:Pl,evaluateSizeForZoom:Il,SIZE_PACK_FACTOR:128});function Ol(t,e,r,n,a){if(void 0===e.segment)return!0;for(var i=e,o=e.segment+1,s=0;s>-r/2;){if(--o<0)return!1;s-=t[o].dist(i),i=t[o]}s+=t[o].dist(t[o+1]),o++;for(var l=[],c=0;s<r/2;){var u=t[o],h=t[o+1];if(!h)return!1;var f=t[o-1].angleTo(u)-u.angleTo(h);for(f=Math.abs((f+3*Math.PI)%(2*Math.PI)-Math.PI),l.push({distance:s,angleDelta:f}),c+=f;s-l[0].distance>n;)c-=l.shift().angleDelta;if(c>a)return!1;o++,s+=u.dist(h)}return!0}function Dl(t){for(var e=0,r=0;r<t.length-1;r++)e+=t[r].dist(t[r+1]);return e}function Rl(t,e,r){return t?.6*e*r:0}function Fl(t,e){return Math.max(t?t.right-t.left:0,e?e.right-e.left:0)}function Bl(t,e,r,n,a,i){for(var o=Rl(r,a,i),s=Fl(r,n)*i,l=0,c=Dl(t)/2,u=0;u<t.length-1;u++){var h=t[u],f=t[u+1],p=h.dist(f);if(l+p>c){var d=(c-l)/p,g=Ve(h.x,f.x,d),m=Ve(h.y,f.y,d),v=new Cl(g,m,f.angleTo(h),u);return v._round(),!o||Ol(t,v,s,o,e)?v:void 0}l+=p}}function Nl(t,e,r,n,a,i,o,s,l){var c=Rl(n,i,o),u=Fl(n,a),h=u*o,f=0===t[0].x||t[0].x===l||0===t[0].y||t[0].y===l;return e-h<e/4&&(e=h+e/4),function t(e,r,n,a,i,o,s,l,c){for(var u=o/2,h=Dl(e),f=0,p=r-n,d=[],g=0;g<e.length-1;g++){for(var m=e[g],v=e[g+1],y=m.dist(v),x=v.angleTo(m);p+n<f+y;){var b=((p+=n)-f)/y,_=Ve(m.x,v.x,b),w=Ve(m.y,v.y,b);if(_>=0&&_<c&&w>=0&&w<c&&p-u>=0&&p+u<=h){var T=new Cl(_,w,x,g);T._round(),a&&!Ol(e,T,o,a,i)||d.push(T)}}f+=y}return l||d.length||s||(d=t(e,f/2,n,a,i,o,s,!0,c)),d}(t,f?e/2*s%e:(u/2+2*i)*o*s%e,e,c,r,h,f,!1,l)}function jl(t,e,r,n,i){for(var o=[],s=0;s<t.length;s++)for(var l=t[s],c=void 0,u=0;u<l.length-1;u++){var h=l[u],f=l[u+1];h.x<e&&f.x<e||(h.x<e?h=new a(e,h.y+(e-h.x)/(f.x-h.x)*(f.y-h.y))._round():f.x<e&&(f=new a(e,h.y+(e-h.x)/(f.x-h.x)*(f.y-h.y))._round()),h.y<r&&f.y<r||(h.y<r?h=new a(h.x+(r-h.y)/(f.y-h.y)*(f.x-h.x),r)._round():f.y<r&&(f=new a(h.x+(r-h.y)/(f.y-h.y)*(f.x-h.x),r)._round()),h.x>=n&&f.x>=n||(h.x>=n?h=new a(n,h.y+(n-h.x)/(f.x-h.x)*(f.y-h.y))._round():f.x>=n&&(f=new a(n,h.y+(n-h.x)/(f.x-h.x)*(f.y-h.y))._round()),h.y>=i&&f.y>=i||(h.y>=i?h=new a(h.x+(i-h.y)/(f.y-h.y)*(f.x-h.x),i)._round():f.y>=i&&(f=new a(h.x+(i-h.y)/(f.y-h.y)*(f.x-h.x),i)._round()),c&&h.equals(c[c.length-1])||o.push(c=[h]),c.push(f)))))}return o}function Vl(t,e,r,n){var i=[],o=t.image,s=o.pixelRatio,l=o.paddedRect.w-2,c=o.paddedRect.h-2,u=t.right-t.left,h=t.bottom-t.top,f=o.stretchX||[[0,l]],p=o.stretchY||[[0,c]],d=function(t,e){return t+e[1]-e[0]},g=f.reduce(d,0),m=p.reduce(d,0),v=l-g,y=c-m,x=0,b=g,_=0,w=m,T=0,k=v,A=0,M=y;if(o.content&&n){var S=o.content;x=Ul(f,0,S[0]),_=Ul(p,0,S[1]),b=Ul(f,S[0],S[2]),w=Ul(p,S[1],S[3]),T=S[0]-x,A=S[1]-_,k=S[2]-S[0]-b,M=S[3]-S[1]-w}var E=function(n,i,l,c){var f=Hl(n.stretch-x,b,u,t.left),p=Gl(n.fixed-T,k,n.stretch,g),d=Hl(i.stretch-_,w,h,t.top),v=Gl(i.fixed-A,M,i.stretch,m),y=Hl(l.stretch-x,b,u,t.left),S=Gl(l.fixed-T,k,l.stretch,g),E=Hl(c.stretch-_,w,h,t.top),C=Gl(c.fixed-A,M,c.stretch,m),L=new a(f,d),P=new a(y,d),I=new a(y,E),z=new a(f,E),O=new a(p/s,v/s),D=new a(S/s,C/s),R=e*Math.PI/180;if(R){var F=Math.sin(R),B=Math.cos(R),N=[B,-F,F,B];L._matMult(N),P._matMult(N),z._matMult(N),I._matMult(N)}var j=n.stretch+n.fixed,V=i.stretch+i.fixed;return{tl:L,tr:P,bl:z,br:I,tex:{x:o.paddedRect.x+1+j,y:o.paddedRect.y+1+V,w:l.stretch+l.fixed-j,h:c.stretch+c.fixed-V},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:O,pixelOffsetBR:D,minFontScaleX:k/s/u,minFontScaleY:M/s/h,isSDF:r}};if(n&&(o.stretchX||o.stretchY))for(var C=ql(f,v,g),L=ql(p,y,m),P=0;P<C.length-1;P++)for(var I=C[P],z=C[P+1],O=0;O<L.length-1;O++)i.push(E(I,L[O],z,L[O+1]));else i.push(E({fixed:0,stretch:-1},{fixed:0,stretch:-1},{fixed:0,stretch:l+1},{fixed:0,stretch:c+1}));return i}function Ul(t,e,r){for(var n=0,a=0,i=t;a<i.length;a+=1){var o=i[a];n+=Math.max(e,Math.min(r,o[1]))-Math.max(e,Math.min(r,o[0]))}return n}function ql(t,e,r){for(var n=[{fixed:-1,stretch:0}],a=0,i=t;a<i.length;a+=1){var o=i[a],s=o[0],l=o[1],c=n[n.length-1];n.push({fixed:s-c.stretch,stretch:c.stretch}),n.push({fixed:s-c.stretch,stretch:c.stretch+(l-s)})}return n.push({fixed:e+1,stretch:r}),n}function Hl(t,e,r,n){return t/e*r+n}function Gl(t,e,r,n){return t-e*r/n}var Yl=function(t,e,r,n,i,o,s,l,c,u){if(this.boxStartIndex=t.length,c){var h=o.top,f=o.bottom,p=o.collisionPadding;p&&(h-=p[1],f+=p[3]);var d=f-h;d>0&&(d=Math.max(10,d),this.circleDiameter=d)}else{var g=o.top*s-l,m=o.bottom*s+l,v=o.left*s-l,y=o.right*s+l,x=o.collisionPadding;if(x&&(v-=x[0]*s,g-=x[1]*s,y+=x[2]*s,m+=x[3]*s),u){var b=new a(v,g),_=new a(y,g),w=new a(v,m),T=new a(y,m),k=u*Math.PI/180;b._rotate(k),_._rotate(k),w._rotate(k),T._rotate(k),v=Math.min(b.x,_.x,w.x,T.x),y=Math.max(b.x,_.x,w.x,T.x),g=Math.min(b.y,_.y,w.y,T.y),m=Math.max(b.y,_.y,w.y,T.y)}t.emplaceBack(e.x,e.y,v,g,y,m,r,n,i)}this.boxEndIndex=t.length},Wl=function(t,e){if(void 0===t&&(t=[]),void 0===e&&(e=Zl),this.data=t,this.length=this.data.length,this.compare=e,this.length>0)for(var r=(this.length>>1)-1;r>=0;r--)this._down(r)};function Zl(t,e){return t<e?-1:t>e?1:0}function Xl(t,e,r){void 0===e&&(e=1),void 0===r&&(r=!1);for(var n=1/0,i=1/0,o=-1/0,s=-1/0,l=t[0],c=0;c<l.length;c++){var u=l[c];(!c||u.x<n)&&(n=u.x),(!c||u.y<i)&&(i=u.y),(!c||u.x>o)&&(o=u.x),(!c||u.y>s)&&(s=u.y)}var h=Math.min(o-n,s-i),f=h/2,p=new Wl([],Jl);if(0===h)return new a(n,i);for(var d=n;d<o;d+=h)for(var g=i;g<s;g+=h)p.push(new Kl(d+f,g+f,f,t));for(var m=function(t){for(var e=0,r=0,n=0,a=t[0],i=0,o=a.length,s=o-1;i<o;s=i++){var l=a[i],c=a[s],u=l.x*c.y-c.x*l.y;r+=(l.x+c.x)*u,n+=(l.y+c.y)*u,e+=3*u}return new Kl(r/e,n/e,0,t)}(t),v=p.length;p.length;){var y=p.pop();(y.d>m.d||!m.d)&&(m=y,r&&console.log("found best %d after %d probes",Math.round(1e4*y.d)/1e4,v)),y.max-m.d<=e||(p.push(new Kl(y.p.x-(f=y.h/2),y.p.y-f,f,t)),p.push(new Kl(y.p.x+f,y.p.y-f,f,t)),p.push(new Kl(y.p.x-f,y.p.y+f,f,t)),p.push(new Kl(y.p.x+f,y.p.y+f,f,t)),v+=4)}return r&&(console.log("num probes: "+v),console.log("best distance: "+m.d)),m.p}function Jl(t,e){return e.max-t.max}function Kl(t,e,r,n){this.p=new a(t,e),this.h=r,this.d=function(t,e){for(var r=!1,n=1/0,a=0;a<e.length;a++)for(var i=e[a],o=0,s=i.length,l=s-1;o<s;l=o++){var c=i[o],u=i[l];c.y>t.y!=u.y>t.y&&t.x<(u.x-c.x)*(t.y-c.y)/(u.y-c.y)+c.x&&(r=!r),n=Math.min(n,Gi(t,c,u))}return(r?1:-1)*Math.sqrt(n)}(this.p,n),this.max=this.d+this.h*Math.SQRT2}Wl.prototype.push=function(t){this.data.push(t),this.length++,this._up(this.length-1)},Wl.prototype.pop=function(){if(0!==this.length){var t=this.data[0],e=this.data.pop();return this.length--,this.length>0&&(this.data[0]=e,this._down(0)),t}},Wl.prototype.peek=function(){return this.data[0]},Wl.prototype._up=function(t){for(var e=this.data,r=this.compare,n=e[t];t>0;){var a=t-1>>1,i=e[a];if(r(n,i)>=0)break;e[t]=i,t=a}e[t]=n},Wl.prototype._down=function(t){for(var e=this.data,r=this.compare,n=this.length>>1,a=e[t];t<n;){var i=1+(t<<1),o=e[i],s=i+1;if(s<this.length&&r(e[s],o)<0&&(i=s,o=e[s]),r(o,a)>=0)break;e[t]=o,t=i}e[t]=a};var Ql=Number.POSITIVE_INFINITY;function $l(t,e){return e[1]!==Ql?function(t,e,r){var n=0,a=0;switch(e=Math.abs(e),r=Math.abs(r),t){case"top-right":case"top-left":case"top":a=r-7;break;case"bottom-right":case"bottom-left":case"bottom":a=7-r}switch(t){case"top-right":case"bottom-right":case"right":n=-e;break;case"top-left":case"bottom-left":case"left":n=e}return[n,a]}(t,e[0],e[1]):function(t,e){var r=0,n=0;e<0&&(e=0);var a=e/Math.sqrt(2);switch(t){case"top-right":case"top-left":n=a-7;break;case"bottom-right":case"bottom-left":n=7-a;break;case"bottom":n=7-e;break;case"top":n=e-7}switch(t){case"top-right":case"bottom-right":r=-a;break;case"top-left":case"bottom-left":r=a;break;case"left":r=e;break;case"right":r=-e}return[r,n]}(t,e[0])}function tc(t){switch(t){case"right":case"top-right":case"bottom-right":return"right";case"left":case"top-left":case"bottom-left":return"left"}return"center"}function ec(t,e,r,n,i,o,s,l,c,u,h,f,p,d,g){var m=function(t,e,r,n,i,o,s,l){for(var c=n.layout.get("text-rotate").evaluate(o,{})*Math.PI/180,u=[],h=0,f=e.positionedLines;h<f.length;h+=1)for(var p=f[h],d=0,g=p.positionedGlyphs;d<g.length;d+=1){var m=g[d];if(m.rect){var v=m.rect||{},y=4,x=!0,b=1,_=0,w=(i||l)&&m.vertical,T=m.metrics.advance*m.scale/2;if(l&&e.verticalizable&&(_=p.lineOffset/2-(m.imageName?-(24-m.metrics.width*m.scale)/2:24*(m.scale-1))),m.imageName){var k=s[m.imageName];x=k.sdf,y=1/(b=k.pixelRatio)}var A=i?[m.x+T,m.y]:[0,0],M=i?[0,0]:[m.x+T+r[0],m.y+r[1]-_],S=[0,0];w&&(S=M,M=[0,0]);var E=(m.metrics.left-y)*m.scale-T+M[0],C=(-m.metrics.top-y)*m.scale+M[1],L=E+v.w*m.scale/b,P=C+v.h*m.scale/b,I=new a(E,C),z=new a(L,C),O=new a(E,P),D=new a(L,P);if(w){var R=new a(-T,T- -17),F=-Math.PI/2,B=12-T,N=new a(22-B,-(m.imageName?B:0)),j=new(Function.prototype.bind.apply(a,[null].concat(S)));I._rotateAround(F,R)._add(N)._add(j),z._rotateAround(F,R)._add(N)._add(j),O._rotateAround(F,R)._add(N)._add(j),D._rotateAround(F,R)._add(N)._add(j)}if(c){var V=Math.sin(c),U=Math.cos(c),q=[U,-V,V,U];I._matMult(q),z._matMult(q),O._matMult(q),D._matMult(q)}var H=new a(0,0),G=new a(0,0);u.push({tl:I,tr:z,bl:O,br:D,tex:v,writingMode:e.writingMode,glyphOffset:A,sectionIndex:m.sectionIndex,isSDF:x,pixelOffsetTL:H,pixelOffsetBR:G,minFontScaleX:0,minFontScaleY:0})}}return u}(0,r,l,i,o,s,n,t.allowVerticalPlacement),v=t.textSizeData,y=null;"source"===v.kind?(y=[128*i.layout.get("text-size").evaluate(s,{})])[0]>32640&&_(t.layerIds[0]+': Value for "text-size" is >= 255. Reduce your "text-size".'):"composite"===v.kind&&((y=[128*d.compositeTextSizes[0].evaluate(s,{},g),128*d.compositeTextSizes[1].evaluate(s,{},g)])[0]>32640||y[1]>32640)&&_(t.layerIds[0]+': Value for "text-size" is >= 255. Reduce your "text-size".'),t.addSymbols(t.text,m,y,l,o,s,u,e,c.lineStartIndex,c.lineLength,p,g);for(var x=0,b=h;x<b.length;x+=1)f[b[x]]=t.text.placedSymbolArray.length-1;return 4*m.length}function rc(t){for(var e in t)return t[e];return null}function nc(t,e,r,n){var a=t.compareText;if(e in a){for(var i=a[e],o=i.length-1;o>=0;o--)if(n.dist(i[o])<r)return!0}else a[e]=[];return a[e].push(n),!1}var ac=gs.VectorTileFeature.types,ic=[{name:"a_fade_opacity",components:1,type:"Uint8",offset:0}];function oc(t,e,r,n,a,i,o,s,l,c,u,h,f){var p=s?Math.min(32640,Math.round(s[0])):0,d=s?Math.min(32640,Math.round(s[1])):0;t.emplaceBack(e,r,Math.round(32*n),Math.round(32*a),i,o,(p<<1)+(l?1:0),d,16*c,16*u,256*h,256*f)}function sc(t,e,r){t.emplaceBack(e.x,e.y,r),t.emplaceBack(e.x,e.y,r),t.emplaceBack(e.x,e.y,r),t.emplaceBack(e.x,e.y,r)}function lc(t){for(var e=0,r=t.sections;e<r.length;e+=1)if(Zn(r[e].text))return!0;return!1}var cc=function(t){this.layoutVertexArray=new La,this.indexArray=new Fa,this.programConfigurations=t,this.segments=new ai,this.dynamicLayoutVertexArray=new Pa,this.opacityVertexArray=new Ia,this.placedSymbolArray=new Ja};cc.prototype.isEmpty=function(){return 0===this.layoutVertexArray.length&&0===this.indexArray.length&&0===this.dynamicLayoutVertexArray.length&&0===this.opacityVertexArray.length},cc.prototype.upload=function(t,e,r,n){this.isEmpty()||(r&&(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,Ds.members),this.indexBuffer=t.createIndexBuffer(this.indexArray,e),this.dynamicLayoutVertexBuffer=t.createVertexBuffer(this.dynamicLayoutVertexArray,Rs.members,!0),this.opacityVertexBuffer=t.createVertexBuffer(this.opacityVertexArray,ic,!0),this.opacityVertexBuffer.itemSize=1),(r||n)&&this.programConfigurations.upload(t))},cc.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer.destroy(),this.opacityVertexBuffer.destroy())},Dn("SymbolBuffers",cc);var uc=function(t,e,r){this.layoutVertexArray=new t,this.layoutAttributes=e,this.indexArray=new r,this.segments=new ai,this.collisionVertexArray=new Ra};uc.prototype.upload=function(t){this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,this.layoutAttributes),this.indexBuffer=t.createIndexBuffer(this.indexArray),this.collisionVertexBuffer=t.createVertexBuffer(this.collisionVertexArray,Fs.members,!0)},uc.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.collisionVertexBuffer.destroy())},Dn("CollisionBuffers",uc);var hc=function(t){this.collisionBoxArray=t.collisionBoxArray,this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((function(t){return t.id})),this.index=t.index,this.pixelRatio=t.pixelRatio,this.sourceLayerIndex=t.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=eo([]),this.placementViewportMatrix=eo([]);var e=this.layers[0]._unevaluatedLayout._values;this.textSizeData=Ll(this.zoom,e["text-size"]),this.iconSizeData=Ll(this.zoom,e["icon-size"]);var r=this.layers[0].layout,n=r.get("symbol-sort-key"),a=r.get("symbol-z-order");this.sortFeaturesByKey="viewport-y"!==a&&void 0!==n.constantOr(1),this.sortFeaturesByY=("viewport-y"===a||"auto"===a&&!this.sortFeaturesByKey)&&(r.get("text-allow-overlap")||r.get("icon-allow-overlap")||r.get("text-ignore-placement")||r.get("icon-ignore-placement")),"point"===r.get("symbol-placement")&&(this.writingModes=r.get("text-writing-mode").map((function(t){return gl[t]}))),this.stateDependentLayerIds=this.layers.filter((function(t){return t.isStateDependent()})).map((function(t){return t.id})),this.sourceID=t.sourceID};hc.prototype.createArrays=function(){this.text=new cc(new Pi(Ds.members,this.layers,this.zoom,(function(t){return/^text/.test(t)}))),this.icon=new cc(new Pi(Ds.members,this.layers,this.zoom,(function(t){return/^icon/.test(t)}))),this.glyphOffsetArray=new $a,this.lineVertexArray=new ti,this.symbolInstances=new Qa},hc.prototype.calculateGlyphDependencies=function(t,e,r,n,a){for(var i=0;i<t.length;i++)if(e[t.charCodeAt(i)]=!0,(r||n)&&a){var o=Vs[t.charAt(i)];o&&(e[o.charCodeAt(0)]=!0)}},hc.prototype.populate=function(t,e,r){var n=this.layers[0],a=n.layout,i=a.get("text-font"),o=a.get("text-field"),s=a.get("icon-image"),l=("constant"!==o.value.kind||o.value.value instanceof te&&!o.value.value.isEmpty()||o.value.value.toString().length>0)&&("constant"!==i.value.kind||i.value.value.length>0),c="constant"!==s.value.kind||!!s.value.value||Object.keys(s.parameters).length>0,u=a.get("symbol-sort-key");if(this.features=[],l||c){for(var h=e.iconDependencies,f=e.glyphDependencies,p=e.availableImages,d=new aa(this.zoom),g=0,m=t;g<m.length;g+=1){var v=m[g],y=v.feature,x=v.id,b=v.index,_=v.sourceLayerIndex,w=n._featureFilter.needGeometry,T={type:y.type,id:x,properties:y.properties,geometry:w?Di(y):[]};if(n._featureFilter.filter(d,T,r)){w||(T.geometry=Di(y));var k=void 0;if(l){var A=n.getValueAndResolveTokens("text-field",T,r,p),M=te.factory(A);lc(M)&&(this.hasRTLText=!0),(!this.hasRTLText||"unavailable"===ea()||this.hasRTLText&&na.isParsed())&&(k=js(M,n,T))}var S=void 0;if(c){var E=n.getValueAndResolveTokens("icon-image",T,r,p);S=E instanceof ee?E:ee.fromString(E)}if(k||S){var C=this.sortFeaturesByKey?u.evaluate(T,{},r):void 0,L={id:x,text:k,icon:S,index:b,sourceLayerIndex:_,geometry:Di(y),properties:y.properties,type:ac[y.type],sortKey:C};if(this.features.push(L),S&&(h[S.name]=!0),k){var P=i.evaluate(T,{},r).join(","),I="map"===a.get("text-rotation-alignment")&&"point"!==a.get("symbol-placement");this.allowVerticalPlacement=this.writingModes&&this.writingModes.indexOf(gl.vertical)>=0;for(var z=0,O=k.sections;z<O.length;z+=1){var D=O[z];if(D.image)h[D.image.name]=!0;else{var R=qn(k.toString()),F=D.fontStack||P,B=f[F]=f[F]||{};this.calculateGlyphDependencies(D.text,B,I,this.allowVerticalPlacement,R)}}}}}}"line"===a.get("symbol-placement")&&(this.features=function(t){var e={},r={},n=[],a=0;function i(e){n.push(t[e]),a++}function o(t,e,a){var i=r[t];return delete r[t],r[e]=i,n[i].geometry[0].pop(),n[i].geometry[0]=n[i].geometry[0].concat(a[0]),i}function s(t,r,a){var i=e[r];return delete e[r],e[t]=i,n[i].geometry[0].shift(),n[i].geometry[0]=a[0].concat(n[i].geometry[0]),i}function l(t,e,r){var n=r?e[0][e[0].length-1]:e[0][0];return t+":"+n.x+":"+n.y}for(var c=0;c<t.length;c++){var u=t[c],h=u.geometry,f=u.text?u.text.toString():null;if(f){var p=l(f,h),d=l(f,h,!0);if(p in r&&d in e&&r[p]!==e[d]){var g=s(p,d,h),m=o(p,d,n[g].geometry);delete e[p],delete r[d],r[l(f,n[m].geometry,!0)]=m,n[g].geometry=null}else p in r?o(p,d,h):d in e?s(p,d,h):(i(c),e[p]=a-1,r[d]=a-1)}else i(c)}return n.filter((function(t){return t.geometry}))}(this.features)),this.sortFeaturesByKey&&this.features.sort((function(t,e){return t.sortKey-e.sortKey}))}},hc.prototype.update=function(t,e,r){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(t,e,this.layers,r),this.icon.programConfigurations.updatePaintArrays(t,e,this.layers,r))},hc.prototype.isEmpty=function(){return 0===this.symbolInstances.length&&!this.hasRTLText},hc.prototype.uploadPending=function(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload},hc.prototype.upload=function(t){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(t),this.iconCollisionBox.upload(t)),this.text.upload(t,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(t,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0},hc.prototype.destroyDebugData=function(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy()},hc.prototype.destroy=function(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData()},hc.prototype.addToLineVertexArray=function(t,e){var r=this.lineVertexArray.length;if(void 0!==t.segment){for(var n=t.dist(e[t.segment+1]),a=t.dist(e[t.segment]),i={},o=t.segment+1;o<e.length;o++)i[o]={x:e[o].x,y:e[o].y,tileUnitDistanceFromAnchor:n},o<e.length-1&&(n+=e[o+1].dist(e[o]));for(var s=t.segment||0;s>=0;s--)i[s]={x:e[s].x,y:e[s].y,tileUnitDistanceFromAnchor:a},s>0&&(a+=e[s-1].dist(e[s]));for(var l=0;l<e.length;l++){var c=i[l];this.lineVertexArray.emplaceBack(c.x,c.y,c.tileUnitDistanceFromAnchor)}}return{lineStartIndex:r,lineLength:this.lineVertexArray.length-r}},hc.prototype.addSymbols=function(t,e,r,n,a,i,o,s,l,c,u,h){for(var f=t.indexArray,p=t.layoutVertexArray,d=t.segments.prepareSegment(4*e.length,p,f,i.sortKey),g=this.glyphOffsetArray.length,m=d.vertexLength,v=this.allowVerticalPlacement&&o===gl.vertical?Math.PI/2:0,y=i.text&&i.text.sections,x=0;x<e.length;x++){var b=e[x],_=b.tl,w=b.tr,T=b.bl,k=b.br,A=b.tex,M=b.pixelOffsetTL,S=b.pixelOffsetBR,E=b.minFontScaleX,C=b.minFontScaleY,L=b.glyphOffset,P=b.isSDF,I=b.sectionIndex,z=d.vertexLength,O=L[1];oc(p,s.x,s.y,_.x,O+_.y,A.x,A.y,r,P,M.x,M.y,E,C),oc(p,s.x,s.y,w.x,O+w.y,A.x+A.w,A.y,r,P,S.x,M.y,E,C),oc(p,s.x,s.y,T.x,O+T.y,A.x,A.y+A.h,r,P,M.x,S.y,E,C),oc(p,s.x,s.y,k.x,O+k.y,A.x+A.w,A.y+A.h,r,P,S.x,S.y,E,C),sc(t.dynamicLayoutVertexArray,s,v),f.emplaceBack(z,z+1,z+2),f.emplaceBack(z+1,z+2,z+3),d.vertexLength+=4,d.primitiveLength+=2,this.glyphOffsetArray.emplaceBack(L[0]),x!==e.length-1&&I===e[x+1].sectionIndex||t.programConfigurations.populatePaintArrays(p.length,i,i.index,{},h,y&&y[I])}t.placedSymbolArray.emplaceBack(s.x,s.y,g,this.glyphOffsetArray.length-g,m,l,c,s.segment,r?r[0]:0,r?r[1]:0,n[0],n[1],o,0,!1,0,u)},hc.prototype._addCollisionDebugVertex=function(t,e,r,n,a,i){return e.emplaceBack(0,0),t.emplaceBack(r.x,r.y,n,a,Math.round(i.x),Math.round(i.y))},hc.prototype.addCollisionDebugVertices=function(t,e,r,n,i,o,s){var l=i.segments.prepareSegment(4,i.layoutVertexArray,i.indexArray),c=l.vertexLength,u=i.layoutVertexArray,h=i.collisionVertexArray,f=s.anchorX,p=s.anchorY;this._addCollisionDebugVertex(u,h,o,f,p,new a(t,e)),this._addCollisionDebugVertex(u,h,o,f,p,new a(r,e)),this._addCollisionDebugVertex(u,h,o,f,p,new a(r,n)),this._addCollisionDebugVertex(u,h,o,f,p,new a(t,n)),l.vertexLength+=4;var d=i.indexArray;d.emplaceBack(c,c+1),d.emplaceBack(c+1,c+2),d.emplaceBack(c+2,c+3),d.emplaceBack(c+3,c),l.primitiveLength+=4},hc.prototype.addDebugCollisionBoxes=function(t,e,r,n){for(var a=t;a<e;a++){var i=this.collisionBoxArray.get(a);this.addCollisionDebugVertices(i.x1,i.y1,i.x2,i.y2,n?this.textCollisionBox:this.iconCollisionBox,i.anchorPoint,r)}},hc.prototype.generateCollisionDebugBuffers=function(){this.hasDebugData()&&this.destroyDebugData(),this.textCollisionBox=new uc(Oa,Bs.members,qa),this.iconCollisionBox=new uc(Oa,Bs.members,qa);for(var t=0;t<this.symbolInstances.length;t++){var e=this.symbolInstances.get(t);this.addDebugCollisionBoxes(e.textBoxStartIndex,e.textBoxEndIndex,e,!0),this.addDebugCollisionBoxes(e.verticalTextBoxStartIndex,e.verticalTextBoxEndIndex,e,!0),this.addDebugCollisionBoxes(e.iconBoxStartIndex,e.iconBoxEndIndex,e,!1),this.addDebugCollisionBoxes(e.verticalIconBoxStartIndex,e.verticalIconBoxEndIndex,e,!1)}},hc.prototype._deserializeCollisionBoxesForSymbol=function(t,e,r,n,a,i,o,s,l){for(var c={},u=e;u<r;u++){var h=t.get(u);c.textBox={x1:h.x1,y1:h.y1,x2:h.x2,y2:h.y2,anchorPointX:h.anchorPointX,anchorPointY:h.anchorPointY},c.textFeatureIndex=h.featureIndex;break}for(var f=n;f<a;f++){var p=t.get(f);c.verticalTextBox={x1:p.x1,y1:p.y1,x2:p.x2,y2:p.y2,anchorPointX:p.anchorPointX,anchorPointY:p.anchorPointY},c.verticalTextFeatureIndex=p.featureIndex;break}for(var d=i;d<o;d++){var g=t.get(d);c.iconBox={x1:g.x1,y1:g.y1,x2:g.x2,y2:g.y2,anchorPointX:g.anchorPointX,anchorPointY:g.anchorPointY},c.iconFeatureIndex=g.featureIndex;break}for(var m=s;m<l;m++){var v=t.get(m);c.verticalIconBox={x1:v.x1,y1:v.y1,x2:v.x2,y2:v.y2,anchorPointX:v.anchorPointX,anchorPointY:v.anchorPointY},c.verticalIconFeatureIndex=v.featureIndex;break}return c},hc.prototype.deserializeCollisionBoxes=function(t){this.collisionArrays=[];for(var e=0;e<this.symbolInstances.length;e++){var r=this.symbolInstances.get(e);this.collisionArrays.push(this._deserializeCollisionBoxesForSymbol(t,r.textBoxStartIndex,r.textBoxEndIndex,r.verticalTextBoxStartIndex,r.verticalTextBoxEndIndex,r.iconBoxStartIndex,r.iconBoxEndIndex,r.verticalIconBoxStartIndex,r.verticalIconBoxEndIndex))}},hc.prototype.hasTextData=function(){return this.text.segments.get().length>0},hc.prototype.hasIconData=function(){return this.icon.segments.get().length>0},hc.prototype.hasDebugData=function(){return this.textCollisionBox&&this.iconCollisionBox},hc.prototype.hasTextCollisionBoxData=function(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0},hc.prototype.hasIconCollisionBoxData=function(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0},hc.prototype.addIndicesForPlacedSymbol=function(t,e){for(var r=t.placedSymbolArray.get(e),n=r.vertexStartIndex+4*r.numGlyphs,a=r.vertexStartIndex;a<n;a+=4)t.indexArray.emplaceBack(a,a+1,a+2),t.indexArray.emplaceBack(a+1,a+2,a+3)},hc.prototype.getSortedSymbolIndexes=function(t){if(this.sortedAngle===t&&void 0!==this.symbolInstanceIndexes)return this.symbolInstanceIndexes;for(var e=Math.sin(t),r=Math.cos(t),n=[],a=[],i=[],o=0;o<this.symbolInstances.length;++o){i.push(o);var s=this.symbolInstances.get(o);n.push(0|Math.round(e*s.anchorX+r*s.anchorY)),a.push(s.featureIndex)}return i.sort((function(t,e){return n[t]-n[e]||a[e]-a[t]})),i},hc.prototype.addToSortKeyRanges=function(t,e){var r=this.sortKeyRanges[this.sortKeyRanges.length-1];r&&r.sortKey===e?r.symbolInstanceEnd=t+1:this.sortKeyRanges.push({sortKey:e,symbolInstanceStart:t,symbolInstanceEnd:t+1})},hc.prototype.sortFeatures=function(t){var e=this;if(this.sortFeaturesByY&&this.sortedAngle!==t&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(t),this.sortedAngle=t,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(var r=0,n=this.symbolInstanceIndexes;r<n.length;r+=1){var a=this.symbolInstances.get(n[r]);this.featureSortOrder.push(a.featureIndex),[a.rightJustifiedTextSymbolIndex,a.centerJustifiedTextSymbolIndex,a.leftJustifiedTextSymbolIndex].forEach((function(t,r,n){t>=0&&n.indexOf(t)===r&&e.addIndicesForPlacedSymbol(e.text,t)})),a.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,a.verticalPlacedTextSymbolIndex),a.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,a.placedIconSymbolIndex),a.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,a.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}},Dn("SymbolBucket",hc,{omit:["layers","collisionBoxArray","features","compareText"]}),hc.MAX_GLYPHS=65535,hc.addDynamicAttributes=sc;var fc=new ya({"symbol-placement":new pa(Mt.layout_symbol["symbol-placement"]),"symbol-spacing":new pa(Mt.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new pa(Mt.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new da(Mt.layout_symbol["symbol-sort-key"]),"symbol-z-order":new pa(Mt.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new pa(Mt.layout_symbol["icon-allow-overlap"]),"icon-ignore-placement":new pa(Mt.layout_symbol["icon-ignore-placement"]),"icon-optional":new pa(Mt.layout_symbol["icon-optional"]),"icon-rotation-alignment":new pa(Mt.layout_symbol["icon-rotation-alignment"]),"icon-size":new da(Mt.layout_symbol["icon-size"]),"icon-text-fit":new pa(Mt.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new pa(Mt.layout_symbol["icon-text-fit-padding"]),"icon-image":new da(Mt.layout_symbol["icon-image"]),"icon-rotate":new da(Mt.layout_symbol["icon-rotate"]),"icon-padding":new pa(Mt.layout_symbol["icon-padding"]),"icon-keep-upright":new pa(Mt.layout_symbol["icon-keep-upright"]),"icon-offset":new da(Mt.layout_symbol["icon-offset"]),"icon-anchor":new da(Mt.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new pa(Mt.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new pa(Mt.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new pa(Mt.layout_symbol["text-rotation-alignment"]),"text-field":new da(Mt.layout_symbol["text-field"]),"text-font":new da(Mt.layout_symbol["text-font"]),"text-size":new da(Mt.layout_symbol["text-size"]),"text-max-width":new da(Mt.layout_symbol["text-max-width"]),"text-line-height":new pa(Mt.layout_symbol["text-line-height"]),"text-letter-spacing":new da(Mt.layout_symbol["text-letter-spacing"]),"text-justify":new da(Mt.layout_symbol["text-justify"]),"text-radial-offset":new da(Mt.layout_symbol["text-radial-offset"]),"text-variable-anchor":new pa(Mt.layout_symbol["text-variable-anchor"]),"text-anchor":new da(Mt.layout_symbol["text-anchor"]),"text-max-angle":new pa(Mt.layout_symbol["text-max-angle"]),"text-writing-mode":new pa(Mt.layout_symbol["text-writing-mode"]),"text-rotate":new da(Mt.layout_symbol["text-rotate"]),"text-padding":new pa(Mt.layout_symbol["text-padding"]),"text-keep-upright":new pa(Mt.layout_symbol["text-keep-upright"]),"text-transform":new da(Mt.layout_symbol["text-transform"]),"text-offset":new da(Mt.layout_symbol["text-offset"]),"text-allow-overlap":new pa(Mt.layout_symbol["text-allow-overlap"]),"text-ignore-placement":new pa(Mt.layout_symbol["text-ignore-placement"]),"text-optional":new pa(Mt.layout_symbol["text-optional"])}),pc={paint:new ya({"icon-opacity":new da(Mt.paint_symbol["icon-opacity"]),"icon-color":new da(Mt.paint_symbol["icon-color"]),"icon-halo-color":new da(Mt.paint_symbol["icon-halo-color"]),"icon-halo-width":new da(Mt.paint_symbol["icon-halo-width"]),"icon-halo-blur":new da(Mt.paint_symbol["icon-halo-blur"]),"icon-translate":new pa(Mt.paint_symbol["icon-translate"]),"icon-translate-anchor":new pa(Mt.paint_symbol["icon-translate-anchor"]),"text-opacity":new da(Mt.paint_symbol["text-opacity"]),"text-color":new da(Mt.paint_symbol["text-color"],{runtimeType:Bt,getOverride:function(t){return t.textColor},hasOverride:function(t){return!!t.textColor}}),"text-halo-color":new da(Mt.paint_symbol["text-halo-color"]),"text-halo-width":new da(Mt.paint_symbol["text-halo-width"]),"text-halo-blur":new da(Mt.paint_symbol["text-halo-blur"]),"text-translate":new pa(Mt.paint_symbol["text-translate"]),"text-translate-anchor":new pa(Mt.paint_symbol["text-translate-anchor"])}),layout:fc},dc=function(t){this.type=t.property.overrides?t.property.overrides.runtimeType:Ot,this.defaultValue=t};dc.prototype.evaluate=function(t){if(t.formattedSection){var e=this.defaultValue.property.overrides;if(e&&e.hasOverride(t.formattedSection))return e.getOverride(t.formattedSection)}return t.feature&&t.featureState?this.defaultValue.evaluate(t.feature,t.featureState):this.defaultValue.property.specification.default},dc.prototype.eachChild=function(t){this.defaultValue.isConstant()||t(this.defaultValue.value._styleExpression.expression)},dc.prototype.outputDefined=function(){return!1},dc.prototype.serialize=function(){return null},Dn("FormatSectionOverride",dc,{omit:["defaultValue"]});var gc=function(t){function e(e){t.call(this,e,pc)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.recalculate=function(e,r){if(t.prototype.recalculate.call(this,e,r),"auto"===this.layout.get("icon-rotation-alignment")&&(this.layout._values["icon-rotation-alignment"]="point"!==this.layout.get("symbol-placement")?"map":"viewport"),"auto"===this.layout.get("text-rotation-alignment")&&(this.layout._values["text-rotation-alignment"]="point"!==this.layout.get("symbol-placement")?"map":"viewport"),"auto"===this.layout.get("text-pitch-alignment")&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")),"auto"===this.layout.get("icon-pitch-alignment")&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),"point"===this.layout.get("symbol-placement")){var n=this.layout.get("text-writing-mode");if(n){for(var a=[],i=0,o=n;i<o.length;i+=1){var s=o[i];a.indexOf(s)<0&&a.push(s)}this.layout._values["text-writing-mode"]=a}else this.layout._values["text-writing-mode"]=["horizontal"]}this._setPaintOverrides()},e.prototype.getValueAndResolveTokens=function(t,e,r,n){var a=this.layout.get(t).evaluate(e,{},r,n),i=this._unevaluatedLayout._values[t];return i.isDataDriven()||Ur(i.value)||!a?a:function(t,e){return e.replace(/{([^{}]+)}/g,(function(e,r){return r in t?String(t[r]):""}))}(e.properties,a)},e.prototype.createBucket=function(t){return new hc(t)},e.prototype.queryRadius=function(){return 0},e.prototype.queryIntersectsFeature=function(){return!1},e.prototype._setPaintOverrides=function(){for(var t=0,r=pc.paint.overridableProperties;t<r.length;t+=1){var n=r[t];if(e.hasPaintOverride(this.layout,n)){var a,i=this.paint.get(n),o=new dc(i),s=new Vr(o,i.property.specification);a="constant"===i.value.kind||"source"===i.value.kind?new Hr("source",s):new Gr("composite",s,i.value.zoomStops,i.value._interpolationType),this.paint._values[n]=new ha(i.property,a,i.parameters)}}},e.prototype._handleOverridablePaintPropertyUpdate=function(t,r,n){return!(!this.layout||r.isDataDriven()||n.isDataDriven())&&e.hasPaintOverride(this.layout,t)},e.hasPaintOverride=function(t,e){var r=t.get("text-field"),n=pc.paint.properties[e],a=!1,i=function(t){for(var e=0,r=t;e<r.length;e+=1)if(n.overrides&&n.overrides.hasOverride(r[e]))return void(a=!0)};if("constant"===r.value.kind&&r.value.value instanceof te)i(r.value.value.sections);else if("source"===r.value.kind){var o=function(t){a||(t instanceof oe&&ae(t.value)===Ut?i(t.value.sections):t instanceof ue?i(t.sections):t.eachChild(o))},s=r.value;s._styleExpression&&o(s._styleExpression.expression)}return a},e}(xa),mc={paint:new ya({"background-color":new pa(Mt.paint_background["background-color"]),"background-pattern":new ma(Mt.paint_background["background-pattern"]),"background-opacity":new pa(Mt.paint_background["background-opacity"])})},vc=function(t){function e(e){t.call(this,e,mc)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e}(xa),yc={paint:new ya({"raster-opacity":new pa(Mt.paint_raster["raster-opacity"]),"raster-hue-rotate":new pa(Mt.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new pa(Mt.paint_raster["raster-brightness-min"]),"raster-brightness-max":new pa(Mt.paint_raster["raster-brightness-max"]),"raster-saturation":new pa(Mt.paint_raster["raster-saturation"]),"raster-contrast":new pa(Mt.paint_raster["raster-contrast"]),"raster-resampling":new pa(Mt.paint_raster["raster-resampling"]),"raster-fade-duration":new pa(Mt.paint_raster["raster-fade-duration"])})},xc=function(t){function e(e){t.call(this,e,yc)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e}(xa),bc=function(t){function e(e){t.call(this,e,{}),this.implementation=e}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.is3D=function(){return"3d"===this.implementation.renderingMode},e.prototype.hasOffscreenPass=function(){return void 0!==this.implementation.prerender},e.prototype.recalculate=function(){},e.prototype.updateTransitions=function(){},e.prototype.hasTransition=function(){},e.prototype.serialize=function(){},e.prototype.onAdd=function(t){this.implementation.onAdd&&this.implementation.onAdd(t,t.painter.context.gl)},e.prototype.onRemove=function(t){this.implementation.onRemove&&this.implementation.onRemove(t,t.painter.context.gl)},e}(xa),_c={circle:oo,heatmap:vo,hillshade:xo,fill:is,"fill-extrusion":ws,line:zs,symbol:gc,background:vc,raster:xc},wc=self.HTMLImageElement,Tc=self.HTMLCanvasElement,kc=self.HTMLVideoElement,Ac=self.ImageData,Mc=self.ImageBitmap,Sc=function(t,e,r,n){this.context=t,this.format=r,this.texture=t.gl.createTexture(),this.update(e,n)};Sc.prototype.update=function(t,e,r){var n=t.width,a=t.height,i=!(this.size&&this.size[0]===n&&this.size[1]===a||r),o=this.context,s=o.gl;if(this.useMipmap=Boolean(e&&e.useMipmap),s.bindTexture(s.TEXTURE_2D,this.texture),o.pixelStoreUnpackFlipY.set(!1),o.pixelStoreUnpack.set(1),o.pixelStoreUnpackPremultiplyAlpha.set(this.format===s.RGBA&&(!e||!1!==e.premultiply)),i)this.size=[n,a],t instanceof wc||t instanceof Tc||t instanceof kc||t instanceof Ac||Mc&&t instanceof Mc?s.texImage2D(s.TEXTURE_2D,0,this.format,this.format,s.UNSIGNED_BYTE,t):s.texImage2D(s.TEXTURE_2D,0,this.format,n,a,0,this.format,s.UNSIGNED_BYTE,t.data);else{var l=r||{x:0,y:0},c=l.x,u=l.y;t instanceof wc||t instanceof Tc||t instanceof kc||t instanceof Ac||Mc&&t instanceof Mc?s.texSubImage2D(s.TEXTURE_2D,0,c,u,s.RGBA,s.UNSIGNED_BYTE,t):s.texSubImage2D(s.TEXTURE_2D,0,c,u,n,a,s.RGBA,s.UNSIGNED_BYTE,t.data)}this.useMipmap&&this.isSizePowerOfTwo()&&s.generateMipmap(s.TEXTURE_2D)},Sc.prototype.bind=function(t,e,r){var n=this.context.gl;n.bindTexture(n.TEXTURE_2D,this.texture),r!==n.LINEAR_MIPMAP_NEAREST||this.isSizePowerOfTwo()||(r=n.LINEAR),t!==this.filter&&(n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MAG_FILTER,t),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MIN_FILTER,r||t),this.filter=t),e!==this.wrap&&(n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,e),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,e),this.wrap=e)},Sc.prototype.isSizePowerOfTwo=function(){return this.size[0]===this.size[1]&&Math.log(this.size[0])/Math.LN2%1==0},Sc.prototype.destroy=function(){this.context.gl.deleteTexture(this.texture),this.texture=null};var Ec=function(t){var e=this;this._callback=t,this._triggered=!1,"undefined"!=typeof MessageChannel&&(this._channel=new MessageChannel,this._channel.port2.onmessage=function(){e._triggered=!1,e._callback()})};Ec.prototype.trigger=function(){var t=this;this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout((function(){t._triggered=!1,t._callback()}),0))},Ec.prototype.remove=function(){delete this._channel,this._callback=function(){}};var Cc=function(t,e,r){this.target=t,this.parent=e,this.mapId=r,this.callbacks={},this.tasks={},this.taskQueue=[],this.cancelCallbacks={},g(["receive","process"],this),this.invoker=new Ec(this.process),this.target.addEventListener("message",this.receive,!1),this.globalScope=k()?t:self};function Lc(t,e,r){var n=2*Math.PI*6378137/256/Math.pow(2,r);return[t*n-2*Math.PI*6378137/2,e*n-2*Math.PI*6378137/2]}Cc.prototype.send=function(t,e,r,n,a){var i=this;void 0===a&&(a=!1);var o=Math.round(1e18*Math.random()).toString(36).substring(0,10);r&&(this.callbacks[o]=r);var s=S(this.globalScope)?void 0:[];return this.target.postMessage({id:o,type:t,hasCallback:!!r,targetMapId:n,mustQueue:a,sourceMapId:this.mapId,data:Nn(e,s)},s),{cancel:function(){r&&delete i.callbacks[o],i.target.postMessage({id:o,type:"<cancel>",targetMapId:n,sourceMapId:i.mapId})}}},Cc.prototype.receive=function(t){var e=t.data,r=e.id;if(r&&(!e.targetMapId||this.mapId===e.targetMapId))if("<cancel>"===e.type){delete this.tasks[r];var n=this.cancelCallbacks[r];delete this.cancelCallbacks[r],n&&n()}else k()||e.mustQueue?(this.tasks[r]=e,this.taskQueue.push(r),this.invoker.trigger()):this.processTask(r,e)},Cc.prototype.process=function(){if(this.taskQueue.length){var t=this.taskQueue.shift(),e=this.tasks[t];delete this.tasks[t],this.taskQueue.length&&this.invoker.trigger(),e&&this.processTask(t,e)}},Cc.prototype.processTask=function(t,e){var r=this;if("<response>"===e.type){var n=this.callbacks[t];delete this.callbacks[t],n&&(e.error?n(jn(e.error)):n(null,jn(e.data)))}else{var a=!1,i=S(this.globalScope)?void 0:[],o=e.hasCallback?function(e,n){a=!0,delete r.cancelCallbacks[t],r.target.postMessage({id:t,type:"<response>",sourceMapId:r.mapId,error:e?Nn(e):null,data:Nn(n,i)},i)}:function(t){a=!0},s=null,l=jn(e.data);if(this.parent[e.type])s=this.parent[e.type](e.sourceMapId,l,o);else if(this.parent.getWorkerSource){var c=e.type.split(".");s=this.parent.getWorkerSource(e.sourceMapId,c[0],l.source)[c[1]](l,o)}else o(new Error("Could not find function "+e.type));!a&&s&&s.cancel&&(this.cancelCallbacks[t]=s.cancel)}},Cc.prototype.remove=function(){this.invoker.remove(),this.target.removeEventListener("message",this.receive,!1)};var Pc=function(t,e){t&&(e?this.setSouthWest(t).setNorthEast(e):4===t.length?this.setSouthWest([t[0],t[1]]).setNorthEast([t[2],t[3]]):this.setSouthWest(t[0]).setNorthEast(t[1]))};Pc.prototype.setNorthEast=function(t){return this._ne=t instanceof Ic?new Ic(t.lng,t.lat):Ic.convert(t),this},Pc.prototype.setSouthWest=function(t){return this._sw=t instanceof Ic?new Ic(t.lng,t.lat):Ic.convert(t),this},Pc.prototype.extend=function(t){var e,r,n=this._sw,a=this._ne;if(t instanceof Ic)e=t,r=t;else{if(!(t instanceof Pc))return Array.isArray(t)?4===t.length||t.every(Array.isArray)?this.extend(Pc.convert(t)):this.extend(Ic.convert(t)):this;if(r=t._ne,!(e=t._sw)||!r)return this}return n||a?(n.lng=Math.min(e.lng,n.lng),n.lat=Math.min(e.lat,n.lat),a.lng=Math.max(r.lng,a.lng),a.lat=Math.max(r.lat,a.lat)):(this._sw=new Ic(e.lng,e.lat),this._ne=new Ic(r.lng,r.lat)),this},Pc.prototype.getCenter=function(){return new Ic((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},Pc.prototype.getSouthWest=function(){return this._sw},Pc.prototype.getNorthEast=function(){return this._ne},Pc.prototype.getNorthWest=function(){return new Ic(this.getWest(),this.getNorth())},Pc.prototype.getSouthEast=function(){return new Ic(this.getEast(),this.getSouth())},Pc.prototype.getWest=function(){return this._sw.lng},Pc.prototype.getSouth=function(){return this._sw.lat},Pc.prototype.getEast=function(){return this._ne.lng},Pc.prototype.getNorth=function(){return this._ne.lat},Pc.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},Pc.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},Pc.prototype.isEmpty=function(){return!(this._sw&&this._ne)},Pc.prototype.contains=function(t){var e=Ic.convert(t),r=e.lng,n=e.lat,a=this._sw.lng<=r&&r<=this._ne.lng;return this._sw.lng>this._ne.lng&&(a=this._sw.lng>=r&&r>=this._ne.lng),this._sw.lat<=n&&n<=this._ne.lat&&a},Pc.convert=function(t){return!t||t instanceof Pc?t:new Pc(t)};var Ic=function(t,e){if(isNaN(t)||isNaN(e))throw new Error("Invalid LngLat object: ("+t+", "+e+")");if(this.lng=+t,this.lat=+e,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};Ic.prototype.wrap=function(){return new Ic(c(this.lng,-180,180),this.lat)},Ic.prototype.toArray=function(){return[this.lng,this.lat]},Ic.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},Ic.prototype.distanceTo=function(t){var e=Math.PI/180,r=this.lat*e,n=t.lat*e,a=Math.sin(r)*Math.sin(n)+Math.cos(r)*Math.cos(n)*Math.cos((t.lng-this.lng)*e);return 6371008.8*Math.acos(Math.min(a,1))},Ic.prototype.toBounds=function(t){void 0===t&&(t=0);var e=360*t/40075017,r=e/Math.cos(Math.PI/180*this.lat);return new Pc(new Ic(this.lng-r,this.lat-e),new Ic(this.lng+r,this.lat+e))},Ic.convert=function(t){if(t instanceof Ic)return t;if(Array.isArray(t)&&(2===t.length||3===t.length))return new Ic(Number(t[0]),Number(t[1]));if(!Array.isArray(t)&&"object"==typeof t&&null!==t)return new Ic(Number("lng"in t?t.lng:t.lon),Number(t.lat));throw new Error("LngLatLikeargument must be specified as a LngLat instance, an object {lng: <lng>, lat: <lat>}, an object {lon: <lng>, lat: <lat>}, or an array of [<lng>, <lat>]")};var zc=2*Math.PI*6371008.8;function Oc(t){return zc*Math.cos(t*Math.PI/180)}function Dc(t){return(180+t)/360}function Rc(t){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t*Math.PI/360)))/360}function Fc(t,e){return t/Oc(e)}function Bc(t){return 360/Math.PI*Math.atan(Math.exp((180-360*t)*Math.PI/180))-90}var Nc=function(t,e,r){void 0===r&&(r=0),this.x=+t,this.y=+e,this.z=+r};Nc.fromLngLat=function(t,e){void 0===e&&(e=0);var r=Ic.convert(t);return new Nc(Dc(r.lng),Rc(r.lat),Fc(e,r.lat))},Nc.prototype.toLngLat=function(){return new Ic(360*this.x-180,Bc(this.y))},Nc.prototype.toAltitude=function(){return this.z*Oc(Bc(this.y))},Nc.prototype.meterInMercatorCoordinateUnits=function(){return 1/zc*(t=Bc(this.y),1/Math.cos(t*Math.PI/180));var t};var jc=function(t,e,r){this.z=t,this.x=e,this.y=r,this.key=qc(0,t,t,e,r)};jc.prototype.equals=function(t){return this.z===t.z&&this.x===t.x&&this.y===t.y},jc.prototype.url=function(t,e){var r,n,a,i,o,s=(n=this.y,a=this.z,i=Lc(256*(r=this.x),256*(n=Math.pow(2,a)-n-1),a),o=Lc(256*(r+1),256*(n+1),a),i[0]+","+i[1]+","+o[0]+","+o[1]),l=function(t,e,r){for(var n,a="",i=t;i>0;i--)a+=(e&(n=1<<i-1)?1:0)+(r&n?2:0);return a}(this.z,this.x,this.y);return t[(this.x+this.y)%t.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("tms"===e?Math.pow(2,this.z)-this.y-1:this.y)).replace("{quadkey}",l).replace("{bbox-epsg-3857}",s)},jc.prototype.getTilePoint=function(t){var e=Math.pow(2,this.z);return new a(8192*(t.x*e-this.x),8192*(t.y*e-this.y))},jc.prototype.toString=function(){return this.z+"/"+this.x+"/"+this.y};var Vc=function(t,e){this.wrap=t,this.canonical=e,this.key=qc(t,e.z,e.z,e.x,e.y)},Uc=function(t,e,r,n,a){this.overscaledZ=t,this.wrap=e,this.canonical=new jc(r,+n,+a),this.key=qc(e,t,r,n,a)};function qc(t,e,r,n,a){(t*=2)<0&&(t=-1*t-1);var i=1<<r;return(i*i*t+i*a+n).toString(36)+r.toString(36)+e.toString(36)}Uc.prototype.equals=function(t){return this.overscaledZ===t.overscaledZ&&this.wrap===t.wrap&&this.canonical.equals(t.canonical)},Uc.prototype.scaledTo=function(t){var e=this.canonical.z-t;return t>this.canonical.z?new Uc(t,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new Uc(t,this.wrap,t,this.canonical.x>>e,this.canonical.y>>e)},Uc.prototype.calculateScaledKey=function(t,e){var r=this.canonical.z-t;return t>this.canonical.z?qc(this.wrap*+e,t,this.canonical.z,this.canonical.x,this.canonical.y):qc(this.wrap*+e,t,t,this.canonical.x>>r,this.canonical.y>>r)},Uc.prototype.isChildOf=function(t){if(t.wrap!==this.wrap)return!1;var e=this.canonical.z-t.canonical.z;return 0===t.overscaledZ||t.overscaledZ<this.overscaledZ&&t.canonical.x===this.canonical.x>>e&&t.canonical.y===this.canonical.y>>e},Uc.prototype.children=function(t){if(this.overscaledZ>=t)return[new Uc(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];var e=this.canonical.z+1,r=2*this.canonical.x,n=2*this.canonical.y;return[new Uc(e,this.wrap,e,r,n),new Uc(e,this.wrap,e,r+1,n),new Uc(e,this.wrap,e,r,n+1),new Uc(e,this.wrap,e,r+1,n+1)]},Uc.prototype.isLessThan=function(t){return this.wrap<t.wrap||!(this.wrap>t.wrap)&&(this.overscaledZ<t.overscaledZ||!(this.overscaledZ>t.overscaledZ)&&(this.canonical.x<t.canonical.x||!(this.canonical.x>t.canonical.x)&&this.canonical.y<t.canonical.y))},Uc.prototype.wrapped=function(){return new Uc(this.overscaledZ,0,this.canonical.z,this.canonical.x,this.canonical.y)},Uc.prototype.unwrapTo=function(t){return new Uc(this.overscaledZ,t,this.canonical.z,this.canonical.x,this.canonical.y)},Uc.prototype.overscaleFactor=function(){return Math.pow(2,this.overscaledZ-this.canonical.z)},Uc.prototype.toUnwrapped=function(){return new Vc(this.wrap,this.canonical)},Uc.prototype.toString=function(){return this.overscaledZ+"/"+this.canonical.x+"/"+this.canonical.y},Uc.prototype.getTilePoint=function(t){return this.canonical.getTilePoint(new Nc(t.x-this.wrap,t.y))},Dn("CanonicalTileID",jc),Dn("OverscaledTileID",Uc,{omit:["posMatrix"]});var Hc=function(t,e,r){if(this.uid=t,e.height!==e.width)throw new RangeError("DEM tiles must be square");if(r&&"mapbox"!==r&&"terrarium"!==r)return _('"'+r+'" is not a valid encoding type. Valid types include "mapbox" and "terrarium".');this.stride=e.height;var n=this.dim=e.height-2;this.data=new Uint32Array(e.data.buffer),this.encoding=r||"mapbox";for(var a=0;a<n;a++)this.data[this._idx(-1,a)]=this.data[this._idx(0,a)],this.data[this._idx(n,a)]=this.data[this._idx(n-1,a)],this.data[this._idx(a,-1)]=this.data[this._idx(a,0)],this.data[this._idx(a,n)]=this.data[this._idx(a,n-1)];this.data[this._idx(-1,-1)]=this.data[this._idx(0,0)],this.data[this._idx(n,-1)]=this.data[this._idx(n-1,0)],this.data[this._idx(-1,n)]=this.data[this._idx(0,n-1)],this.data[this._idx(n,n)]=this.data[this._idx(n-1,n-1)]};Hc.prototype.get=function(t,e){var r=new Uint8Array(this.data.buffer),n=4*this._idx(t,e);return("terrarium"===this.encoding?this._unpackTerrarium:this._unpackMapbox)(r[n],r[n+1],r[n+2])},Hc.prototype.getUnpackVector=function(){return"terrarium"===this.encoding?[256,1,1/256,32768]:[6553.6,25.6,.1,1e4]},Hc.prototype._idx=function(t,e){if(t<-1||t>=this.dim+1||e<-1||e>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(e+1)*this.stride+(t+1)},Hc.prototype._unpackMapbox=function(t,e,r){return(256*t*256+256*e+r)/10-1e4},Hc.prototype._unpackTerrarium=function(t,e,r){return 256*t+e+r/256-32768},Hc.prototype.getPixels=function(){return new po({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))},Hc.prototype.backfillBorder=function(t,e,r){if(this.dim!==t.dim)throw new Error("dem dimension mismatch");var n=e*this.dim,a=e*this.dim+this.dim,i=r*this.dim,o=r*this.dim+this.dim;switch(e){case-1:n=a-1;break;case 1:a=n+1}switch(r){case-1:i=o-1;break;case 1:o=i+1}for(var s=-e*this.dim,l=-r*this.dim,c=i;c<o;c++)for(var u=n;u<a;u++)this.data[this._idx(u,c)]=t.data[this._idx(u+s,c+l)]},Dn("DEMData",Hc);var Gc=function(t){this._stringToNumber={},this._numberToString=[];for(var e=0;e<t.length;e++){var r=t[e];this._stringToNumber[r]=e,this._numberToString[e]=r}};Gc.prototype.encode=function(t){return this._stringToNumber[t]},Gc.prototype.decode=function(t){return this._numberToString[t]};var Yc=function(t,e,r,n,a){this.type="Feature",this._vectorTileFeature=t,t._z=e,t._x=r,t._y=n,this.properties=t.properties,this.id=a},Wc={geometry:{configurable:!0}};Wc.geometry.get=function(){return void 0===this._geometry&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry},Wc.geometry.set=function(t){this._geometry=t},Yc.prototype.toJSON=function(){var t={geometry:this.geometry};for(var e in this)"_geometry"!==e&&"_vectorTileFeature"!==e&&(t[e]=this[e]);return t},Object.defineProperties(Yc.prototype,Wc);var Zc=function(){this.state={},this.stateChanges={},this.deletedStates={}};Zc.prototype.updateState=function(t,e,r){var n=String(e);if(this.stateChanges[t]=this.stateChanges[t]||{},this.stateChanges[t][n]=this.stateChanges[t][n]||{},u(this.stateChanges[t][n],r),null===this.deletedStates[t])for(var a in this.deletedStates[t]={},this.state[t])a!==n&&(this.deletedStates[t][a]=null);else if(this.deletedStates[t]&&null===this.deletedStates[t][n])for(var i in this.deletedStates[t][n]={},this.state[t][n])r[i]||(this.deletedStates[t][n][i]=null);else for(var o in r)this.deletedStates[t]&&this.deletedStates[t][n]&&null===this.deletedStates[t][n][o]&&delete this.deletedStates[t][n][o]},Zc.prototype.removeFeatureState=function(t,e,r){if(null!==this.deletedStates[t]){var n=String(e);if(this.deletedStates[t]=this.deletedStates[t]||{},r&&void 0!==e)null!==this.deletedStates[t][n]&&(this.deletedStates[t][n]=this.deletedStates[t][n]||{},this.deletedStates[t][n][r]=null);else if(void 0!==e)if(this.stateChanges[t]&&this.stateChanges[t][n])for(r in this.deletedStates[t][n]={},this.stateChanges[t][n])this.deletedStates[t][n][r]=null;else this.deletedStates[t][n]=null;else this.deletedStates[t]=null}},Zc.prototype.getState=function(t,e){var r=String(e),n=u({},(this.state[t]||{})[r],(this.stateChanges[t]||{})[r]);if(null===this.deletedStates[t])return{};if(this.deletedStates[t]){var a=this.deletedStates[t][e];if(null===a)return{};for(var i in a)delete n[i]}return n},Zc.prototype.initializeTileState=function(t,e){t.setFeatureState(this.state,e)},Zc.prototype.coalesceChanges=function(t,e){var r={};for(var n in this.stateChanges){this.state[n]=this.state[n]||{};var a={};for(var i in this.stateChanges[n])this.state[n][i]||(this.state[n][i]={}),u(this.state[n][i],this.stateChanges[n][i]),a[i]=this.state[n][i];r[n]=a}for(var o in this.deletedStates){this.state[o]=this.state[o]||{};var s={};if(null===this.deletedStates[o])for(var l in this.state[o])s[l]={},this.state[o][l]={};else for(var c in this.deletedStates[o]){if(null===this.deletedStates[o][c])this.state[o][c]={};else for(var h=0,f=Object.keys(this.deletedStates[o][c]);h<f.length;h+=1)delete this.state[o][c][f[h]];s[c]=this.state[o][c]}r[o]=r[o]||{},u(r[o],s)}if(this.stateChanges={},this.deletedStates={},0!==Object.keys(r).length)for(var p in t)t[p].setFeatureState(r,e)};var Xc=function(t,e){this.tileID=t,this.x=t.canonical.x,this.y=t.canonical.y,this.z=t.canonical.z,this.grid=new Ln(8192,16,0),this.grid3D=new Ln(8192,16,0),this.featureIndexArray=new ri,this.promoteId=e};function Jc(t,e,r,n,a){return v(t,(function(t,i){var o=e instanceof fa?e.get(i):null;return o&&o.evaluate?o.evaluate(r,n,a):o}))}function Kc(t){for(var e=1/0,r=1/0,n=-1/0,a=-1/0,i=0,o=t;i<o.length;i+=1){var s=o[i];e=Math.min(e,s.x),r=Math.min(r,s.y),n=Math.max(n,s.x),a=Math.max(a,s.y)}return{minX:e,minY:r,maxX:n,maxY:a}}function Qc(t,e){return e-t}Xc.prototype.insert=function(t,e,r,n,a,i){var o=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(r,n,a);for(var s=i?this.grid3D:this.grid,l=0;l<e.length;l++){for(var c=e[l],u=[1/0,1/0,-1/0,-1/0],h=0;h<c.length;h++){var f=c[h];u[0]=Math.min(u[0],f.x),u[1]=Math.min(u[1],f.y),u[2]=Math.max(u[2],f.x),u[3]=Math.max(u[3],f.y)}u[0]<8192&&u[1]<8192&&u[2]>=0&&u[3]>=0&&s.insert(o,u[0],u[1],u[2],u[3])}},Xc.prototype.loadVTLayers=function(){return this.vtLayers||(this.vtLayers=new gs.VectorTile(new Hs(this.rawTileData)).layers,this.sourceLayerCoder=new Gc(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers},Xc.prototype.query=function(t,e,r,n){var i=this;this.loadVTLayers();for(var o=t.params||{},s=8192/t.tileSize/t.scale,l=rn(o.filter),c=t.queryGeometry,u=t.queryPadding*s,h=Kc(c),f=this.grid.query(h.minX-u,h.minY-u,h.maxX+u,h.maxY+u),p=Kc(t.cameraQueryGeometry),d=0,g=this.grid3D.query(p.minX-u,p.minY-u,p.maxX+u,p.maxY+u,(function(e,r,n,i){return function(t,e,r,n,i){for(var o=0,s=t;o<s.length;o+=1){var l=s[o];if(e<=l.x&&r<=l.y&&n>=l.x&&i>=l.y)return!0}var c=[new a(e,r),new a(e,i),new a(n,i),new a(n,r)];if(t.length>2)for(var u=0,h=c;u<h.length;u+=1)if(Wi(t,h[u]))return!0;for(var f=0;f<t.length-1;f++)if(Zi(t[f],t[f+1],c))return!0;return!1}(t.cameraQueryGeometry,e-u,r-u,n+u,i+u)}));d<g.length;d+=1)f.push(g[d]);f.sort(Qc);for(var m,v={},y=function(a){var u=f[a];if(u!==m){m=u;var h=i.featureIndexArray.get(u),p=null;i.loadMatchingFeature(v,h.bucketIndex,h.sourceLayerIndex,h.featureIndex,l,o.layers,o.availableImages,e,r,n,(function(e,r,n){return p||(p=Di(e)),r.queryIntersectsFeature(c,e,n,p,i.z,t.transform,s,t.pixelPosMatrix)}))}},x=0;x<f.length;x++)y(x);return v},Xc.prototype.loadMatchingFeature=function(t,e,r,n,a,i,o,s,l,c,u){var h=this.bucketLayerIDs[e];if(!i||function(t,e){for(var r=0;r<t.length;r++)if(e.indexOf(t[r])>=0)return!0;return!1}(i,h)){var f=this.sourceLayerCoder.decode(r),p=this.vtLayers[f].feature(n);if(a.filter(new aa(this.tileID.overscaledZ),p))for(var d=this.getId(p,f),g=0;g<h.length;g++){var m=h[g];if(!(i&&i.indexOf(m)<0)){var v=s[m];if(v){var y={};void 0!==d&&c&&(y=c.getState(v.sourceLayer||"_geojsonTileLayer",d));var x=l[m];x.paint=Jc(x.paint,v.paint,p,y,o),x.layout=Jc(x.layout,v.layout,p,y,o);var b=!u||u(p,v,y);if(b){var _=new Yc(p,this.z,this.x,this.y,d);_.layer=x;var w=t[m];void 0===w&&(w=t[m]=[]),w.push({featureIndex:n,feature:_,intersectionZ:b})}}}}}},Xc.prototype.lookupSymbolFeatures=function(t,e,r,n,a,i,o,s){var l={};this.loadVTLayers();for(var c=rn(a),u=0,h=t;u<h.length;u+=1)this.loadMatchingFeature(l,r,n,h[u],c,i,o,s,e);return l},Xc.prototype.hasLayer=function(t){for(var e=0,r=this.bucketLayerIDs;e<r.length;e+=1)for(var n=0,a=r[e];n<a.length;n+=1)if(t===a[n])return!0;return!1},Xc.prototype.getId=function(t,e){var r=t.id;return this.promoteId&&"boolean"==typeof(r=t.properties["string"==typeof this.promoteId?this.promoteId:this.promoteId[e]])&&(r=Number(r)),r},Dn("FeatureIndex",Xc,{omit:["rawTileData","sourceLayerCoder"]});var $c=function(t,e){this.tileID=t,this.uid=f(),this.uses=0,this.tileSize=e,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.expiredRequestCount=0,this.state="loading"};$c.prototype.registerFadeDuration=function(t){var e=t+this.timeAdded;e<R.now()||this.fadeEndTime&&e<this.fadeEndTime||(this.fadeEndTime=e)},$c.prototype.wasRequested=function(){return"errored"===this.state||"loaded"===this.state||"reloading"===this.state},$c.prototype.loadVectorData=function(t,e,r){if(this.hasData()&&this.unloadVectorData(),this.state="loaded",t){for(var n in t.featureIndex&&(this.latestFeatureIndex=t.featureIndex,t.rawTileData?(this.latestRawTileData=t.rawTileData,this.latestFeatureIndex.rawTileData=t.rawTileData):this.latestRawTileData&&(this.latestFeatureIndex.rawTileData=this.latestRawTileData)),this.collisionBoxArray=t.collisionBoxArray,this.buckets=function(t,e){var r={};if(!e)return r;for(var n=function(){var t=i[a],n=t.layerIds.map((function(t){return e.getLayer(t)})).filter(Boolean);if(0!==n.length){t.layers=n,t.stateDependentLayerIds&&(t.stateDependentLayers=t.stateDependentLayerIds.map((function(t){return n.filter((function(e){return e.id===t}))[0]})));for(var o=0,s=n;o<s.length;o+=1)r[s[o].id]=t}},a=0,i=t;a<i.length;a+=1)n();return r}(t.buckets,e.style),this.hasSymbolBuckets=!1,this.buckets){var a=this.buckets[n];if(a instanceof hc){if(this.hasSymbolBuckets=!0,!r)break;a.justReloaded=!0}}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(var i in this.buckets){var o=this.buckets[i];if(o instanceof hc&&o.hasRTLText){this.hasRTLText=!0,na.isLoading()||na.isLoaded()||"deferred"!==ea()||ra();break}}for(var s in this.queryPadding=0,this.buckets){var l=this.buckets[s];this.queryPadding=Math.max(this.queryPadding,e.style.getLayer(s).queryRadius(l))}t.imageAtlas&&(this.imageAtlas=t.imageAtlas),t.glyphAtlasImage&&(this.glyphAtlasImage=t.glyphAtlasImage)}else this.collisionBoxArray=new Za},$c.prototype.unloadVectorData=function(){for(var t in this.buckets)this.buckets[t].destroy();this.buckets={},this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.imageAtlas&&(this.imageAtlas=null),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.latestFeatureIndex=null,this.state="unloaded"},$c.prototype.getBucket=function(t){return this.buckets[t.id]},$c.prototype.upload=function(t){for(var e in this.buckets){var r=this.buckets[e];r.uploadPending()&&r.upload(t)}var n=t.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new Sc(t,this.imageAtlas.image,n.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new Sc(t,this.glyphAtlasImage,n.ALPHA),this.glyphAtlasImage=null)},$c.prototype.prepare=function(t){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(t,this.imageAtlasTexture)},$c.prototype.queryRenderedFeatures=function(t,e,r,n,a,i,o,s,l,c){return this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData?this.latestFeatureIndex.query({queryGeometry:n,cameraQueryGeometry:a,scale:i,tileSize:this.tileSize,pixelPosMatrix:c,transform:s,params:o,queryPadding:this.queryPadding*l},t,e,r):{}},$c.prototype.querySourceFeatures=function(t,e){var r=this.latestFeatureIndex;if(r&&r.rawTileData){var n=r.loadVTLayers(),a=e?e.sourceLayer:"",i=n._geojsonTileLayer||n[a];if(i)for(var o=rn(e&&e.filter),s=this.tileID.canonical,l=s.z,c=s.x,u=s.y,h={z:l,x:c,y:u},f=0;f<i.length;f++){var p=i.feature(f);if(o.filter(new aa(this.tileID.overscaledZ),p)){var d=r.getId(p,a),g=new Yc(p,l,c,u,d);g.tile=h,t.push(g)}}}},$c.prototype.hasData=function(){return"loaded"===this.state||"reloading"===this.state||"expired"===this.state},$c.prototype.patternsLoaded=function(){return this.imageAtlas&&!!Object.keys(this.imageAtlas.patternPositions).length},$c.prototype.setExpiryData=function(t){var e=this.expirationTime;if(t.cacheControl){var r=A(t.cacheControl);r["max-age"]&&(this.expirationTime=Date.now()+1e3*r["max-age"])}else t.expires&&(this.expirationTime=new Date(t.expires).getTime());if(this.expirationTime){var n=Date.now(),a=!1;if(this.expirationTime>n)a=!1;else if(e)if(this.expirationTime<e)a=!0;else{var i=this.expirationTime-e;i?this.expirationTime=n+Math.max(i,3e4):a=!0}else a=!0;a?(this.expiredRequestCount++,this.state="expired"):this.expiredRequestCount=0}},$c.prototype.getExpiryTimeout=function(){if(this.expirationTime)return this.expiredRequestCount?1e3*(1<<Math.min(this.expiredRequestCount-1,31)):Math.min(this.expirationTime-(new Date).getTime(),Math.pow(2,31)-1)},$c.prototype.setFeatureState=function(t,e){if(this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData&&0!==Object.keys(t).length){var r=this.latestFeatureIndex.loadVTLayers();for(var n in this.buckets)if(e.style.hasLayer(n)){var a=this.buckets[n],i=a.layers[0].sourceLayer||"_geojsonTileLayer",o=r[i],s=t[i];if(o&&s&&0!==Object.keys(s).length){a.update(s,o,this.imageAtlas&&this.imageAtlas.patternPositions||{});var l=e&&e.style&&e.style.getLayer(n);l&&(this.queryPadding=Math.max(this.queryPadding,l.queryRadius(a)))}}}},$c.prototype.holdingForFade=function(){return void 0!==this.symbolFadeHoldUntil},$c.prototype.symbolFadeFinished=function(){return!this.symbolFadeHoldUntil||this.symbolFadeHoldUntil<R.now()},$c.prototype.clearFadeHold=function(){this.symbolFadeHoldUntil=void 0},$c.prototype.setHoldDuration=function(t){this.symbolFadeHoldUntil=R.now()+t},$c.prototype.setDependencies=function(t,e){for(var r={},n=0,a=e;n<a.length;n+=1)r[a[n]]=!0;this.dependencies[t]=r},$c.prototype.hasDependency=function(t,e){for(var r=0,n=t;r<n.length;r+=1){var a=this.dependencies[n[r]];if(a)for(var i=0,o=e;i<o.length;i+=1)if(a[o[i]])return!0}return!1};var tu=self.performance,eu=function(t){this._marks={start:[t.url,"start"].join("#"),end:[t.url,"end"].join("#"),measure:t.url.toString()},tu.mark(this._marks.start)};eu.prototype.finish=function(){tu.mark(this._marks.end);var t=tu.getEntriesByName(this._marks.measure);return 0===t.length&&(tu.measure(this._marks.measure,this._marks.start,this._marks.end),t=tu.getEntriesByName(this._marks.measure),tu.clearMarks(this._marks.start),tu.clearMarks(this._marks.end),tu.clearMeasures(this._marks.measure)),t},t.Actor=Cc,t.AlphaImage=fo,t.CanonicalTileID=jc,t.CollisionBoxArray=Za,t.Color=Kt,t.DEMData=Hc,t.DataConstantProperty=pa,t.DictionaryCoder=Gc,t.EXTENT=8192,t.ErrorEvent=kt,t.EvaluationParameters=aa,t.Event=Tt,t.Evented=At,t.FeatureIndex=Xc,t.FillBucket=rs,t.FillExtrusionBucket=xs,t.ImageAtlas=dl,t.ImagePosition=fl,t.LineBucket=Cs,t.LngLat=Ic,t.LngLatBounds=Pc,t.MercatorCoordinate=Nc,t.ONE_EM=24,t.OverscaledTileID=Uc,t.Point=a,t.Point$1=a,t.Properties=ya,t.Protobuf=Hs,t.RGBAImage=po,t.RequestManager=q,t.RequestPerformance=eu,t.ResourceType=ft,t.SegmentVector=ai,t.SourceFeatureState=Zc,t.StructArrayLayout1ui2=Ha,t.StructArrayLayout2f1f2i16=Da,t.StructArrayLayout2i4=Aa,t.StructArrayLayout3ui6=Fa,t.StructArrayLayout4i8=Ma,t.SymbolBucket=hc,t.Texture=Sc,t.Tile=$c,t.Transitionable=sa,t.Uniform1f=vi,t.Uniform1i=mi,t.Uniform2f=yi,t.Uniform3f=xi,t.Uniform4f=bi,t.UniformColor=_i,t.UniformMatrix4f=Ti,t.UnwrappedTileID=Vc,t.ValidationError=St,t.WritingMode=gl,t.ZoomHistory=Vn,t.add=function(t,e,r){return t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t},t.addDynamicAttributes=sc,t.asyncAll=function(t,e,r){if(!t.length)return r(null,[]);var n=t.length,a=new Array(t.length),i=null;t.forEach((function(t,o){e(t,(function(t,e){t&&(i=t),a[o]=e,0==--n&&r(i,a)}))}))},t.bezier=o,t.bindAll=g,t.browser=R,t.cacheEntryPossiblyAdded=function(t){++ut>ot&&(t.getActor().send("enforceCacheSizeLimit",it),ut=0)},t.clamp=l,t.clearTileCache=function(t){var e=self.caches.delete("mapbox-tiles");t&&e.catch(t).then((function(){return t()}))},t.clipLine=jl,t.clone=function(t){var e=new to(16);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},t.clone$1=x,t.clone$2=function(t){var e=new to(3);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e},t.collisionCircleLayout=Ns,t.config=F,t.create=function(){var t=new to(16);return to!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0),t[0]=1,t[5]=1,t[10]=1,t[15]=1,t},t.create$1=function(){var t=new to(9);return to!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[5]=0,t[6]=0,t[7]=0),t[0]=1,t[4]=1,t[8]=1,t},t.create$2=function(){var t=new to(4);return to!=Float32Array&&(t[1]=0,t[2]=0),t[0]=1,t[3]=1,t},t.createCommonjsModule=e,t.createExpression=qr,t.createLayout=Ta,t.createStyleLayer=function(t){return"custom"===t.type?new bc(t):new _c[t.type](t)},t.cross=function(t,e,r){var n=e[0],a=e[1],i=e[2],o=r[0],s=r[1],l=r[2];return t[0]=a*l-i*s,t[1]=i*o-n*l,t[2]=n*s-a*o,t},t.deepEqual=function t(e,r){if(Array.isArray(e)){if(!Array.isArray(r)||e.length!==r.length)return!1;for(var n=0;n<e.length;n++)if(!t(e[n],r[n]))return!1;return!0}if("object"==typeof e&&null!==e&&null!==r){if("object"!=typeof r)return!1;if(Object.keys(e).length!==Object.keys(r).length)return!1;for(var a in e)if(!t(e[a],r[a]))return!1;return!0}return e===r},t.dot=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]},t.dot$1=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]},t.ease=s,t.emitValidationErrors=Cn,t.endsWith=m,t.enforceCacheSizeLimit=function(t){st(),Q&&Q.then((function(e){e.keys().then((function(r){for(var n=0;n<r.length-t;n++)e.delete(r[n])}))}))},t.evaluateSizeForFeature=Pl,t.evaluateSizeForZoom=Il,t.evaluateVariableOffset=$l,t.evented=ta,t.extend=u,t.featureFilter=rn,t.filterObject=y,t.fromRotation=function(t,e){var r=Math.sin(e),n=Math.cos(e);return t[0]=n,t[1]=r,t[2]=0,t[3]=-r,t[4]=n,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t},t.getAnchorAlignment=Ml,t.getAnchorJustification=tc,t.getArrayBuffer=yt,t.getImage=bt,t.getJSON=function(t,e){return vt(u(t,{type:"json"}),e)},t.getRTLTextPluginStatus=ea,t.getReferrer=mt,t.getVideo=function(t,e){var r,n,a=self.document.createElement("video");a.muted=!0,a.onloadstart=function(){e(null,a)};for(var i=0;i<t.length;i++){var o=self.document.createElement("source");r=t[i],n=void 0,(n=self.document.createElement("a")).href=r,(n.protocol!==self.document.location.protocol||n.host!==self.document.location.host)&&(a.crossOrigin="Anonymous"),o.src=t[i],a.appendChild(o)}return{cancel:function(){}}},t.identity=eo,t.invert=function(t,e){var r=e[0],n=e[1],a=e[2],i=e[3],o=e[4],s=e[5],l=e[6],c=e[7],u=e[8],h=e[9],f=e[10],p=e[11],d=e[12],g=e[13],m=e[14],v=e[15],y=r*s-n*o,x=r*l-a*o,b=r*c-i*o,_=n*l-a*s,w=n*c-i*s,T=a*c-i*l,k=u*g-h*d,A=u*m-f*d,M=u*v-p*d,S=h*m-f*g,E=h*v-p*g,C=f*v-p*m,L=y*C-x*E+b*S+_*M-w*A+T*k;return L?(t[0]=(s*C-l*E+c*S)*(L=1/L),t[1]=(a*E-n*C-i*S)*L,t[2]=(g*T-m*w+v*_)*L,t[3]=(f*w-h*T-p*_)*L,t[4]=(l*M-o*C-c*A)*L,t[5]=(r*C-a*M+i*A)*L,t[6]=(m*b-d*T-v*x)*L,t[7]=(u*T-f*b+p*x)*L,t[8]=(o*E-s*M+c*k)*L,t[9]=(n*M-r*E-i*k)*L,t[10]=(d*w-g*b+v*y)*L,t[11]=(h*b-u*w-p*y)*L,t[12]=(s*A-o*S-l*k)*L,t[13]=(r*S-n*A+a*k)*L,t[14]=(g*x-d*_-m*y)*L,t[15]=(u*_-h*x+f*y)*L,t):null},t.isChar=Un,t.isMapboxURL=H,t.keysDifference=function(t,e){var r=[];for(var n in t)n in e||r.push(n);return r},t.makeRequest=vt,t.mapObject=v,t.mercatorXfromLng=Dc,t.mercatorYfromLat=Rc,t.mercatorZfromAltitude=Fc,t.mul=ao,t.multiply=ro,t.mvt=gs,t.normalize=function(t,e){var r=e[0],n=e[1],a=e[2],i=r*r+n*n+a*a;return i>0&&(i=1/Math.sqrt(i)),t[0]=e[0]*i,t[1]=e[1]*i,t[2]=e[2]*i,t},t.number=Ve,t.offscreenCanvasSupported=ht,t.ortho=function(t,e,r,n,a,i,o){var s=1/(e-r),l=1/(n-a),c=1/(i-o);return t[0]=-2*s,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*l,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*c,t[11]=0,t[12]=(e+r)*s,t[13]=(a+n)*l,t[14]=(o+i)*c,t[15]=1,t},t.parseGlyphPBF=function(t){return new Hs(t).readFields(ll,[])},t.pbf=Hs,t.performSymbolLayout=function(t,e,r,n,a,i,o){t.createArrays(),t.tilePixelRatio=8192/(512*t.overscaling),t.compareText={},t.iconsNeedLinear=!1;var s=t.layers[0].layout,l=t.layers[0]._unevaluatedLayout._values,c={};if("composite"===t.textSizeData.kind){var u=t.textSizeData,h=u.maxZoom;c.compositeTextSizes=[l["text-size"].possiblyEvaluate(new aa(u.minZoom),o),l["text-size"].possiblyEvaluate(new aa(h),o)]}if("composite"===t.iconSizeData.kind){var f=t.iconSizeData,p=f.maxZoom;c.compositeIconSizes=[l["icon-size"].possiblyEvaluate(new aa(f.minZoom),o),l["icon-size"].possiblyEvaluate(new aa(p),o)]}c.layoutTextSize=l["text-size"].possiblyEvaluate(new aa(t.zoom+1),o),c.layoutIconSize=l["icon-size"].possiblyEvaluate(new aa(t.zoom+1),o),c.textMaxSize=l["text-size"].possiblyEvaluate(new aa(18));for(var d=24*s.get("text-line-height"),g="map"===s.get("text-rotation-alignment")&&"point"!==s.get("symbol-placement"),m=s.get("text-keep-upright"),v=s.get("text-size"),y=function(){var i=b[x],l=s.get("text-font").evaluate(i,{},o).join(","),u=v.evaluate(i,{},o),h=c.layoutTextSize.evaluate(i,{},o),f=c.layoutIconSize.evaluate(i,{},o),p={horizontal:{},vertical:void 0},y=i.text,w=[0,0];if(y){var T=y.toString(),k=24*s.get("text-letter-spacing").evaluate(i,{},o),A=function(t){for(var e=0,r=t;e<r.length;e+=1)if(n=r[e].charCodeAt(0),Un.Arabic(n)||Un["Arabic Supplement"](n)||Un["Arabic Extended-A"](n)||Un["Arabic Presentation Forms-A"](n)||Un["Arabic Presentation Forms-B"](n))return!1;var n;return!0}(T)?k:0,M=s.get("text-anchor").evaluate(i,{},o),S=s.get("text-variable-anchor");if(!S){var E=s.get("text-radial-offset").evaluate(i,{},o);w=E?$l(M,[24*E,Ql]):s.get("text-offset").evaluate(i,{},o).map((function(t){return 24*t}))}var C=g?"center":s.get("text-justify").evaluate(i,{},o),L=s.get("symbol-placement"),P="point"===L?24*s.get("text-max-width").evaluate(i,{},o):0,I=function(){t.allowVerticalPlacement&&qn(T)&&(p.vertical=yl(y,e,r,a,l,P,d,M,"left",A,w,gl.vertical,!0,L,h,u))};if(!g&&S){for(var z="auto"===C?S.map((function(t){return tc(t)})):[C],O=!1,D=0;D<z.length;D++){var R=z[D];if(!p.horizontal[R])if(O)p.horizontal[R]=p.horizontal[0];else{var F=yl(y,e,r,a,l,P,d,"center",R,A,w,gl.horizontal,!1,L,h,u);F&&(p.horizontal[R]=F,O=1===F.positionedLines.length)}}I()}else{"auto"===C&&(C=tc(M));var B=yl(y,e,r,a,l,P,d,M,C,A,w,gl.horizontal,!1,L,h,u);B&&(p.horizontal[C]=B),I(),qn(T)&&g&&m&&(p.vertical=yl(y,e,r,a,l,P,d,M,C,A,w,gl.vertical,!1,L,h,u))}}var N=void 0,j=!1;if(i.icon&&i.icon.name){var V=n[i.icon.name];V&&(N=function(t,e,r){var n=Ml(r),a=e[0]-t.displaySize[0]*n.horizontalAlign,i=e[1]-t.displaySize[1]*n.verticalAlign;return{image:t,top:i,bottom:i+t.displaySize[1],left:a,right:a+t.displaySize[0]}}(a[i.icon.name],s.get("icon-offset").evaluate(i,{},o),s.get("icon-anchor").evaluate(i,{},o)),j=V.sdf,void 0===t.sdfIcons?t.sdfIcons=V.sdf:t.sdfIcons!==V.sdf&&_("Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer"),(V.pixelRatio!==t.pixelRatio||0!==s.get("icon-rotate").constantOr(1))&&(t.iconsNeedLinear=!0))}var U=rc(p.horizontal)||p.vertical;t.iconsInText=!!U&&U.iconsInText,(U||N)&&function(t,e,r,n,a,i,o,s,l,c,u){var h=i.textMaxSize.evaluate(e,{});void 0===h&&(h=o);var f,p=t.layers[0].layout,d=p.get("icon-offset").evaluate(e,{},u),g=rc(r.horizontal),m=o/24,v=t.tilePixelRatio*m,y=t.tilePixelRatio*h/24,x=t.tilePixelRatio*s,b=t.tilePixelRatio*p.get("symbol-spacing"),w=p.get("text-padding")*t.tilePixelRatio,T=p.get("icon-padding")*t.tilePixelRatio,k=p.get("text-max-angle")/180*Math.PI,A="map"===p.get("text-rotation-alignment")&&"point"!==p.get("symbol-placement"),M="map"===p.get("icon-rotation-alignment")&&"point"!==p.get("symbol-placement"),S=p.get("symbol-placement"),E=b/2,C=p.get("icon-text-fit");n&&"none"!==C&&(t.allowVerticalPlacement&&r.vertical&&(f=El(n,r.vertical,C,p.get("icon-text-fit-padding"),d,m)),g&&(n=El(n,g,C,p.get("icon-text-fit-padding"),d,m)));var L=function(s,h){h.x<0||h.x>=8192||h.y<0||h.y>=8192||function(t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g,m,v,y,x,b,w,T,k,A){var M,S,E,C,L,P=t.addToLineVertexArray(e,r),I=0,z=0,O=0,D=0,R=-1,F=-1,B={},N=ci(""),j=0,V=0;if(void 0===s._unevaluatedLayout.getValue("text-radial-offset")?(j=(M=s.layout.get("text-offset").evaluate(b,{},k).map((function(t){return 24*t})))[0],V=M[1]):(j=24*s.layout.get("text-radial-offset").evaluate(b,{},k),V=Ql),t.allowVerticalPlacement&&n.vertical){var U=s.layout.get("text-rotate").evaluate(b,{},k)+90;C=new Yl(l,e,c,u,h,n.vertical,f,p,d,U),o&&(L=new Yl(l,e,c,u,h,o,m,v,d,U))}if(a){var q=s.layout.get("icon-rotate").evaluate(b,{}),H="none"!==s.layout.get("icon-text-fit"),G=Vl(a,q,T,H),Y=o?Vl(o,q,T,H):void 0;E=new Yl(l,e,c,u,h,a,m,v,!1,q),I=4*G.length;var W=t.iconSizeData,Z=null;"source"===W.kind?(Z=[128*s.layout.get("icon-size").evaluate(b,{})])[0]>32640&&_(t.layerIds[0]+': Value for "icon-size" is >= 255. Reduce your "icon-size".'):"composite"===W.kind&&((Z=[128*w.compositeIconSizes[0].evaluate(b,{},k),128*w.compositeIconSizes[1].evaluate(b,{},k)])[0]>32640||Z[1]>32640)&&_(t.layerIds[0]+': Value for "icon-size" is >= 255. Reduce your "icon-size".'),t.addSymbols(t.icon,G,Z,x,y,b,!1,e,P.lineStartIndex,P.lineLength,-1,k),R=t.icon.placedSymbolArray.length-1,Y&&(z=4*Y.length,t.addSymbols(t.icon,Y,Z,x,y,b,gl.vertical,e,P.lineStartIndex,P.lineLength,-1,k),F=t.icon.placedSymbolArray.length-1)}for(var X in n.horizontal){var J=n.horizontal[X];if(!S){N=ci(J.text);var K=s.layout.get("text-rotate").evaluate(b,{},k);S=new Yl(l,e,c,u,h,J,f,p,d,K)}var Q=1===J.positionedLines.length;if(O+=ec(t,e,J,i,s,d,b,g,P,n.vertical?gl.horizontal:gl.horizontalOnly,Q?Object.keys(n.horizontal):[X],B,R,w,k),Q)break}n.vertical&&(D+=ec(t,e,n.vertical,i,s,d,b,g,P,gl.vertical,["vertical"],B,F,w,k));var $=S?S.boxStartIndex:t.collisionBoxArray.length,tt=S?S.boxEndIndex:t.collisionBoxArray.length,et=C?C.boxStartIndex:t.collisionBoxArray.length,rt=C?C.boxEndIndex:t.collisionBoxArray.length,nt=E?E.boxStartIndex:t.collisionBoxArray.length,at=E?E.boxEndIndex:t.collisionBoxArray.length,it=L?L.boxStartIndex:t.collisionBoxArray.length,ot=L?L.boxEndIndex:t.collisionBoxArray.length,st=-1,lt=function(t,e){return t&&t.circleDiameter?Math.max(t.circleDiameter,e):e};st=lt(S,st),st=lt(C,st),st=lt(E,st);var ct=(st=lt(L,st))>-1?1:0;ct&&(st*=A/24),t.glyphOffsetArray.length>=hc.MAX_GLYPHS&&_("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),void 0!==b.sortKey&&t.addToSortKeyRanges(t.symbolInstances.length,b.sortKey),t.symbolInstances.emplaceBack(e.x,e.y,B.right>=0?B.right:-1,B.center>=0?B.center:-1,B.left>=0?B.left:-1,B.vertical||-1,R,F,N,$,tt,et,rt,nt,at,it,ot,c,O,D,I,z,ct,0,f,j,V,st)}(t,h,s,r,n,a,f,t.layers[0],t.collisionBoxArray,e.index,e.sourceLayerIndex,t.index,v,w,A,l,x,T,M,d,e,i,c,u,o)};if("line"===S)for(var P=0,I=jl(e.geometry,0,0,8192,8192);P<I.length;P+=1)for(var z=I[P],O=0,D=Nl(z,b,k,r.vertical||g,n,24,y,t.overscaling,8192);O<D.length;O+=1){var R=D[O];g&&nc(t,g.text,E,R)||L(z,R)}else if("line-center"===S)for(var F=0,B=e.geometry;F<B.length;F+=1){var N=B[F];if(N.length>1){var j=Bl(N,k,r.vertical||g,n,24,y);j&&L(N,j)}}else if("Polygon"===e.type)for(var V=0,U=Qo(e.geometry,0);V<U.length;V+=1){var q=U[V],H=Xl(q,16);L(q[0],new Cl(H.x,H.y,0))}else if("LineString"===e.type)for(var G=0,Y=e.geometry;G<Y.length;G+=1){var W=Y[G];L(W,new Cl(W[0].x,W[0].y,0))}else if("Point"===e.type)for(var Z=0,X=e.geometry;Z<X.length;Z+=1)for(var J=0,K=X[Z];J<K.length;J+=1){var Q=K[J];L([Q],new Cl(Q.x,Q.y,0))}}(t,i,p,N,n,c,h,f,w,j,o)},x=0,b=t.features;x<b.length;x+=1)y();i&&t.generateCollisionDebugBuffers()},t.perspective=function(t,e,r,n,a){var i,o=1/Math.tan(e/2);return t[0]=o/r,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=o,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=-1,t[12]=0,t[13]=0,t[15]=0,null!=a&&a!==1/0?(t[10]=(a+n)*(i=1/(n-a)),t[14]=2*a*n*i):(t[10]=-1,t[14]=-2*n),t},t.pick=function(t,e){for(var r={},n=0;n<e.length;n++){var a=e[n];a in t&&(r[a]=t[a])}return r},t.plugin=na,t.polygonIntersectsPolygon=Bi,t.postMapLoadEvent=at,t.postTurnstileEvent=rt,t.potpack=hl,t.refProperties=["type","source","source-layer","minzoom","maxzoom","filter","layout"],t.register=Dn,t.registerForPluginStateChange=function(t){return t({pluginStatus:Jn,pluginURL:Kn}),ta.on("pluginStateChange",t),t},t.rotate=function(t,e,r){var n=e[0],a=e[1],i=e[2],o=e[3],s=Math.sin(r),l=Math.cos(r);return t[0]=n*l+i*s,t[1]=a*l+o*s,t[2]=n*-s+i*l,t[3]=a*-s+o*l,t},t.rotateX=function(t,e,r){var n=Math.sin(r),a=Math.cos(r),i=e[4],o=e[5],s=e[6],l=e[7],c=e[8],u=e[9],h=e[10],f=e[11];return e!==t&&(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[4]=i*a+c*n,t[5]=o*a+u*n,t[6]=s*a+h*n,t[7]=l*a+f*n,t[8]=c*a-i*n,t[9]=u*a-o*n,t[10]=h*a-s*n,t[11]=f*a-l*n,t},t.rotateZ=function(t,e,r){var n=Math.sin(r),a=Math.cos(r),i=e[0],o=e[1],s=e[2],l=e[3],c=e[4],u=e[5],h=e[6],f=e[7];return e!==t&&(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[0]=i*a+c*n,t[1]=o*a+u*n,t[2]=s*a+h*n,t[3]=l*a+f*n,t[4]=c*a-i*n,t[5]=u*a-o*n,t[6]=h*a-s*n,t[7]=f*a-l*n,t},t.scale=function(t,e,r){var n=r[0],a=r[1],i=r[2];return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t[4]=e[4]*a,t[5]=e[5]*a,t[6]=e[6]*a,t[7]=e[7]*a,t[8]=e[8]*i,t[9]=e[9]*i,t[10]=e[10]*i,t[11]=e[11]*i,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t},t.scale$1=function(t,e,r){return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t[3]=e[3]*r,t},t.scale$2=function(t,e,r){return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t},t.setCacheLimits=function(t,e){it=t,ot=e},t.setRTLTextPlugin=function(t,e,r){if(void 0===r&&(r=!1),"deferred"===Jn||"loading"===Jn||"loaded"===Jn)throw new Error("setRTLTextPlugin cannot be called multiple times.");Kn=R.resolveURL(t),Jn="deferred",Xn=e,$n(),r||ra()},t.sphericalToCartesian=function(t){var e=t[0],r=t[1],n=t[2];return r+=90,r*=Math.PI/180,n*=Math.PI/180,{x:e*Math.cos(r)*Math.sin(n),y:e*Math.sin(r)*Math.sin(n),z:e*Math.cos(n)}},t.sqrLen=function(t){var e=t[0],r=t[1];return e*e+r*r},t.styleSpec=Mt,t.sub=function(t,e,r){return t[0]=e[0]-r[0],t[1]=e[1]-r[1],t[2]=e[2]-r[2],t},t.symbolSize=zl,t.transformMat3=function(t,e,r){var n=e[0],a=e[1],i=e[2];return t[0]=n*r[0]+a*r[3]+i*r[6],t[1]=n*r[1]+a*r[4]+i*r[7],t[2]=n*r[2]+a*r[5]+i*r[8],t},t.transformMat4=io,t.translate=function(t,e,r){var n,a,i,o,s,l,c,u,h,f,p,d,g=r[0],m=r[1],v=r[2];return e===t?(t[12]=e[0]*g+e[4]*m+e[8]*v+e[12],t[13]=e[1]*g+e[5]*m+e[9]*v+e[13],t[14]=e[2]*g+e[6]*m+e[10]*v+e[14],t[15]=e[3]*g+e[7]*m+e[11]*v+e[15]):(a=e[1],i=e[2],o=e[3],s=e[4],l=e[5],c=e[6],u=e[7],h=e[8],f=e[9],p=e[10],d=e[11],t[0]=n=e[0],t[1]=a,t[2]=i,t[3]=o,t[4]=s,t[5]=l,t[6]=c,t[7]=u,t[8]=h,t[9]=f,t[10]=p,t[11]=d,t[12]=n*g+s*m+h*v+e[12],t[13]=a*g+l*m+f*v+e[13],t[14]=i*g+c*m+p*v+e[14],t[15]=o*g+u*m+d*v+e[15]),t},t.triggerPluginCompletionEvent=Qn,t.uniqueId=f,t.validateCustomStyleLayer=function(t){var e=[],r=t.id;return void 0===r&&e.push({message:"layers."+r+': missing required property "id"'}),void 0===t.render&&e.push({message:"layers."+r+': missing required method "render"'}),t.renderingMode&&"2d"!==t.renderingMode&&"3d"!==t.renderingMode&&e.push({message:"layers."+r+': property "renderingMode" must be either "2d" or "3d"'}),e},t.validateLight=Mn,t.validateStyle=An,t.values=function(t){var e=[];for(var r in t)e.push(t[r]);return e},t.vectorTile=gs,t.version="1.10.1",t.warnOnce=_,t.webpSupported=B,t.window=self,t.wrap=c})),n(0,(function(t){function e(t){var r=typeof t;if("number"===r||"boolean"===r||"string"===r||null==t)return JSON.stringify(t);if(Array.isArray(t)){for(var n="[",a=0,i=t;a<i.length;a+=1)n+=e(i[a])+",";return n+"]"}for(var o=Object.keys(t).sort(),s="{",l=0;l<o.length;l++)s+=JSON.stringify(o[l])+":"+e(t[o[l]])+",";return s+"}"}function r(r){for(var n="",a=0,i=t.refProperties;a<i.length;a+=1)n+="/"+e(r[i[a]]);return n}var n=function(t){this.keyCache={},t&&this.replace(t)};n.prototype.replace=function(t){this._layerConfigs={},this._layers={},this.update(t,[])},n.prototype.update=function(e,n){for(var a=this,i=0,o=e;i<o.length;i+=1){var s=o[i];this._layerConfigs[s.id]=s;var l=this._layers[s.id]=t.createStyleLayer(s);l._featureFilter=t.featureFilter(l.filter),this.keyCache[s.id]&&delete this.keyCache[s.id]}for(var c=0,u=n;c<u.length;c+=1){var h=u[c];delete this.keyCache[h],delete this._layerConfigs[h],delete this._layers[h]}this.familiesBySource={};for(var f=0,p=function(t,e){for(var n={},a=0;a<t.length;a++){var i=e&&e[t[a].id]||r(t[a]);e&&(e[t[a].id]=i);var o=n[i];o||(o=n[i]=[]),o.push(t[a])}var s=[];for(var l in n)s.push(n[l]);return s}(t.values(this._layerConfigs),this.keyCache);f<p.length;f+=1){var d=p[f].map((function(t){return a._layers[t.id]})),g=d[0];if("none"!==g.visibility){var m=g.source||"",v=this.familiesBySource[m];v||(v=this.familiesBySource[m]={});var y=g.sourceLayer||"_geojsonTileLayer",x=v[y];x||(x=v[y]=[]),x.push(d)}}};var a=function(e){var r={},n=[];for(var a in e){var i=e[a],o=r[a]={};for(var s in i){var l=i[+s];if(l&&0!==l.bitmap.width&&0!==l.bitmap.height){var c={x:0,y:0,w:l.bitmap.width+2,h:l.bitmap.height+2};n.push(c),o[s]={rect:c,metrics:l.metrics}}}}var u=t.potpack(n),h=new t.AlphaImage({width:u.w||1,height:u.h||1});for(var f in e){var p=e[f];for(var d in p){var g=p[+d];if(g&&0!==g.bitmap.width&&0!==g.bitmap.height){var m=r[f][d].rect;t.AlphaImage.copy(g.bitmap,h,{x:0,y:0},{x:m.x+1,y:m.y+1},g.bitmap)}}}this.image=h,this.positions=r};t.register("GlyphAtlas",a);var i=function(e){this.tileID=new t.OverscaledTileID(e.tileID.overscaledZ,e.tileID.wrap,e.tileID.canonical.z,e.tileID.canonical.x,e.tileID.canonical.y),this.uid=e.uid,this.zoom=e.zoom,this.pixelRatio=e.pixelRatio,this.tileSize=e.tileSize,this.source=e.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=e.showCollisionBoxes,this.collectResourceTiming=!!e.collectResourceTiming,this.returnDependencies=!!e.returnDependencies,this.promoteId=e.promoteId};function o(e,r,n){for(var a=new t.EvaluationParameters(r),i=0,o=e;i<o.length;i+=1)o[i].recalculate(a,n)}function s(e,r){var n=t.getArrayBuffer(e.request,(function(e,n,a,i){e?r(e):n&&r(null,{vectorTile:new t.vectorTile.VectorTile(new t.pbf(n)),rawData:n,cacheControl:a,expires:i})}));return function(){n.cancel(),r()}}i.prototype.parse=function(e,r,n,i,s){var l=this;this.status="parsing",this.data=e,this.collisionBoxArray=new t.CollisionBoxArray;var c=new t.DictionaryCoder(Object.keys(e.layers).sort()),u=new t.FeatureIndex(this.tileID,this.promoteId);u.bucketLayerIDs=[];var h,f,p,d,g={},m={featureIndex:u,iconDependencies:{},patternDependencies:{},glyphDependencies:{},availableImages:n},v=r.familiesBySource[this.source];for(var y in v){var x=e.layers[y];if(x){1===x.version&&t.warnOnce('Vector tile source "'+this.source+'" layer "'+y+'" does not use vector tile spec v2 and therefore may have some rendering errors.');for(var b=c.encode(y),_=[],w=0;w<x.length;w++){var T=x.feature(w),k=u.getId(T,y);_.push({feature:T,id:k,index:w,sourceLayerIndex:b})}for(var A=0,M=v[y];A<M.length;A+=1){var S=M[A],E=S[0];E.minzoom&&this.zoom<Math.floor(E.minzoom)||E.maxzoom&&this.zoom>=E.maxzoom||"none"!==E.visibility&&(o(S,this.zoom,n),(g[E.id]=E.createBucket({index:u.bucketLayerIDs.length,layers:S,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:b,sourceID:this.source})).populate(_,m,this.tileID.canonical),u.bucketLayerIDs.push(S.map((function(t){return t.id}))))}}}var C=t.mapObject(m.glyphDependencies,(function(t){return Object.keys(t).map(Number)}));Object.keys(C).length?i.send("getGlyphs",{uid:this.uid,stacks:C},(function(t,e){h||(h=t,f=e,I.call(l))})):f={};var L=Object.keys(m.iconDependencies);L.length?i.send("getImages",{icons:L,source:this.source,tileID:this.tileID,type:"icons"},(function(t,e){h||(h=t,p=e,I.call(l))})):p={};var P=Object.keys(m.patternDependencies);function I(){if(h)return s(h);if(f&&p&&d){var e=new a(f),r=new t.ImageAtlas(p,d);for(var i in g){var l=g[i];l instanceof t.SymbolBucket?(o(l.layers,this.zoom,n),t.performSymbolLayout(l,f,e.positions,p,r.iconPositions,this.showCollisionBoxes,this.tileID.canonical)):l.hasPattern&&(l instanceof t.LineBucket||l instanceof t.FillBucket||l instanceof t.FillExtrusionBucket)&&(o(l.layers,this.zoom,n),l.addFeatures(m,this.tileID.canonical,r.patternPositions))}this.status="done",s(null,{buckets:t.values(g).filter((function(t){return!t.isEmpty()})),featureIndex:u,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:e.image,imageAtlas:r,glyphMap:this.returnDependencies?f:null,iconMap:this.returnDependencies?p:null,glyphPositions:this.returnDependencies?e.positions:null})}}P.length?i.send("getImages",{icons:P,source:this.source,tileID:this.tileID,type:"patterns"},(function(t,e){h||(h=t,d=e,I.call(l))})):d={},I.call(this)};var l=function(t,e,r,n){this.actor=t,this.layerIndex=e,this.availableImages=r,this.loadVectorData=n||s,this.loading={},this.loaded={}};l.prototype.loadTile=function(e,r){var n=this,a=e.uid;this.loading||(this.loading={});var o=!!(e&&e.request&&e.request.collectResourceTiming)&&new t.RequestPerformance(e.request),s=this.loading[a]=new i(e);s.abort=this.loadVectorData(e,(function(e,i){if(delete n.loading[a],e||!i)return s.status="done",n.loaded[a]=s,r(e);var l=i.rawData,c={};i.expires&&(c.expires=i.expires),i.cacheControl&&(c.cacheControl=i.cacheControl);var u={};if(o){var h=o.finish();h&&(u.resourceTiming=JSON.parse(JSON.stringify(h)))}s.vectorTile=i.vectorTile,s.parse(i.vectorTile,n.layerIndex,n.availableImages,n.actor,(function(e,n){if(e||!n)return r(e);r(null,t.extend({rawTileData:l.slice(0)},n,c,u))})),n.loaded=n.loaded||{},n.loaded[a]=s}))},l.prototype.reloadTile=function(t,e){var r=this,n=this.loaded,a=t.uid,i=this;if(n&&n[a]){var o=n[a];o.showCollisionBoxes=t.showCollisionBoxes;var s=function(t,n){var a=o.reloadCallback;a&&(delete o.reloadCallback,o.parse(o.vectorTile,i.layerIndex,r.availableImages,i.actor,a)),e(t,n)};"parsing"===o.status?o.reloadCallback=s:"done"===o.status&&(o.vectorTile?o.parse(o.vectorTile,this.layerIndex,this.availableImages,this.actor,s):s())}},l.prototype.abortTile=function(t,e){var r=this.loading,n=t.uid;r&&r[n]&&r[n].abort&&(r[n].abort(),delete r[n]),e()},l.prototype.removeTile=function(t,e){var r=this.loaded,n=t.uid;r&&r[n]&&delete r[n],e()};var c=t.window.ImageBitmap,u=function(){this.loaded={}};function h(t,e){if(0!==t.length){f(t[0],e);for(var r=1;r<t.length;r++)f(t[r],!e)}}function f(t,e){for(var r=0,n=0,a=t.length,i=a-1;n<a;i=n++)r+=(t[n][0]-t[i][0])*(t[i][1]+t[n][1]);r>=0!=!!e&&t.reverse()}u.prototype.loadTile=function(e,r){var n=e.uid,a=e.encoding,i=e.rawImageData,o=c&&i instanceof c?this.getImageData(i):i,s=new t.DEMData(n,o,a);this.loaded=this.loaded||{},this.loaded[n]=s,r(null,s)},u.prototype.getImageData=function(e){this.offscreenCanvas&&this.offscreenCanvasContext||(this.offscreenCanvas=new OffscreenCanvas(e.width,e.height),this.offscreenCanvasContext=this.offscreenCanvas.getContext("2d")),this.offscreenCanvas.width=e.width,this.offscreenCanvas.height=e.height,this.offscreenCanvasContext.drawImage(e,0,0,e.width,e.height);var r=this.offscreenCanvasContext.getImageData(-1,-1,e.width+2,e.height+2);return this.offscreenCanvasContext.clearRect(0,0,this.offscreenCanvas.width,this.offscreenCanvas.height),new t.RGBAImage({width:r.width,height:r.height},r.data)},u.prototype.removeTile=function(t){var e=this.loaded,r=t.uid;e&&e[r]&&delete e[r]};var p=t.vectorTile.VectorTileFeature.prototype.toGeoJSON,d=function(e){this._feature=e,this.extent=t.EXTENT,this.type=e.type,this.properties=e.tags,"id"in e&&!isNaN(e.id)&&(this.id=parseInt(e.id,10))};d.prototype.loadGeometry=function(){if(1===this._feature.type){for(var e=[],r=0,n=this._feature.geometry;r<n.length;r+=1){var a=n[r];e.push([new t.Point$1(a[0],a[1])])}return e}for(var i=[],o=0,s=this._feature.geometry;o<s.length;o+=1){for(var l=[],c=0,u=s[o];c<u.length;c+=1){var h=u[c];l.push(new t.Point$1(h[0],h[1]))}i.push(l)}return i},d.prototype.toGeoJSON=function(t,e,r){return p.call(this,t,e,r)};var g=function(e){this.layers={_geojsonTileLayer:this},this.name="_geojsonTileLayer",this.extent=t.EXTENT,this.length=e.length,this._features=e};g.prototype.feature=function(t){return new d(this._features[t])};var m=t.vectorTile.VectorTileFeature,v=y;function y(t,e){this.options=e||{},this.features=t,this.length=t.length}function x(t,e){this.id="number"==typeof t.id?t.id:void 0,this.type=t.type,this.rawGeometry=1===t.type?[t.geometry]:t.geometry,this.properties=t.tags,this.extent=e||4096}y.prototype.feature=function(t){return new x(this.features[t],this.options.extent)},x.prototype.loadGeometry=function(){var e=this.rawGeometry;this.geometry=[];for(var r=0;r<e.length;r++){for(var n=e[r],a=[],i=0;i<n.length;i++)a.push(new t.Point$1(n[i][0],n[i][1]));this.geometry.push(a)}return this.geometry},x.prototype.bbox=function(){this.geometry||this.loadGeometry();for(var t=this.geometry,e=1/0,r=-1/0,n=1/0,a=-1/0,i=0;i<t.length;i++)for(var o=t[i],s=0;s<o.length;s++){var l=o[s];e=Math.min(e,l.x),r=Math.max(r,l.x),n=Math.min(n,l.y),a=Math.max(a,l.y)}return[e,n,r,a]},x.prototype.toGeoJSON=m.prototype.toGeoJSON;var b=w,_=v;function w(e){var r=new t.pbf;return function(t,e){for(var r in t.layers)e.writeMessage(3,T,t.layers[r])}(e,r),r.finish()}function T(t,e){var r;e.writeVarintField(15,t.version||1),e.writeStringField(1,t.name||""),e.writeVarintField(5,t.extent||4096);var n={keys:[],values:[],keycache:{},valuecache:{}};for(r=0;r<t.length;r++)n.feature=t.feature(r),e.writeMessage(2,k,n);var a=n.keys;for(r=0;r<a.length;r++)e.writeStringField(3,a[r]);var i=n.values;for(r=0;r<i.length;r++)e.writeMessage(4,C,i[r])}function k(t,e){var r=t.feature;void 0!==r.id&&e.writeVarintField(1,r.id),e.writeMessage(2,A,t),e.writeVarintField(3,r.type),e.writeMessage(4,E,r)}function A(t,e){var r=t.feature,n=t.keys,a=t.values,i=t.keycache,o=t.valuecache;for(var s in r.properties){var l=i[s];void 0===l&&(n.push(s),i[s]=l=n.length-1),e.writeVarint(l);var c=r.properties[s],u=typeof c;"string"!==u&&"boolean"!==u&&"number"!==u&&(c=JSON.stringify(c));var h=u+":"+c,f=o[h];void 0===f&&(a.push(c),o[h]=f=a.length-1),e.writeVarint(f)}}function M(t,e){return(e<<3)+(7&t)}function S(t){return t<<1^t>>31}function E(t,e){for(var r=t.loadGeometry(),n=t.type,a=0,i=0,o=r.length,s=0;s<o;s++){var l=r[s],c=1;1===n&&(c=l.length),e.writeVarint(M(1,c));for(var u=3===n?l.length-1:l.length,h=0;h<u;h++){1===h&&1!==n&&e.writeVarint(M(2,u-1));var f=l[h].x-a,p=l[h].y-i;e.writeVarint(S(f)),e.writeVarint(S(p)),a+=f,i+=p}3===n&&e.writeVarint(M(7,1))}}function C(t,e){var r=typeof t;"string"===r?e.writeStringField(1,t):"boolean"===r?e.writeBooleanField(7,t):"number"===r&&(t%1!=0?e.writeDoubleField(3,t):t<0?e.writeSVarintField(6,t):e.writeVarintField(5,t))}function L(t,e,r,n){P(t,r,n),P(e,2*r,2*n),P(e,2*r+1,2*n+1)}function P(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function I(t,e,r,n){var a=t-r,i=e-n;return a*a+i*i}b.fromVectorTileJs=w,b.fromGeojsonVt=function(t,e){e=e||{};var r={};for(var n in t)r[n]=new v(t[n].features,e),r[n].name=n,r[n].version=e.version,r[n].extent=e.extent;return w({layers:r})},b.GeoJSONWrapper=_;var z=function(t){return t[0]},O=function(t){return t[1]},D=function(t,e,r,n,a){void 0===e&&(e=z),void 0===r&&(r=O),void 0===n&&(n=64),void 0===a&&(a=Float64Array),this.nodeSize=n,this.points=t;for(var i=t.length<65536?Uint16Array:Uint32Array,o=this.ids=new i(t.length),s=this.coords=new a(2*t.length),l=0;l<t.length;l++)o[l]=l,s[2*l]=e(t[l]),s[2*l+1]=r(t[l]);!function t(e,r,n,a,i,o){if(!(i-a<=n)){var s=a+i>>1;!function t(e,r,n,a,i,o){for(;i>a;){if(i-a>600){var s=i-a+1,l=n-a+1,c=Math.log(s),u=.5*Math.exp(2*c/3),h=.5*Math.sqrt(c*u*(s-u)/s)*(l-s/2<0?-1:1);t(e,r,n,Math.max(a,Math.floor(n-l*u/s+h)),Math.min(i,Math.floor(n+(s-l)*u/s+h)),o)}var f=r[2*n+o],p=a,d=i;for(L(e,r,a,n),r[2*i+o]>f&&L(e,r,a,i);p<d;){for(L(e,r,p,d),p++,d--;r[2*p+o]<f;)p++;for(;r[2*d+o]>f;)d--}r[2*a+o]===f?L(e,r,a,d):L(e,r,++d,i),d<=n&&(a=d+1),n<=d&&(i=d-1)}}(e,r,s,a,i,o%2),t(e,r,n,a,s-1,o+1),t(e,r,n,s+1,i,o+1)}}(o,s,n,0,o.length-1,0)};D.prototype.range=function(t,e,r,n){return function(t,e,r,n,a,i,o){for(var s,l,c=[0,t.length-1,0],u=[];c.length;){var h=c.pop(),f=c.pop(),p=c.pop();if(f-p<=o)for(var d=p;d<=f;d++)l=e[2*d+1],(s=e[2*d])>=r&&s<=a&&l>=n&&l<=i&&u.push(t[d]);else{var g=Math.floor((p+f)/2);l=e[2*g+1],(s=e[2*g])>=r&&s<=a&&l>=n&&l<=i&&u.push(t[g]);var m=(h+1)%2;(0===h?r<=s:n<=l)&&(c.push(p),c.push(g-1),c.push(m)),(0===h?a>=s:i>=l)&&(c.push(g+1),c.push(f),c.push(m))}}return u}(this.ids,this.coords,t,e,r,n,this.nodeSize)},D.prototype.within=function(t,e,r){return function(t,e,r,n,a,i){for(var o=[0,t.length-1,0],s=[],l=a*a;o.length;){var c=o.pop(),u=o.pop(),h=o.pop();if(u-h<=i)for(var f=h;f<=u;f++)I(e[2*f],e[2*f+1],r,n)<=l&&s.push(t[f]);else{var p=Math.floor((h+u)/2),d=e[2*p],g=e[2*p+1];I(d,g,r,n)<=l&&s.push(t[p]);var m=(c+1)%2;(0===c?r-a<=d:n-a<=g)&&(o.push(h),o.push(p-1),o.push(m)),(0===c?r+a>=d:n+a>=g)&&(o.push(p+1),o.push(u),o.push(m))}}return s}(this.ids,this.coords,t,e,r,this.nodeSize)};var R={minZoom:0,maxZoom:16,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:function(t){return t}},F=function(t){this.options=H(Object.create(R),t),this.trees=new Array(this.options.maxZoom+1)};function B(t,e,r,n,a){return{x:t,y:e,zoom:1/0,id:r,parentId:-1,numPoints:n,properties:a}}function N(t,e){var r=t.geometry.coordinates,n=r[1];return{x:U(r[0]),y:q(n),zoom:1/0,index:e,parentId:-1}}function j(t){return{type:"Feature",id:t.id,properties:V(t),geometry:{type:"Point",coordinates:[(n=t.x,360*(n-.5)),(e=t.y,r=(180-360*e)*Math.PI/180,360*Math.atan(Math.exp(r))/Math.PI-90)]}};var e,r,n}function V(t){var e=t.numPoints,r=e>=1e4?Math.round(e/1e3)+"k":e>=1e3?Math.round(e/100)/10+"k":e;return H(H({},t.properties),{cluster:!0,cluster_id:t.id,point_count:e,point_count_abbreviated:r})}function U(t){return t/360+.5}function q(t){var e=Math.sin(t*Math.PI/180),r=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return r<0?0:r>1?1:r}function H(t,e){for(var r in e)t[r]=e[r];return t}function G(t){return t.x}function Y(t){return t.y}function W(t,e,r,n,a,i){var o=a-r,s=i-n;if(0!==o||0!==s){var l=((t-r)*o+(e-n)*s)/(o*o+s*s);l>1?(r=a,n=i):l>0&&(r+=o*l,n+=s*l)}return(o=t-r)*o+(s=e-n)*s}function Z(t,e,r,n){var a={id:void 0===t?null:t,type:e,geometry:r,tags:n,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return function(t){var e=t.geometry,r=t.type;if("Point"===r||"MultiPoint"===r||"LineString"===r)X(t,e);else if("Polygon"===r||"MultiLineString"===r)for(var n=0;n<e.length;n++)X(t,e[n]);else if("MultiPolygon"===r)for(n=0;n<e.length;n++)for(var a=0;a<e[n].length;a++)X(t,e[n][a])}(a),a}function X(t,e){for(var r=0;r<e.length;r+=3)t.minX=Math.min(t.minX,e[r]),t.minY=Math.min(t.minY,e[r+1]),t.maxX=Math.max(t.maxX,e[r]),t.maxY=Math.max(t.maxY,e[r+1])}function J(t,e,r,n){if(e.geometry){var a=e.geometry.coordinates,i=e.geometry.type,o=Math.pow(r.tolerance/((1<<r.maxZoom)*r.extent),2),s=[],l=e.id;if(r.promoteId?l=e.properties[r.promoteId]:r.generateId&&(l=n||0),"Point"===i)K(a,s);else if("MultiPoint"===i)for(var c=0;c<a.length;c++)K(a[c],s);else if("LineString"===i)Q(a,s,o,!1);else if("MultiLineString"===i){if(r.lineMetrics){for(c=0;c<a.length;c++)Q(a[c],s=[],o,!1),t.push(Z(l,"LineString",s,e.properties));return}$(a,s,o,!1)}else if("Polygon"===i)$(a,s,o,!0);else{if("MultiPolygon"!==i){if("GeometryCollection"===i){for(c=0;c<e.geometry.geometries.length;c++)J(t,{id:l,geometry:e.geometry.geometries[c],properties:e.properties},r,n);return}throw new Error("Input data is not a valid GeoJSON object.")}for(c=0;c<a.length;c++){var u=[];$(a[c],u,o,!0),s.push(u)}}t.push(Z(l,i,s,e.properties))}}function K(t,e){e.push(tt(t[0])),e.push(et(t[1])),e.push(0)}function Q(t,e,r,n){for(var a,i,o=0,s=0;s<t.length;s++){var l=tt(t[s][0]),c=et(t[s][1]);e.push(l),e.push(c),e.push(0),s>0&&(o+=n?(a*c-l*i)/2:Math.sqrt(Math.pow(l-a,2)+Math.pow(c-i,2))),a=l,i=c}var u=e.length-3;e[2]=1,function t(e,r,n,a){for(var i,o=a,s=n-r>>1,l=n-r,c=e[r],u=e[r+1],h=e[n],f=e[n+1],p=r+3;p<n;p+=3){var d=W(e[p],e[p+1],c,u,h,f);if(d>o)i=p,o=d;else if(d===o){var g=Math.abs(p-s);g<l&&(i=p,l=g)}}o>a&&(i-r>3&&t(e,r,i,a),e[i+2]=o,n-i>3&&t(e,i,n,a))}(e,0,u,r),e[u+2]=1,e.size=Math.abs(o),e.start=0,e.end=e.size}function $(t,e,r,n){for(var a=0;a<t.length;a++){var i=[];Q(t[a],i,r,n),e.push(i)}}function tt(t){return t/360+.5}function et(t){var e=Math.sin(t*Math.PI/180),r=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return r<0?0:r>1?1:r}function rt(t,e,r,n,a,i,o,s){if(n/=e,i>=(r/=e)&&o<n)return t;if(o<r||i>=n)return null;for(var l=[],c=0;c<t.length;c++){var u=t[c],h=u.geometry,f=u.type,p=0===a?u.minX:u.minY,d=0===a?u.maxX:u.maxY;if(p>=r&&d<n)l.push(u);else if(!(d<r||p>=n)){var g=[];if("Point"===f||"MultiPoint"===f)nt(h,g,r,n,a);else if("LineString"===f)at(h,g,r,n,a,!1,s.lineMetrics);else if("MultiLineString"===f)ot(h,g,r,n,a,!1);else if("Polygon"===f)ot(h,g,r,n,a,!0);else if("MultiPolygon"===f)for(var m=0;m<h.length;m++){var v=[];ot(h[m],v,r,n,a,!0),v.length&&g.push(v)}if(g.length){if(s.lineMetrics&&"LineString"===f){for(m=0;m<g.length;m++)l.push(Z(u.id,f,g[m],u.tags));continue}"LineString"!==f&&"MultiLineString"!==f||(1===g.length?(f="LineString",g=g[0]):f="MultiLineString"),"Point"!==f&&"MultiPoint"!==f||(f=3===g.length?"Point":"MultiPoint"),l.push(Z(u.id,f,g,u.tags))}}}return l.length?l:null}function nt(t,e,r,n,a){for(var i=0;i<t.length;i+=3){var o=t[i+a];o>=r&&o<=n&&(e.push(t[i]),e.push(t[i+1]),e.push(t[i+2]))}}function at(t,e,r,n,a,i,o){for(var s,l,c=it(t),u=0===a?lt:ct,h=t.start,f=0;f<t.length-3;f+=3){var p=t[f],d=t[f+1],g=t[f+2],m=t[f+3],v=t[f+4],y=0===a?p:d,x=0===a?m:v,b=!1;o&&(s=Math.sqrt(Math.pow(p-m,2)+Math.pow(d-v,2))),y<r?x>r&&(l=u(c,p,d,m,v,r),o&&(c.start=h+s*l)):y>n?x<n&&(l=u(c,p,d,m,v,n),o&&(c.start=h+s*l)):st(c,p,d,g),x<r&&y>=r&&(l=u(c,p,d,m,v,r),b=!0),x>n&&y<=n&&(l=u(c,p,d,m,v,n),b=!0),!i&&b&&(o&&(c.end=h+s*l),e.push(c),c=it(t)),o&&(h+=s)}var _=t.length-3;p=t[_],d=t[_+1],g=t[_+2],(y=0===a?p:d)>=r&&y<=n&&st(c,p,d,g),_=c.length-3,i&&_>=3&&(c[_]!==c[0]||c[_+1]!==c[1])&&st(c,c[0],c[1],c[2]),c.length&&e.push(c)}function it(t){var e=[];return e.size=t.size,e.start=t.start,e.end=t.end,e}function ot(t,e,r,n,a,i){for(var o=0;o<t.length;o++)at(t[o],e,r,n,a,i,!1)}function st(t,e,r,n){t.push(e),t.push(r),t.push(n)}function lt(t,e,r,n,a,i){var o=(i-e)/(n-e);return t.push(i),t.push(r+(a-r)*o),t.push(1),o}function ct(t,e,r,n,a,i){var o=(i-r)/(a-r);return t.push(e+(n-e)*o),t.push(i),t.push(1),o}function ut(t,e){for(var r=[],n=0;n<t.length;n++){var a,i=t[n],o=i.type;if("Point"===o||"MultiPoint"===o||"LineString"===o)a=ht(i.geometry,e);else if("MultiLineString"===o||"Polygon"===o){a=[];for(var s=0;s<i.geometry.length;s++)a.push(ht(i.geometry[s],e))}else if("MultiPolygon"===o)for(a=[],s=0;s<i.geometry.length;s++){for(var l=[],c=0;c<i.geometry[s].length;c++)l.push(ht(i.geometry[s][c],e));a.push(l)}r.push(Z(i.id,o,a,i.tags))}return r}function ht(t,e){var r=[];r.size=t.size,void 0!==t.start&&(r.start=t.start,r.end=t.end);for(var n=0;n<t.length;n+=3)r.push(t[n]+e,t[n+1],t[n+2]);return r}function ft(t,e){if(t.transformed)return t;var r,n,a,i=1<<t.z,o=t.x,s=t.y;for(r=0;r<t.features.length;r++){var l=t.features[r],c=l.geometry,u=l.type;if(l.geometry=[],1===u)for(n=0;n<c.length;n+=2)l.geometry.push(pt(c[n],c[n+1],e,i,o,s));else for(n=0;n<c.length;n++){var h=[];for(a=0;a<c[n].length;a+=2)h.push(pt(c[n][a],c[n][a+1],e,i,o,s));l.geometry.push(h)}}return t.transformed=!0,t}function pt(t,e,r,n,a,i){return[Math.round(r*(t*n-a)),Math.round(r*(e*n-i))]}function dt(t,e,r,n,a){for(var i=e===a.maxZoom?0:a.tolerance/((1<<e)*a.extent),o={features:[],numPoints:0,numSimplified:0,numFeatures:0,source:null,x:r,y:n,z:e,transformed:!1,minX:2,minY:1,maxX:-1,maxY:0},s=0;s<t.length;s++){o.numFeatures++,gt(o,t[s],i,a);var l=t[s].minX,c=t[s].minY,u=t[s].maxX,h=t[s].maxY;l<o.minX&&(o.minX=l),c<o.minY&&(o.minY=c),u>o.maxX&&(o.maxX=u),h>o.maxY&&(o.maxY=h)}return o}function gt(t,e,r,n){var a=e.geometry,i=e.type,o=[];if("Point"===i||"MultiPoint"===i)for(var s=0;s<a.length;s+=3)o.push(a[s]),o.push(a[s+1]),t.numPoints++,t.numSimplified++;else if("LineString"===i)mt(o,a,t,r,!1,!1);else if("MultiLineString"===i||"Polygon"===i)for(s=0;s<a.length;s++)mt(o,a[s],t,r,"Polygon"===i,0===s);else if("MultiPolygon"===i)for(var l=0;l<a.length;l++){var c=a[l];for(s=0;s<c.length;s++)mt(o,c[s],t,r,!0,0===s)}if(o.length){var u=e.tags||null;if("LineString"===i&&n.lineMetrics){for(var h in u={},e.tags)u[h]=e.tags[h];u.mapbox_clip_start=a.start/a.size,u.mapbox_clip_end=a.end/a.size}var f={geometry:o,type:"Polygon"===i||"MultiPolygon"===i?3:"LineString"===i||"MultiLineString"===i?2:1,tags:u};null!==e.id&&(f.id=e.id),t.features.push(f)}}function mt(t,e,r,n,a,i){var o=n*n;if(n>0&&e.size<(a?o:n))r.numPoints+=e.length/3;else{for(var s=[],l=0;l<e.length;l+=3)(0===n||e[l+2]>o)&&(r.numSimplified++,s.push(e[l]),s.push(e[l+1])),r.numPoints++;a&&function(t,e){for(var r=0,n=0,a=t.length,i=a-2;n<a;i=n,n+=2)r+=(t[n]-t[i])*(t[n+1]+t[i+1]);if(r>0===e)for(n=0,a=t.length;n<a/2;n+=2){var o=t[n],s=t[n+1];t[n]=t[a-2-n],t[n+1]=t[a-1-n],t[a-2-n]=o,t[a-1-n]=s}}(s,i),t.push(s)}}function vt(t,e){var r=(e=this.options=function(t,e){for(var r in e)t[r]=e[r];return t}(Object.create(this.options),e)).debug;if(r&&console.time("preprocess data"),e.maxZoom<0||e.maxZoom>24)throw new Error("maxZoom should be in the 0-24 range");if(e.promoteId&&e.generateId)throw new Error("promoteId and generateId cannot be used together.");var n=function(t,e){var r=[];if("FeatureCollection"===t.type)for(var n=0;n<t.features.length;n++)J(r,t.features[n],e,n);else J(r,"Feature"===t.type?t:{geometry:t},e);return r}(t,e);this.tiles={},this.tileCoords=[],r&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",e.indexMaxZoom,e.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),(n=function(t,e){var r=e.buffer/e.extent,n=t,a=rt(t,1,-1-r,r,0,-1,2,e),i=rt(t,1,1-r,2+r,0,-1,2,e);return(a||i)&&(n=rt(t,1,-r,1+r,0,-1,2,e)||[],a&&(n=ut(a,1).concat(n)),i&&(n=n.concat(ut(i,-1)))),n}(n,e)).length&&this.splitTile(n,0,0,0),r&&(n.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)))}function yt(t,e,r){return 32*((1<<t)*r+e)+t}function xt(t,e){var r=t.tileID.canonical;if(!this._geoJSONIndex)return e(null,null);var n=this._geoJSONIndex.getTile(r.z,r.x,r.y);if(!n)return e(null,null);var a=new g(n.features),i=b(a);0===i.byteOffset&&i.byteLength===i.buffer.byteLength||(i=new Uint8Array(i)),e(null,{vectorTile:a,rawData:i.buffer})}F.prototype.load=function(t){var e=this.options,r=e.log,n=e.minZoom,a=e.maxZoom,i=e.nodeSize;r&&console.time("total time");var o="prepare "+t.length+" points";r&&console.time(o),this.points=t;for(var s=[],l=0;l<t.length;l++)t[l].geometry&&s.push(N(t[l],l));this.trees[a+1]=new D(s,G,Y,i,Float32Array),r&&console.timeEnd(o);for(var c=a;c>=n;c--){var u=+Date.now();s=this._cluster(s,c),this.trees[c]=new D(s,G,Y,i,Float32Array),r&&console.log("z%d: %d clusters in %dms",c,s.length,+Date.now()-u)}return r&&console.timeEnd("total time"),this},F.prototype.getClusters=function(t,e){var r=((t[0]+180)%360+360)%360-180,n=Math.max(-90,Math.min(90,t[1])),a=180===t[2]?180:((t[2]+180)%360+360)%360-180,i=Math.max(-90,Math.min(90,t[3]));if(t[2]-t[0]>=360)r=-180,a=180;else if(r>a){var o=this.getClusters([r,n,180,i],e),s=this.getClusters([-180,n,a,i],e);return o.concat(s)}for(var l=this.trees[this._limitZoom(e)],c=[],u=0,h=l.range(U(r),q(i),U(a),q(n));u<h.length;u+=1){var f=l.points[h[u]];c.push(f.numPoints?j(f):this.points[f.index])}return c},F.prototype.getChildren=function(t){var e=this._getOriginId(t),r=this._getOriginZoom(t),n="No cluster with the specified id.",a=this.trees[r];if(!a)throw new Error(n);var i=a.points[e];if(!i)throw new Error(n);for(var o=this.options.radius/(this.options.extent*Math.pow(2,r-1)),s=[],l=0,c=a.within(i.x,i.y,o);l<c.length;l+=1){var u=a.points[c[l]];u.parentId===t&&s.push(u.numPoints?j(u):this.points[u.index])}if(0===s.length)throw new Error(n);return s},F.prototype.getLeaves=function(t,e,r){var n=[];return this._appendLeaves(n,t,e=e||10,r=r||0,0),n},F.prototype.getTile=function(t,e,r){var n=this.trees[this._limitZoom(t)],a=Math.pow(2,t),i=this.options,o=i.radius/i.extent,s=(r-o)/a,l=(r+1+o)/a,c={features:[]};return this._addTileFeatures(n.range((e-o)/a,s,(e+1+o)/a,l),n.points,e,r,a,c),0===e&&this._addTileFeatures(n.range(1-o/a,s,1,l),n.points,a,r,a,c),e===a-1&&this._addTileFeatures(n.range(0,s,o/a,l),n.points,-1,r,a,c),c.features.length?c:null},F.prototype.getClusterExpansionZoom=function(t){for(var e=this._getOriginZoom(t)-1;e<=this.options.maxZoom;){var r=this.getChildren(t);if(e++,1!==r.length)break;t=r[0].properties.cluster_id}return e},F.prototype._appendLeaves=function(t,e,r,n,a){for(var i=0,o=this.getChildren(e);i<o.length;i+=1){var s=o[i],l=s.properties;if(l&&l.cluster?a+l.point_count<=n?a+=l.point_count:a=this._appendLeaves(t,l.cluster_id,r,n,a):a<n?a++:t.push(s),t.length===r)break}return a},F.prototype._addTileFeatures=function(t,e,r,n,a,i){for(var o=0,s=t;o<s.length;o+=1){var l=e[s[o]],c=l.numPoints,u={type:1,geometry:[[Math.round(this.options.extent*(l.x*a-r)),Math.round(this.options.extent*(l.y*a-n))]],tags:c?V(l):this.points[l.index].properties},h=void 0;c?h=l.id:this.options.generateId?h=l.index:this.points[l.index].id&&(h=this.points[l.index].id),void 0!==h&&(u.id=h),i.features.push(u)}},F.prototype._limitZoom=function(t){return Math.max(this.options.minZoom,Math.min(t,this.options.maxZoom+1))},F.prototype._cluster=function(t,e){for(var r=[],n=this.options,a=n.reduce,i=n.radius/(n.extent*Math.pow(2,e)),o=0;o<t.length;o++){var s=t[o];if(!(s.zoom<=e)){s.zoom=e;for(var l=this.trees[e+1],c=l.within(s.x,s.y,i),u=s.numPoints||1,h=s.x*u,f=s.y*u,p=a&&u>1?this._map(s,!0):null,d=(o<<5)+(e+1)+this.points.length,g=0,m=c;g<m.length;g+=1){var v=l.points[m[g]];if(!(v.zoom<=e)){v.zoom=e;var y=v.numPoints||1;h+=v.x*y,f+=v.y*y,u+=y,v.parentId=d,a&&(p||(p=this._map(s,!0)),a(p,this._map(v)))}}1===u?r.push(s):(s.parentId=d,r.push(B(h/u,f/u,d,u,p)))}}return r},F.prototype._getOriginId=function(t){return t-this.points.length>>5},F.prototype._getOriginZoom=function(t){return(t-this.points.length)%32},F.prototype._map=function(t,e){if(t.numPoints)return e?H({},t.properties):t.properties;var r=this.points[t.index].properties,n=this.options.map(r);return e&&n===r?H({},n):n},vt.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},vt.prototype.splitTile=function(t,e,r,n,a,i,o){for(var s=[t,e,r,n],l=this.options,c=l.debug;s.length;){n=s.pop(),r=s.pop(),e=s.pop(),t=s.pop();var u=1<<e,h=yt(e,r,n),f=this.tiles[h];if(!f&&(c>1&&console.time("creation"),f=this.tiles[h]=dt(t,e,r,n,l),this.tileCoords.push({z:e,x:r,y:n}),c)){c>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",e,r,n,f.numFeatures,f.numPoints,f.numSimplified),console.timeEnd("creation"));var p="z"+e;this.stats[p]=(this.stats[p]||0)+1,this.total++}if(f.source=t,a){if(e===l.maxZoom||e===a)continue;var d=1<<a-e;if(r!==Math.floor(i/d)||n!==Math.floor(o/d))continue}else if(e===l.indexMaxZoom||f.numPoints<=l.indexMaxPoints)continue;if(f.source=null,0!==t.length){c>1&&console.time("clipping");var g,m,v,y,x,b,_=.5*l.buffer/l.extent,w=.5-_,T=.5+_,k=1+_;g=m=v=y=null,x=rt(t,u,r-_,r+T,0,f.minX,f.maxX,l),b=rt(t,u,r+w,r+k,0,f.minX,f.maxX,l),t=null,x&&(g=rt(x,u,n-_,n+T,1,f.minY,f.maxY,l),m=rt(x,u,n+w,n+k,1,f.minY,f.maxY,l),x=null),b&&(v=rt(b,u,n-_,n+T,1,f.minY,f.maxY,l),y=rt(b,u,n+w,n+k,1,f.minY,f.maxY,l),b=null),c>1&&console.timeEnd("clipping"),s.push(g||[],e+1,2*r,2*n),s.push(m||[],e+1,2*r,2*n+1),s.push(v||[],e+1,2*r+1,2*n),s.push(y||[],e+1,2*r+1,2*n+1)}}},vt.prototype.getTile=function(t,e,r){var n=this.options,a=n.extent,i=n.debug;if(t<0||t>24)return null;var o=1<<t,s=yt(t,e=(e%o+o)%o,r);if(this.tiles[s])return ft(this.tiles[s],a);i>1&&console.log("drilling down to z%d-%d-%d",t,e,r);for(var l,c=t,u=e,h=r;!l&&c>0;)c--,u=Math.floor(u/2),h=Math.floor(h/2),l=this.tiles[yt(c,u,h)];return l&&l.source?(i>1&&console.log("found parent tile z%d-%d-%d",c,u,h),i>1&&console.time("drilling down"),this.splitTile(l.source,c,u,h,t,e,r),i>1&&console.timeEnd("drilling down"),this.tiles[s]?ft(this.tiles[s],a):null):null};var bt=function(e){function r(t,r,n,a){e.call(this,t,r,n,xt),a&&(this.loadGeoJSON=a)}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.loadData=function(t,e){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),this._pendingCallback=e,this._pendingLoadDataParams=t,this._state&&"Idle"!==this._state?this._state="NeedsLoadData":(this._state="Coalescing",this._loadData())},r.prototype._loadData=function(){var e=this;if(this._pendingCallback&&this._pendingLoadDataParams){var r=this._pendingCallback,n=this._pendingLoadDataParams;delete this._pendingCallback,delete this._pendingLoadDataParams;var a=!!(n&&n.request&&n.request.collectResourceTiming)&&new t.RequestPerformance(n.request);this.loadGeoJSON(n,(function(i,o){if(i||!o)return r(i);if("object"!=typeof o)return r(new Error("Input data given to '"+n.source+"' is not a valid GeoJSON object."));!function t(e,r){var n,a=e&&e.type;if("FeatureCollection"===a)for(n=0;n<e.features.length;n++)t(e.features[n],r);else if("GeometryCollection"===a)for(n=0;n<e.geometries.length;n++)t(e.geometries[n],r);else if("Feature"===a)t(e.geometry,r);else if("Polygon"===a)h(e.coordinates,r);else if("MultiPolygon"===a)for(n=0;n<e.coordinates.length;n++)h(e.coordinates[n],r);return e}(o,!0);try{e._geoJSONIndex=n.cluster?new F(function(e){var r=e.superclusterOptions,n=e.clusterProperties;if(!n||!r)return r;for(var a={},i={},o={accumulated:null,zoom:0},s={properties:null},l=Object.keys(n),c=0,u=l;c<u.length;c+=1){var h=u[c],f=n[h],p=f[0],d=t.createExpression(f[1]),g=t.createExpression("string"==typeof p?[p,["accumulated"],["get",h]]:p);a[h]=d.value,i[h]=g.value}return r.map=function(t){s.properties=t;for(var e={},r=0,n=l;r<n.length;r+=1){var i=n[r];e[i]=a[i].evaluate(o,s)}return e},r.reduce=function(t,e){s.properties=e;for(var r=0,n=l;r<n.length;r+=1){var a=n[r];o.accumulated=t[a],t[a]=i[a].evaluate(o,s)}},r}(n)).load(o.features):function(t,e){return new vt(t,e)}(o,n.geojsonVtOptions)}catch(i){return r(i)}e.loaded={};var s={};if(a){var l=a.finish();l&&(s.resourceTiming={},s.resourceTiming[n.source]=JSON.parse(JSON.stringify(l)))}r(null,s)}))}},r.prototype.coalesce=function(){"Coalescing"===this._state?this._state="Idle":"NeedsLoadData"===this._state&&(this._state="Coalescing",this._loadData())},r.prototype.reloadTile=function(t,r){var n=this.loaded;return n&&n[t.uid]?e.prototype.reloadTile.call(this,t,r):this.loadTile(t,r)},r.prototype.loadGeoJSON=function(e,r){if(e.request)t.getJSON(e.request,r);else{if("string"!=typeof e.data)return r(new Error("Input data given to '"+e.source+"' is not a valid GeoJSON object."));try{return r(null,JSON.parse(e.data))}catch(t){return r(new Error("Input data given to '"+e.source+"' is not a valid GeoJSON object."))}}},r.prototype.removeSource=function(t,e){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),e()},r.prototype.getClusterExpansionZoom=function(t,e){try{e(null,this._geoJSONIndex.getClusterExpansionZoom(t.clusterId))}catch(t){e(t)}},r.prototype.getClusterChildren=function(t,e){try{e(null,this._geoJSONIndex.getChildren(t.clusterId))}catch(t){e(t)}},r.prototype.getClusterLeaves=function(t,e){try{e(null,this._geoJSONIndex.getLeaves(t.clusterId,t.limit,t.offset))}catch(t){e(t)}},r}(l),_t=function(e){var r=this;this.self=e,this.actor=new t.Actor(e,this),this.layerIndexes={},this.availableImages={},this.workerSourceTypes={vector:l,geojson:bt},this.workerSources={},this.demWorkerSources={},this.self.registerWorkerSource=function(t,e){if(r.workerSourceTypes[t])throw new Error('Worker source with name "'+t+'" already registered.');r.workerSourceTypes[t]=e},this.self.registerRTLTextPlugin=function(e){if(t.plugin.isParsed())throw new Error("RTL text plugin already registered.");t.plugin.applyArabicShaping=e.applyArabicShaping,t.plugin.processBidirectionalText=e.processBidirectionalText,t.plugin.processStyledBidirectionalText=e.processStyledBidirectionalText}};return _t.prototype.setReferrer=function(t,e){this.referrer=e},_t.prototype.setImages=function(t,e,r){for(var n in this.availableImages[t]=e,this.workerSources[t]){var a=this.workerSources[t][n];for(var i in a)a[i].availableImages=e}r()},_t.prototype.setLayers=function(t,e,r){this.getLayerIndex(t).replace(e),r()},_t.prototype.updateLayers=function(t,e,r){this.getLayerIndex(t).update(e.layers,e.removedIds),r()},_t.prototype.loadTile=function(t,e,r){this.getWorkerSource(t,e.type,e.source).loadTile(e,r)},_t.prototype.loadDEMTile=function(t,e,r){this.getDEMWorkerSource(t,e.source).loadTile(e,r)},_t.prototype.reloadTile=function(t,e,r){this.getWorkerSource(t,e.type,e.source).reloadTile(e,r)},_t.prototype.abortTile=function(t,e,r){this.getWorkerSource(t,e.type,e.source).abortTile(e,r)},_t.prototype.removeTile=function(t,e,r){this.getWorkerSource(t,e.type,e.source).removeTile(e,r)},_t.prototype.removeDEMTile=function(t,e){this.getDEMWorkerSource(t,e.source).removeTile(e)},_t.prototype.removeSource=function(t,e,r){if(this.workerSources[t]&&this.workerSources[t][e.type]&&this.workerSources[t][e.type][e.source]){var n=this.workerSources[t][e.type][e.source];delete this.workerSources[t][e.type][e.source],void 0!==n.removeSource?n.removeSource(e,r):r()}},_t.prototype.loadWorkerSource=function(t,e,r){try{this.self.importScripts(e.url),r()}catch(t){r(t.toString())}},_t.prototype.syncRTLPluginState=function(e,r,n){try{t.plugin.setState(r);var a=t.plugin.getPluginURL();if(t.plugin.isLoaded()&&!t.plugin.isParsed()&&null!=a){this.self.importScripts(a);var i=t.plugin.isParsed();n(i?void 0:new Error("RTL Text Plugin failed to import scripts from "+a),i)}}catch(t){n(t.toString())}},_t.prototype.getAvailableImages=function(t){var e=this.availableImages[t];return e||(e=[]),e},_t.prototype.getLayerIndex=function(t){var e=this.layerIndexes[t];return e||(e=this.layerIndexes[t]=new n),e},_t.prototype.getWorkerSource=function(t,e,r){var n=this;return this.workerSources[t]||(this.workerSources[t]={}),this.workerSources[t][e]||(this.workerSources[t][e]={}),this.workerSources[t][e][r]||(this.workerSources[t][e][r]=new this.workerSourceTypes[e]({send:function(e,r,a){n.actor.send(e,r,a,t)}},this.getLayerIndex(t),this.getAvailableImages(t))),this.workerSources[t][e][r]},_t.prototype.getDEMWorkerSource=function(t,e){return this.demWorkerSources[t]||(this.demWorkerSources[t]={}),this.demWorkerSources[t][e]||(this.demWorkerSources[t][e]=new u),this.demWorkerSources[t][e]},_t.prototype.enforceCacheSizeLimit=function(e,r){t.enforceCacheSizeLimit(r)},"undefined"!=typeof WorkerGlobalScope&&void 0!==t.window&&t.window instanceof WorkerGlobalScope&&(t.window.worker=new _t(t.window)),_t})),n(0,(function(t){var e=t.createCommonjsModule((function(t){function e(t){return!r(t)}function r(t){return"undefined"==typeof window||"undefined"==typeof document?"not a browser":Array.prototype&&Array.prototype.every&&Array.prototype.filter&&Array.prototype.forEach&&Array.prototype.indexOf&&Array.prototype.lastIndexOf&&Array.prototype.map&&Array.prototype.some&&Array.prototype.reduce&&Array.prototype.reduceRight&&Array.isArray?Function.prototype&&Function.prototype.bind?Object.keys&&Object.create&&Object.getPrototypeOf&&Object.getOwnPropertyNames&&Object.isSealed&&Object.isFrozen&&Object.isExtensible&&Object.getOwnPropertyDescriptor&&Object.defineProperty&&Object.defineProperties&&Object.seal&&Object.freeze&&Object.preventExtensions?"JSON"in window&&"parse"in JSON&&"stringify"in JSON?function(){if(!("Worker"in window&&"Blob"in window&&"URL"in window))return!1;var t,e,r=new Blob([""],{type:"text/javascript"}),n=URL.createObjectURL(r);try{e=new Worker(n),t=!0}catch(e){t=!1}return e&&e.terminate(),URL.revokeObjectURL(n),t}()?"Uint8ClampedArray"in window?ArrayBuffer.isView?function(){var t=document.createElement("canvas");t.width=t.height=1;var e=t.getContext("2d");if(!e)return!1;var r=e.getImageData(0,0,1,1);return r&&r.width===t.width}()?(void 0===n[r=t&&t.failIfMajorPerformanceCaveat]&&(n[r]=function(t){var r=function(t){var r=document.createElement("canvas"),n=Object.create(e.webGLContextAttributes);return n.failIfMajorPerformanceCaveat=t,r.probablySupportsContext?r.probablySupportsContext("webgl",n)||r.probablySupportsContext("experimental-webgl",n):r.supportsContext?r.supportsContext("webgl",n)||r.supportsContext("experimental-webgl",n):r.getContext("webgl",n)||r.getContext("experimental-webgl",n)}(t);if(!r)return!1;var n=r.createShader(r.VERTEX_SHADER);return!(!n||r.isContextLost())&&(r.shaderSource(n,"void main() {}"),r.compileShader(n),!0===r.getShaderParameter(n,r.COMPILE_STATUS))}(r)),n[r]?void 0:"insufficient WebGL support"):"insufficient Canvas/getImageData support":"insufficient ArrayBuffer support":"insufficient Uint8ClampedArray support":"insufficient worker support":"insufficient JSON support":"insufficient Object support":"insufficient Function support":"insufficent Array support";var r}t.exports?t.exports=e:window&&(window.mapboxgl=window.mapboxgl||{},window.mapboxgl.supported=e,window.mapboxgl.notSupportedReason=r);var n={};e.webGLContextAttributes={antialias:!1,alpha:!0,stencil:!0,depth:!0}})),r={create:function(e,r,n){var a=t.window.document.createElement(e);return void 0!==r&&(a.className=r),n&&n.appendChild(a),a},createNS:function(e,r){return t.window.document.createElementNS(e,r)}},n=t.window.document.documentElement.style;function a(t){if(!n)return t[0];for(var e=0;e<t.length;e++)if(t[e]in n)return t[e];return t[0]}var i,o=a(["userSelect","MozUserSelect","WebkitUserSelect","msUserSelect"]);r.disableDrag=function(){n&&o&&(i=n[o],n[o]="none")},r.enableDrag=function(){n&&o&&(n[o]=i)};var s=a(["transform","WebkitTransform"]);r.setTransform=function(t,e){t.style[s]=e};var l=!1;try{var c=Object.defineProperty({},"passive",{get:function(){l=!0}});t.window.addEventListener("test",c,c),t.window.removeEventListener("test",c,c)}catch(t){l=!1}r.addEventListener=function(t,e,r,n){void 0===n&&(n={}),t.addEventListener(e,r,"passive"in n&&l?n:n.capture)},r.removeEventListener=function(t,e,r,n){void 0===n&&(n={}),t.removeEventListener(e,r,"passive"in n&&l?n:n.capture)};var u=function(e){e.preventDefault(),e.stopPropagation(),t.window.removeEventListener("click",u,!0)};function h(t){var e=t.userImage;return!!(e&&e.render&&e.render())&&(t.data.replace(new Uint8Array(e.data.buffer)),!0)}r.suppressClick=function(){t.window.addEventListener("click",u,!0),t.window.setTimeout((function(){t.window.removeEventListener("click",u,!0)}),0)},r.mousePos=function(e,r){var n=e.getBoundingClientRect();return new t.Point(r.clientX-n.left-e.clientLeft,r.clientY-n.top-e.clientTop)},r.touchPos=function(e,r){for(var n=e.getBoundingClientRect(),a=[],i=0;i<r.length;i++)a.push(new t.Point(r[i].clientX-n.left-e.clientLeft,r[i].clientY-n.top-e.clientTop));return a},r.mouseButton=function(e){return void 0!==t.window.InstallTrigger&&2===e.button&&e.ctrlKey&&t.window.navigator.platform.toUpperCase().indexOf("MAC")>=0?0:e.button},r.remove=function(t){t.parentNode&&t.parentNode.removeChild(t)};var f=function(e){function r(){e.call(this),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new t.RGBAImage({width:1,height:1}),this.dirty=!0}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.isLoaded=function(){return this.loaded},r.prototype.setLoaded=function(t){if(this.loaded!==t&&(this.loaded=t,t)){for(var e=0,r=this.requestors;e<r.length;e+=1){var n=r[e];this._notify(n.ids,n.callback)}this.requestors=[]}},r.prototype.getImage=function(t){return this.images[t]},r.prototype.addImage=function(t,e){this._validate(t,e)&&(this.images[t]=e)},r.prototype._validate=function(e,r){var n=!0;return this._validateStretch(r.stretchX,r.data&&r.data.width)||(this.fire(new t.ErrorEvent(new Error('Image "'+e+'" has invalid "stretchX" value'))),n=!1),this._validateStretch(r.stretchY,r.data&&r.data.height)||(this.fire(new t.ErrorEvent(new Error('Image "'+e+'" has invalid "stretchY" value'))),n=!1),this._validateContent(r.content,r)||(this.fire(new t.ErrorEvent(new Error('Image "'+e+'" has invalid "content" value'))),n=!1),n},r.prototype._validateStretch=function(t,e){if(!t)return!0;for(var r=0,n=0,a=t;n<a.length;n+=1){var i=a[n];if(i[0]<r||i[1]<i[0]||e<i[1])return!1;r=i[1]}return!0},r.prototype._validateContent=function(t,e){return!(t&&(4!==t.length||t[0]<0||e.data.width<t[0]||t[1]<0||e.data.height<t[1]||t[2]<0||e.data.width<t[2]||t[3]<0||e.data.height<t[3]||t[2]<t[0]||t[3]<t[1]))},r.prototype.updateImage=function(t,e){e.version=this.images[t].version+1,this.images[t]=e,this.updatedImages[t]=!0},r.prototype.removeImage=function(t){var e=this.images[t];delete this.images[t],delete this.patterns[t],e.userImage&&e.userImage.onRemove&&e.userImage.onRemove()},r.prototype.listImages=function(){return Object.keys(this.images)},r.prototype.getImages=function(t,e){var r=!0;if(!this.isLoaded())for(var n=0,a=t;n<a.length;n+=1)this.images[a[n]]||(r=!1);this.isLoaded()||r?this._notify(t,e):this.requestors.push({ids:t,callback:e})},r.prototype._notify=function(e,r){for(var n={},a=0,i=e;a<i.length;a+=1){var o=i[a];this.images[o]||this.fire(new t.Event("styleimagemissing",{id:o}));var s=this.images[o];s?n[o]={data:s.data.clone(),pixelRatio:s.pixelRatio,sdf:s.sdf,version:s.version,stretchX:s.stretchX,stretchY:s.stretchY,content:s.content,hasRenderCallback:Boolean(s.userImage&&s.userImage.render)}:t.warnOnce('Image "'+o+'" 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.')}r(null,n)},r.prototype.getPixelSize=function(){var t=this.atlasImage;return{width:t.width,height:t.height}},r.prototype.getPattern=function(e){var r=this.patterns[e],n=this.getImage(e);if(!n)return null;if(r&&r.position.version===n.version)return r.position;if(r)r.position.version=n.version;else{var a={w:n.data.width+2,h:n.data.height+2,x:0,y:0},i=new t.ImagePosition(a,n);this.patterns[e]={bin:a,position:i}}return this._updatePatternAtlas(),this.patterns[e].position},r.prototype.bind=function(e){var r=e.gl;this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new t.Texture(e,this.atlasImage,r.RGBA),this.atlasTexture.bind(r.LINEAR,r.CLAMP_TO_EDGE)},r.prototype._updatePatternAtlas=function(){var e=[];for(var r in this.patterns)e.push(this.patterns[r].bin);var n=t.potpack(e),a=n.w,i=n.h,o=this.atlasImage;for(var s in o.resize({width:a||1,height:i||1}),this.patterns){var l=this.patterns[s].bin,c=l.x+1,u=l.y+1,h=this.images[s].data,f=h.width,p=h.height;t.RGBAImage.copy(h,o,{x:0,y:0},{x:c,y:u},{width:f,height:p}),t.RGBAImage.copy(h,o,{x:0,y:p-1},{x:c,y:u-1},{width:f,height:1}),t.RGBAImage.copy(h,o,{x:0,y:0},{x:c,y:u+p},{width:f,height:1}),t.RGBAImage.copy(h,o,{x:f-1,y:0},{x:c-1,y:u},{width:1,height:p}),t.RGBAImage.copy(h,o,{x:0,y:0},{x:c+f,y:u},{width:1,height:p})}this.dirty=!0},r.prototype.beginFrame=function(){this.callbackDispatchedThisFrame={}},r.prototype.dispatchRenderCallbacks=function(t){for(var e=0,r=t;e<r.length;e+=1){var n=r[e];if(!this.callbackDispatchedThisFrame[n]){this.callbackDispatchedThisFrame[n]=!0;var a=this.images[n];h(a)&&this.updateImage(n,a)}}},r}(t.Evented),p=m,d=m,g=1e20;function m(t,e,r,n,a,i){this.fontSize=t||24,this.buffer=void 0===e?3:e,this.cutoff=n||.25,this.fontFamily=a||"sans-serif",this.fontWeight=i||"normal",this.radius=r||8;var o=this.size=this.fontSize+2*this.buffer;this.canvas=document.createElement("canvas"),this.canvas.width=this.canvas.height=o,this.ctx=this.canvas.getContext("2d"),this.ctx.font=this.fontWeight+" "+this.fontSize+"px "+this.fontFamily,this.ctx.textBaseline="middle",this.ctx.fillStyle="black",this.gridOuter=new Float64Array(o*o),this.gridInner=new Float64Array(o*o),this.f=new Float64Array(o),this.d=new Float64Array(o),this.z=new Float64Array(o+1),this.v=new Int16Array(o),this.middle=Math.round(o/2*(navigator.userAgent.indexOf("Gecko/")>=0?1.2:1))}function v(t,e,r,n,a,i,o){for(var s=0;s<e;s++){for(var l=0;l<r;l++)n[l]=t[l*e+s];for(y(n,a,i,o,r),l=0;l<r;l++)t[l*e+s]=a[l]}for(l=0;l<r;l++){for(s=0;s<e;s++)n[s]=t[l*e+s];for(y(n,a,i,o,e),s=0;s<e;s++)t[l*e+s]=Math.sqrt(a[s])}}function y(t,e,r,n,a){r[0]=0,n[0]=-g,n[1]=+g;for(var i=1,o=0;i<a;i++){for(var s=(t[i]+i*i-(t[r[o]]+r[o]*r[o]))/(2*i-2*r[o]);s<=n[o];)o--,s=(t[i]+i*i-(t[r[o]]+r[o]*r[o]))/(2*i-2*r[o]);r[++o]=i,n[o]=s,n[o+1]=+g}for(i=0,o=0;i<a;i++){for(;n[o+1]<i;)o++;e[i]=(i-r[o])*(i-r[o])+t[r[o]]}}m.prototype.draw=function(t){this.ctx.clearRect(0,0,this.size,this.size),this.ctx.fillText(t,this.buffer,this.middle);for(var e=this.ctx.getImageData(0,0,this.size,this.size),r=new Uint8ClampedArray(this.size*this.size),n=0;n<this.size*this.size;n++){var a=e.data[4*n+3]/255;this.gridOuter[n]=1===a?0:0===a?g:Math.pow(Math.max(0,.5-a),2),this.gridInner[n]=1===a?g:0===a?0:Math.pow(Math.max(0,a-.5),2)}for(v(this.gridOuter,this.size,this.size,this.f,this.d,this.v,this.z),v(this.gridInner,this.size,this.size,this.f,this.d,this.v,this.z),n=0;n<this.size*this.size;n++)r[n]=Math.max(0,Math.min(255,Math.round(255-255*((this.gridOuter[n]-this.gridInner[n])/this.radius+this.cutoff))));return r},p.default=d;var x=function(t,e){this.requestManager=t,this.localIdeographFontFamily=e,this.entries={}};x.prototype.setURL=function(t){this.url=t},x.prototype.getGlyphs=function(e,r){var n=this,a=[];for(var i in e)for(var o=0,s=e[i];o<s.length;o+=1)a.push({stack:i,id:s[o]});t.asyncAll(a,(function(t,e){var r=t.stack,a=t.id,i=n.entries[r];i||(i=n.entries[r]={glyphs:{},requests:{},ranges:{}});var o=i.glyphs[a];if(void 0===o){if(o=n._tinySDF(i,r,a))return i.glyphs[a]=o,void e(null,{stack:r,id:a,glyph:o});var s=Math.floor(a/256);if(256*s>65535)e(new Error("glyphs > 65535 not supported"));else if(i.ranges[s])e(null,{stack:r,id:a,glyph:o});else{var l=i.requests[s];l||(l=i.requests[s]=[],x.loadGlyphRange(r,s,n.url,n.requestManager,(function(t,e){if(e){for(var r in e)n._doesCharSupportLocalGlyph(+r)||(i.glyphs[+r]=e[+r]);i.ranges[s]=!0}for(var a=0,o=l;a<o.length;a+=1)(0,o[a])(t,e);delete i.requests[s]}))),l.push((function(t,n){t?e(t):n&&e(null,{stack:r,id:a,glyph:n[a]||null})}))}}else e(null,{stack:r,id:a,glyph:o})}),(function(t,e){if(t)r(t);else if(e){for(var n={},a=0,i=e;a<i.length;a+=1){var o=i[a],s=o.stack,l=o.id,c=o.glyph;(n[s]||(n[s]={}))[l]=c&&{id:c.id,bitmap:c.bitmap.clone(),metrics:c.metrics}}r(null,n)}}))},x.prototype._doesCharSupportLocalGlyph=function(e){return!!this.localIdeographFontFamily&&(t.isChar["CJK Unified Ideographs"](e)||t.isChar["Hangul Syllables"](e)||t.isChar.Hiragana(e)||t.isChar.Katakana(e))},x.prototype._tinySDF=function(e,r,n){var a=this.localIdeographFontFamily;if(a&&this._doesCharSupportLocalGlyph(n)){var i=e.tinySDF;if(!i){var o="400";/bold/i.test(r)?o="900":/medium/i.test(r)?o="500":/light/i.test(r)&&(o="200"),i=e.tinySDF=new x.TinySDF(24,3,8,.25,a,o)}return{id:n,bitmap:new t.AlphaImage({width:30,height:30},i.draw(String.fromCharCode(n))),metrics:{width:24,height:24,left:0,top:-8,advance:24}}}},x.loadGlyphRange=function(e,r,n,a,i){var o=256*r,s=o+255,l=a.transformRequest(a.normalizeGlyphsURL(n).replace("{fontstack}",e).replace("{range}",o+"-"+s),t.ResourceType.Glyphs);t.getArrayBuffer(l,(function(e,r){if(e)i(e);else if(r){for(var n={},a=0,o=t.parseGlyphPBF(r);a<o.length;a+=1){var s=o[a];n[s.id]=s}i(null,n)}}))},x.TinySDF=p;var b=function(){this.specification=t.styleSpec.light.position};b.prototype.possiblyEvaluate=function(e,r){return t.sphericalToCartesian(e.expression.evaluate(r))},b.prototype.interpolate=function(e,r,n){return{x:t.number(e.x,r.x,n),y:t.number(e.y,r.y,n),z:t.number(e.z,r.z,n)}};var _=new t.Properties({anchor:new t.DataConstantProperty(t.styleSpec.light.anchor),position:new b,color:new t.DataConstantProperty(t.styleSpec.light.color),intensity:new t.DataConstantProperty(t.styleSpec.light.intensity)}),w=function(e){function r(r){e.call(this),this._transitionable=new t.Transitionable(_),this.setLight(r),this._transitioning=this._transitionable.untransitioned()}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.getLight=function(){return this._transitionable.serialize()},r.prototype.setLight=function(e,r){if(void 0===r&&(r={}),!this._validate(t.validateLight,e,r))for(var n in e){var a=e[n];t.endsWith(n,"-transition")?this._transitionable.setTransition(n.slice(0,-"-transition".length),a):this._transitionable.setValue(n,a)}},r.prototype.updateTransitions=function(t){this._transitioning=this._transitionable.transitioned(t,this._transitioning)},r.prototype.hasTransition=function(){return this._transitioning.hasTransition()},r.prototype.recalculate=function(t){this.properties=this._transitioning.possiblyEvaluate(t)},r.prototype._validate=function(e,r,n){return(!n||!1!==n.validate)&&t.emitValidationErrors(this,e.call(t.validateStyle,t.extend({value:r,style:{glyphs:!0,sprite:!0},styleSpec:t.styleSpec})))},r}(t.Evented),T=function(t,e){this.width=t,this.height=e,this.nextRow=0,this.data=new Uint8Array(this.width*this.height),this.dashEntry={}};T.prototype.getDash=function(t,e){var r=t.join(",")+String(e);return this.dashEntry[r]||(this.dashEntry[r]=this.addDash(t,e)),this.dashEntry[r]},T.prototype.getDashRanges=function(t,e,r){var n=[],a=t.length%2==1?-t[t.length-1]*r:0,i=t[0]*r,o=!0;n.push({left:a,right:i,isDash:o,zeroLength:0===t[0]});for(var s=t[0],l=1;l<t.length;l++){var c=t[l];n.push({left:a=s*r,right:i=(s+=c)*r,isDash:o=!o,zeroLength:0===c})}return n},T.prototype.addRoundDash=function(t,e,r){for(var n=e/2,a=-r;a<=r;a++)for(var i=this.width*(this.nextRow+r+a),o=0,s=t[o],l=0;l<this.width;l++){l/s.right>1&&(s=t[++o]);var c=Math.abs(l-s.left),u=Math.abs(l-s.right),h=Math.min(c,u),f=void 0,p=a/r*(n+1);if(s.isDash){var d=n-Math.abs(p);f=Math.sqrt(h*h+d*d)}else f=n-Math.sqrt(h*h+p*p);this.data[i+l]=Math.max(0,Math.min(255,f+128))}},T.prototype.addRegularDash=function(t){for(var e=t.length-1;e>=0;--e){var r=t[e],n=t[e+1];r.zeroLength?t.splice(e,1):n&&n.isDash===r.isDash&&(n.left=r.left,t.splice(e,1))}var a=t[0],i=t[t.length-1];a.isDash===i.isDash&&(a.left=i.left-this.width,i.right=a.right+this.width);for(var o=this.width*this.nextRow,s=0,l=t[s],c=0;c<this.width;c++){c/l.right>1&&(l=t[++s]);var u=Math.abs(c-l.left),h=Math.abs(c-l.right),f=Math.min(u,h);this.data[o+c]=Math.max(0,Math.min(255,(l.isDash?f:-f)+128))}},T.prototype.addDash=function(e,r){var n=r?7:0,a=2*n+1;if(this.nextRow+a>this.height)return t.warnOnce("LineAtlas out of space"),null;for(var i=0,o=0;o<e.length;o++)i+=e[o];if(0!==i){var s=this.width/i,l=this.getDashRanges(e,this.width,s);r?this.addRoundDash(l,s,n):this.addRegularDash(l)}var c={y:(this.nextRow+n+.5)/this.height,height:2*n/this.height,width:i};return this.nextRow+=a,this.dirty=!0,c},T.prototype.bind=function(t){var e=t.gl;this.texture?(e.bindTexture(e.TEXTURE_2D,this.texture),this.dirty&&(this.dirty=!1,e.texSubImage2D(e.TEXTURE_2D,0,0,0,this.width,this.height,e.ALPHA,e.UNSIGNED_BYTE,this.data))):(this.texture=e.createTexture(),e.bindTexture(e.TEXTURE_2D,this.texture),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.REPEAT),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.REPEAT),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texImage2D(e.TEXTURE_2D,0,e.ALPHA,this.width,this.height,0,e.ALPHA,e.UNSIGNED_BYTE,this.data))};var k=function e(r,n){this.workerPool=r,this.actors=[],this.currentActor=0,this.id=t.uniqueId();for(var a=this.workerPool.acquire(this.id),i=0;i<a.length;i++){var o=new e.Actor(a[i],n,this.id);o.name="Worker "+i,this.actors.push(o)}};function A(e,r,n){var a=function(a,i){if(a)return n(a);if(i){var o=t.pick(t.extend(i,e),["tiles","minzoom","maxzoom","attribution","mapbox_logo","bounds","scheme","tileSize","encoding"]);i.vector_layers&&(o.vectorLayers=i.vector_layers,o.vectorLayerIds=o.vectorLayers.map((function(t){return t.id}))),o.tiles=r.canonicalizeTileset(o,e.url),n(null,o)}};return e.url?t.getJSON(r.transformRequest(r.normalizeSourceURL(e.url),t.ResourceType.Source),a):t.browser.frame((function(){return a(null,e)}))}k.prototype.broadcast=function(e,r,n){t.asyncAll(this.actors,(function(t,n){t.send(e,r,n)}),n=n||function(){})},k.prototype.getActor=function(){return this.currentActor=(this.currentActor+1)%this.actors.length,this.actors[this.currentActor]},k.prototype.remove=function(){this.actors.forEach((function(t){t.remove()})),this.actors=[],this.workerPool.release(this.id)},k.Actor=t.Actor;var M=function(e,r,n){this.bounds=t.LngLatBounds.convert(this.validateBounds(e)),this.minzoom=r||0,this.maxzoom=n||24};M.prototype.validateBounds=function(t){return Array.isArray(t)&&4===t.length?[Math.max(-180,t[0]),Math.max(-90,t[1]),Math.min(180,t[2]),Math.min(90,t[3])]:[-180,-90,180,90]},M.prototype.contains=function(e){var r=Math.pow(2,e.z),n=Math.floor(t.mercatorXfromLng(this.bounds.getWest())*r),a=Math.floor(t.mercatorYfromLat(this.bounds.getNorth())*r),i=Math.ceil(t.mercatorXfromLng(this.bounds.getEast())*r),o=Math.ceil(t.mercatorYfromLat(this.bounds.getSouth())*r);return e.x>=n&&e.x<i&&e.y>=a&&e.y<o};var S=function(e){function r(r,n,a,i){if(e.call(this),this.id=r,this.dispatcher=a,this.type="vector",this.minzoom=0,this.maxzoom=22,this.scheme="xyz",this.tileSize=512,this.reparseOverscaled=!0,this.isTileClipped=!0,this._loaded=!1,t.extend(this,t.pick(n,["url","scheme","tileSize","promoteId"])),this._options=t.extend({type:"vector"},n),this._collectResourceTiming=n.collectResourceTiming,512!==this.tileSize)throw new Error("vector tile sources must have a tileSize of 512");this.setEventedParent(i)}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.load=function(){var e=this;this._loaded=!1,this.fire(new t.Event("dataloading",{dataType:"source"})),this._tileJSONRequest=A(this._options,this.map._requestManager,(function(r,n){e._tileJSONRequest=null,e._loaded=!0,r?e.fire(new t.ErrorEvent(r)):n&&(t.extend(e,n),n.bounds&&(e.tileBounds=new M(n.bounds,e.minzoom,e.maxzoom)),t.postTurnstileEvent(n.tiles,e.map._requestManager._customAccessToken),t.postMapLoadEvent(n.tiles,e.map._getMapId(),e.map._requestManager._skuToken,e.map._requestManager._customAccessToken),e.fire(new t.Event("data",{dataType:"source",sourceDataType:"metadata"})),e.fire(new t.Event("data",{dataType:"source",sourceDataType:"content"})))}))},r.prototype.loaded=function(){return this._loaded},r.prototype.hasTile=function(t){return!this.tileBounds||this.tileBounds.contains(t.canonical)},r.prototype.onAdd=function(t){this.map=t,this.load()},r.prototype.onRemove=function(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)},r.prototype.serialize=function(){return t.extend({},this._options)},r.prototype.loadTile=function(e,r){var n=this.map._requestManager.normalizeTileURL(e.tileID.canonical.url(this.tiles,this.scheme)),a={request:this.map._requestManager.transformRequest(n,t.ResourceType.Tile),uid:e.uid,tileID:e.tileID,zoom:e.tileID.overscaledZ,tileSize:this.tileSize*e.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:t.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};function i(n,a){return delete e.request,e.aborted?r(null):n&&404!==n.status?r(n):(a&&a.resourceTiming&&(e.resourceTiming=a.resourceTiming),this.map._refreshExpiredTiles&&a&&e.setExpiryData(a),e.loadVectorData(a,this.map.painter),t.cacheEntryPossiblyAdded(this.dispatcher),r(null),void(e.reloadCallback&&(this.loadTile(e,e.reloadCallback),e.reloadCallback=null)))}a.request.collectResourceTiming=this._collectResourceTiming,e.actor&&"expired"!==e.state?"loading"===e.state?e.reloadCallback=r:e.request=e.actor.send("reloadTile",a,i.bind(this)):(e.actor=this.dispatcher.getActor(),e.request=e.actor.send("loadTile",a,i.bind(this)))},r.prototype.abortTile=function(t){t.request&&(t.request.cancel(),delete t.request),t.actor&&t.actor.send("abortTile",{uid:t.uid,type:this.type,source:this.id},void 0)},r.prototype.unloadTile=function(t){t.unloadVectorData(),t.actor&&t.actor.send("removeTile",{uid:t.uid,type:this.type,source:this.id},void 0)},r.prototype.hasTransition=function(){return!1},r}(t.Evented),E=function(e){function r(r,n,a,i){e.call(this),this.id=r,this.dispatcher=a,this.setEventedParent(i),this.type="raster",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme="xyz",this.tileSize=512,this._loaded=!1,this._options=t.extend({type:"raster"},n),t.extend(this,t.pick(n,["url","scheme","tileSize"]))}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.load=function(){var e=this;this._loaded=!1,this.fire(new t.Event("dataloading",{dataType:"source"})),this._tileJSONRequest=A(this._options,this.map._requestManager,(function(r,n){e._tileJSONRequest=null,e._loaded=!0,r?e.fire(new t.ErrorEvent(r)):n&&(t.extend(e,n),n.bounds&&(e.tileBounds=new M(n.bounds,e.minzoom,e.maxzoom)),t.postTurnstileEvent(n.tiles),t.postMapLoadEvent(n.tiles,e.map._getMapId(),e.map._requestManager._skuToken),e.fire(new t.Event("data",{dataType:"source",sourceDataType:"metadata"})),e.fire(new t.Event("data",{dataType:"source",sourceDataType:"content"})))}))},r.prototype.loaded=function(){return this._loaded},r.prototype.onAdd=function(t){this.map=t,this.load()},r.prototype.onRemove=function(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)},r.prototype.serialize=function(){return t.extend({},this._options)},r.prototype.hasTile=function(t){return!this.tileBounds||this.tileBounds.contains(t.canonical)},r.prototype.loadTile=function(e,r){var n=this,a=this.map._requestManager.normalizeTileURL(e.tileID.canonical.url(this.tiles,this.scheme),this.tileSize);e.request=t.getImage(this.map._requestManager.transformRequest(a,t.ResourceType.Tile),(function(a,i){if(delete e.request,e.aborted)e.state="unloaded",r(null);else if(a)e.state="errored",r(a);else if(i){n.map._refreshExpiredTiles&&e.setExpiryData(i),delete i.cacheControl,delete i.expires;var o=n.map.painter.context,s=o.gl;e.texture=n.map.painter.getTileTexture(i.width),e.texture?e.texture.update(i,{useMipmap:!0}):(e.texture=new t.Texture(o,i,s.RGBA,{useMipmap:!0}),e.texture.bind(s.LINEAR,s.CLAMP_TO_EDGE,s.LINEAR_MIPMAP_NEAREST),o.extTextureFilterAnisotropic&&s.texParameterf(s.TEXTURE_2D,o.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,o.extTextureFilterAnisotropicMax)),e.state="loaded",t.cacheEntryPossiblyAdded(n.dispatcher),r(null)}}))},r.prototype.abortTile=function(t,e){t.request&&(t.request.cancel(),delete t.request),e()},r.prototype.unloadTile=function(t,e){t.texture&&this.map.painter.saveTileTexture(t.texture),e()},r.prototype.hasTransition=function(){return!1},r}(t.Evented),C=function(e){function r(r,n,a,i){e.call(this,r,n,a,i),this.type="raster-dem",this.maxzoom=22,this._options=t.extend({type:"raster-dem"},n),this.encoding=n.encoding||"mapbox"}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.serialize=function(){return{type:"raster-dem",url:this.url,tileSize:this.tileSize,tiles:this.tiles,bounds:this.bounds,encoding:this.encoding}},r.prototype.loadTile=function(e,r){var n=this.map._requestManager.normalizeTileURL(e.tileID.canonical.url(this.tiles,this.scheme),this.tileSize);function a(t,n){t&&(e.state="errored",r(t)),n&&(e.dem=n,e.needsHillshadePrepare=!0,e.state="loaded",r(null))}e.request=t.getImage(this.map._requestManager.transformRequest(n,t.ResourceType.Tile),function(n,i){if(delete e.request,e.aborted)e.state="unloaded",r(null);else if(n)e.state="errored",r(n);else if(i){this.map._refreshExpiredTiles&&e.setExpiryData(i),delete i.cacheControl,delete i.expires;var o=t.window.ImageBitmap&&i instanceof t.window.ImageBitmap&&t.offscreenCanvasSupported()?i:t.browser.getImageData(i,1),s={uid:e.uid,coord:e.tileID,source:this.id,rawImageData:o,encoding:this.encoding};e.actor&&"expired"!==e.state||(e.actor=this.dispatcher.getActor(),e.actor.send("loadDEMTile",s,a.bind(this)))}}.bind(this)),e.neighboringTiles=this._getNeighboringTiles(e.tileID)},r.prototype._getNeighboringTiles=function(e){var r=e.canonical,n=Math.pow(2,r.z),a=(r.x-1+n)%n,i=0===r.x?e.wrap-1:e.wrap,o=(r.x+1+n)%n,s=r.x+1===n?e.wrap+1:e.wrap,l={};return l[new t.OverscaledTileID(e.overscaledZ,i,r.z,a,r.y).key]={backfilled:!1},l[new t.OverscaledTileID(e.overscaledZ,s,r.z,o,r.y).key]={backfilled:!1},r.y>0&&(l[new t.OverscaledTileID(e.overscaledZ,i,r.z,a,r.y-1).key]={backfilled:!1},l[new t.OverscaledTileID(e.overscaledZ,e.wrap,r.z,r.x,r.y-1).key]={backfilled:!1},l[new t.OverscaledTileID(e.overscaledZ,s,r.z,o,r.y-1).key]={backfilled:!1}),r.y+1<n&&(l[new t.OverscaledTileID(e.overscaledZ,i,r.z,a,r.y+1).key]={backfilled:!1},l[new t.OverscaledTileID(e.overscaledZ,e.wrap,r.z,r.x,r.y+1).key]={backfilled:!1},l[new t.OverscaledTileID(e.overscaledZ,s,r.z,o,r.y+1).key]={backfilled:!1}),l},r.prototype.unloadTile=function(t){t.demTexture&&this.map.painter.saveTileTexture(t.demTexture),t.fbo&&(t.fbo.destroy(),delete t.fbo),t.dem&&delete t.dem,delete t.neighboringTiles,t.state="unloaded",t.actor&&t.actor.send("removeDEMTile",{uid:t.uid,source:this.id})},r}(E),L=function(e){function r(r,n,a,i){e.call(this),this.id=r,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=a.getActor(),this.setEventedParent(i),this._data=n.data,this._options=t.extend({},n),this._collectResourceTiming=n.collectResourceTiming,this._resourceTiming=[],void 0!==n.maxzoom&&(this.maxzoom=n.maxzoom),n.type&&(this.type=n.type),n.attribution&&(this.attribution=n.attribution),this.promoteId=n.promoteId;var o=t.EXTENT/this.tileSize;this.workerOptions=t.extend({source:this.id,cluster:n.cluster||!1,geojsonVtOptions:{buffer:(void 0!==n.buffer?n.buffer:128)*o,tolerance:(void 0!==n.tolerance?n.tolerance:.375)*o,extent:t.EXTENT,maxZoom:this.maxzoom,lineMetrics:n.lineMetrics||!1,generateId:n.generateId||!1},superclusterOptions:{maxZoom:void 0!==n.clusterMaxZoom?Math.min(n.clusterMaxZoom,this.maxzoom-1):this.maxzoom-1,extent:t.EXTENT,radius:(n.clusterRadius||50)*o,log:!1,generateId:n.generateId||!1},clusterProperties:n.clusterProperties},n.workerOptions)}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.load=function(){var e=this;this.fire(new t.Event("dataloading",{dataType:"source"})),this._updateWorkerData((function(r){if(r)e.fire(new t.ErrorEvent(r));else{var n={dataType:"source",sourceDataType:"metadata"};e._collectResourceTiming&&e._resourceTiming&&e._resourceTiming.length>0&&(n.resourceTiming=e._resourceTiming,e._resourceTiming=[]),e.fire(new t.Event("data",n))}}))},r.prototype.onAdd=function(t){this.map=t,this.load()},r.prototype.setData=function(e){var r=this;return this._data=e,this.fire(new t.Event("dataloading",{dataType:"source"})),this._updateWorkerData((function(e){if(e)r.fire(new t.ErrorEvent(e));else{var n={dataType:"source",sourceDataType:"content"};r._collectResourceTiming&&r._resourceTiming&&r._resourceTiming.length>0&&(n.resourceTiming=r._resourceTiming,r._resourceTiming=[]),r.fire(new t.Event("data",n))}})),this},r.prototype.getClusterExpansionZoom=function(t,e){return this.actor.send("geojson.getClusterExpansionZoom",{clusterId:t,source:this.id},e),this},r.prototype.getClusterChildren=function(t,e){return this.actor.send("geojson.getClusterChildren",{clusterId:t,source:this.id},e),this},r.prototype.getClusterLeaves=function(t,e,r,n){return this.actor.send("geojson.getClusterLeaves",{source:this.id,clusterId:t,limit:e,offset:r},n),this},r.prototype._updateWorkerData=function(e){var r=this;this._loaded=!1;var n=t.extend({},this.workerOptions),a=this._data;"string"==typeof a?(n.request=this.map._requestManager.transformRequest(t.browser.resolveURL(a),t.ResourceType.Source),n.request.collectResourceTiming=this._collectResourceTiming):n.data=JSON.stringify(a),this.actor.send(this.type+".loadData",n,(function(t,a){r._removed||a&&a.abandoned||(r._loaded=!0,a&&a.resourceTiming&&a.resourceTiming[r.id]&&(r._resourceTiming=a.resourceTiming[r.id].slice(0)),r.actor.send(r.type+".coalesce",{source:n.source},null),e(t))}))},r.prototype.loaded=function(){return this._loaded},r.prototype.loadTile=function(e,r){var n=this,a=e.actor?"reloadTile":"loadTile";e.actor=this.actor,e.request=this.actor.send(a,{type:this.type,uid:e.uid,tileID:e.tileID,zoom:e.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:t.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId},(function(t,i){return delete e.request,e.unloadVectorData(),e.aborted?r(null):t?r(t):(e.loadVectorData(i,n.map.painter,"reloadTile"===a),r(null))}))},r.prototype.abortTile=function(t){t.request&&(t.request.cancel(),delete t.request),t.aborted=!0},r.prototype.unloadTile=function(t){t.unloadVectorData(),this.actor.send("removeTile",{uid:t.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 t.extend({},this._options,{type:this.type,data:this._data})},r.prototype.hasTransition=function(){return!1},r}(t.Evented),P=t.createLayout([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]),I=function(e){function r(t,r,n,a){e.call(this),this.id=t,this.dispatcher=n,this.coordinates=r.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(a),this.options=r}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.load=function(e,r){var n=this;this._loaded=!1,this.fire(new t.Event("dataloading",{dataType:"source"})),this.url=this.options.url,t.getImage(this.map._requestManager.transformRequest(this.url,t.ResourceType.Image),(function(a,i){n._loaded=!0,a?n.fire(new t.ErrorEvent(a)):i&&(n.image=i,e&&(n.coordinates=e),r&&r(),n._finishLoading())}))},r.prototype.loaded=function(){return this._loaded},r.prototype.updateImage=function(t){var e=this;return this.image&&t.url?(this.options.url=t.url,this.load(t.coordinates,(function(){e.texture=null})),this):this},r.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new t.Event("data",{dataType:"source",sourceDataType:"metadata"})))},r.prototype.onAdd=function(t){this.map=t,this.load()},r.prototype.setCoordinates=function(e){var r=this;this.coordinates=e;var n=e.map(t.MercatorCoordinate.fromLngLat);this.tileID=function(e){for(var r=1/0,n=1/0,a=-1/0,i=-1/0,o=0,s=e;o<s.length;o+=1){var l=s[o];r=Math.min(r,l.x),n=Math.min(n,l.y),a=Math.max(a,l.x),i=Math.max(i,l.y)}var c=Math.max(a-r,i-n),u=Math.max(0,Math.floor(-Math.log(c)/Math.LN2)),h=Math.pow(2,u);return new t.CanonicalTileID(u,Math.floor((r+a)/2*h),Math.floor((n+i)/2*h))}(n),this.minzoom=this.maxzoom=this.tileID.z;var a=n.map((function(t){return r.tileID.getTilePoint(t)._round()}));return this._boundsArray=new t.StructArrayLayout4i8,this._boundsArray.emplaceBack(a[0].x,a[0].y,0,0),this._boundsArray.emplaceBack(a[1].x,a[1].y,t.EXTENT,0),this._boundsArray.emplaceBack(a[3].x,a[3].y,0,t.EXTENT),this._boundsArray.emplaceBack(a[2].x,a[2].y,t.EXTENT,t.EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new t.Event("data",{dataType:"source",sourceDataType:"content"})),this},r.prototype.prepare=function(){if(0!==Object.keys(this.tiles).length&&this.image){var e=this.map.painter.context,r=e.gl;for(var n in this.boundsBuffer||(this.boundsBuffer=e.createVertexBuffer(this._boundsArray,P.members)),this.boundsSegments||(this.boundsSegments=t.SegmentVector.simpleSegment(0,0,4,2)),this.texture||(this.texture=new t.Texture(e,this.image,r.RGBA),this.texture.bind(r.LINEAR,r.CLAMP_TO_EDGE)),this.tiles){var a=this.tiles[n];"loaded"!==a.state&&(a.state="loaded",a.texture=this.texture)}}},r.prototype.loadTile=function(t,e){this.tileID&&this.tileID.equals(t.tileID.canonical)?(this.tiles[String(t.tileID.wrap)]=t,t.buckets={},e(null)):(t.state="errored",e(null))},r.prototype.serialize=function(){return{type:"image",url:this.options.url,coordinates:this.coordinates}},r.prototype.hasTransition=function(){return!1},r}(t.Evented),z=function(e){function r(t,r,n,a){e.call(this,t,r,n,a),this.roundZoom=!0,this.type="video",this.options=r}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.load=function(){var e=this;this._loaded=!1;var r=this.options;this.urls=[];for(var n=0,a=r.urls;n<a.length;n+=1)this.urls.push(this.map._requestManager.transformRequest(a[n],t.ResourceType.Source).url);t.getVideo(this.urls,(function(r,n){e._loaded=!0,r?e.fire(new t.ErrorEvent(r)):n&&(e.video=n,e.video.loop=!0,e.video.addEventListener("playing",(function(){e.map.triggerRepaint()})),e.map&&e.video.play(),e._finishLoading())}))},r.prototype.pause=function(){this.video&&this.video.pause()},r.prototype.play=function(){this.video&&this.video.play()},r.prototype.seek=function(e){if(this.video){var r=this.video.seekable;e<r.start(0)||e>r.end(0)?this.fire(new t.ErrorEvent(new t.ValidationError("sources."+this.id,null,"Playback for this video can be set only between the "+r.start(0)+" and "+r.end(0)+"-second mark."))):this.video.currentTime=e}},r.prototype.getVideo=function(){return this.video},r.prototype.onAdd=function(t){this.map||(this.map=t,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},r.prototype.prepare=function(){if(!(0===Object.keys(this.tiles).length||this.video.readyState<2)){var e=this.map.painter.context,r=e.gl;for(var n in this.boundsBuffer||(this.boundsBuffer=e.createVertexBuffer(this._boundsArray,P.members)),this.boundsSegments||(this.boundsSegments=t.SegmentVector.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(r.LINEAR,r.CLAMP_TO_EDGE),r.texSubImage2D(r.TEXTURE_2D,0,0,0,r.RGBA,r.UNSIGNED_BYTE,this.video)):(this.texture=new t.Texture(e,this.video,r.RGBA),this.texture.bind(r.LINEAR,r.CLAMP_TO_EDGE)),this.tiles){var a=this.tiles[n];"loaded"!==a.state&&(a.state="loaded",a.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}(I),O=function(e){function r(r,n,a,i){e.call(this,r,n,a,i),n.coordinates?Array.isArray(n.coordinates)&&4===n.coordinates.length&&!n.coordinates.some((function(t){return!Array.isArray(t)||2!==t.length||t.some((function(t){return"number"!=typeof t}))}))||this.fire(new t.ErrorEvent(new t.ValidationError("sources."+r,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new t.ErrorEvent(new t.ValidationError("sources."+r,null,'missing required property "coordinates"'))),n.animate&&"boolean"!=typeof n.animate&&this.fire(new t.ErrorEvent(new t.ValidationError("sources."+r,null,'optional "animate" property must be a boolean value'))),n.canvas?"string"==typeof n.canvas||n.canvas instanceof t.window.HTMLCanvasElement||this.fire(new t.ErrorEvent(new t.ValidationError("sources."+r,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 t.ErrorEvent(new t.ValidationError("sources."+r,null,'missing required property "canvas"'))),this.options=n,this.animate=void 0===n.animate||n.animate}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.load=function(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof t.window.HTMLCanvasElement?this.options.canvas:t.window.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new t.ErrorEvent(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())},r.prototype.getCanvas=function(){return this.canvas},r.prototype.onAdd=function(t){this.map=t,this.load(),this.canvas&&this.animate&&this.play()},r.prototype.onRemove=function(){this.pause()},r.prototype.prepare=function(){var e=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,e=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,e=!0),!this._hasInvalidDimensions()&&0!==Object.keys(this.tiles).length){var r=this.map.painter.context,n=r.gl;for(var a in this.boundsBuffer||(this.boundsBuffer=r.createVertexBuffer(this._boundsArray,P.members)),this.boundsSegments||(this.boundsSegments=t.SegmentVector.simpleSegment(0,0,4,2)),this.texture?(e||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new t.Texture(r,this.canvas,n.RGBA,{premultiply:!0}),this.tiles){var i=this.tiles[a];"loaded"!==i.state&&(i.state="loaded",i.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 t=0,e=[this.canvas.width,this.canvas.height];t<e.length;t+=1){var r=e[t];if(isNaN(r)||r<=0)return!0}return!1},r}(I),D={vector:S,raster:E,"raster-dem":C,geojson:L,video:z,image:I,canvas:O};function R(e,r){var n=t.identity([]);return t.translate(n,n,[1,1,0]),t.scale(n,n,[.5*e.width,.5*e.height,1]),t.multiply(n,n,e.calculatePosMatrix(r.toUnwrapped()))}function F(t,e,r,n,a,i){var o=function(t,e,r){if(t)for(var n=0,a=t;n<a.length;n+=1){var i=e[a[n]];if(i&&i.source===r&&"fill-extrusion"===i.type)return!0}else for(var o in e){var s=e[o];if(s.source===r&&"fill-extrusion"===s.type)return!0}return!1}(a&&a.layers,e,t.id),s=i.maxPitchScaleFactor(),l=t.tilesIn(n,s,o);l.sort(B);for(var c=[],u=0,h=l;u<h.length;u+=1){var f=h[u];c.push({wrappedTileID:f.tileID.wrapped().key,queryResults:f.tile.queryRenderedFeatures(e,r,t._state,f.queryGeometry,f.cameraQueryGeometry,f.scale,a,i,s,R(t.transform,f.tileID))})}var p=function(t){for(var e={},r={},n=0,a=t;n<a.length;n+=1){var i=a[n],o=i.queryResults,s=i.wrappedTileID,l=r[s]=r[s]||{};for(var c in o)for(var u=o[c],h=l[c]=l[c]||{},f=e[c]=e[c]||[],p=0,d=u;p<d.length;p+=1){var g=d[p];h[g.featureIndex]||(h[g.featureIndex]=!0,f.push(g))}}return e}(c);for(var d in p)p[d].forEach((function(e){var r=e.feature,n=t.getFeatureState(r.layer["source-layer"],r.id);r.source=r.layer.source,r.layer["source-layer"]&&(r.sourceLayer=r.layer["source-layer"]),r.state=n}));return p}function B(t,e){var r=t.tileID,n=e.tileID;return r.overscaledZ-n.overscaledZ||r.canonical.y-n.canonical.y||r.wrap-n.wrap||r.canonical.x-n.canonical.x}var N=function(t,e){this.max=t,this.onRemove=e,this.reset()};N.prototype.reset=function(){for(var t in this.data)for(var e=0,r=this.data[t];e<r.length;e+=1){var n=r[e];n.timeout&&clearTimeout(n.timeout),this.onRemove(n.value)}return this.data={},this.order=[],this},N.prototype.add=function(t,e,r){var n=this,a=t.wrapped().key;void 0===this.data[a]&&(this.data[a]=[]);var i={value:e,timeout:void 0};if(void 0!==r&&(i.timeout=setTimeout((function(){n.remove(t,i)}),r)),this.data[a].push(i),this.order.push(a),this.order.length>this.max){var o=this._getAndRemoveByKey(this.order[0]);o&&this.onRemove(o)}return this},N.prototype.has=function(t){return t.wrapped().key in this.data},N.prototype.getAndRemove=function(t){return this.has(t)?this._getAndRemoveByKey(t.wrapped().key):null},N.prototype._getAndRemoveByKey=function(t){var e=this.data[t].shift();return e.timeout&&clearTimeout(e.timeout),0===this.data[t].length&&delete this.data[t],this.order.splice(this.order.indexOf(t),1),e.value},N.prototype.getByKey=function(t){var e=this.data[t];return e?e[0].value:null},N.prototype.get=function(t){return this.has(t)?this.data[t.wrapped().key][0].value:null},N.prototype.remove=function(t,e){if(!this.has(t))return this;var r=t.wrapped().key,n=void 0===e?0:this.data[r].indexOf(e),a=this.data[r][n];return this.data[r].splice(n,1),a.timeout&&clearTimeout(a.timeout),0===this.data[r].length&&delete this.data[r],this.onRemove(a.value),this.order.splice(this.order.indexOf(r),1),this},N.prototype.setMaxSize=function(t){for(this.max=t;this.order.length>this.max;){var e=this._getAndRemoveByKey(this.order[0]);e&&this.onRemove(e)}return this},N.prototype.filter=function(t){var e=[];for(var r in this.data)for(var n=0,a=this.data[r];n<a.length;n+=1){var i=a[n];t(i.value)||e.push(i)}for(var o=0,s=e;o<s.length;o+=1){var l=s[o];this.remove(l.value.tileID,l)}};var j=function(t,e,r){this.context=t;var n=t.gl;this.buffer=n.createBuffer(),this.dynamicDraw=Boolean(r),this.context.unbindVAO(),t.bindElementBuffer.set(this.buffer),n.bufferData(n.ELEMENT_ARRAY_BUFFER,e.arrayBuffer,this.dynamicDraw?n.DYNAMIC_DRAW:n.STATIC_DRAW),this.dynamicDraw||delete e.arrayBuffer};j.prototype.bind=function(){this.context.bindElementBuffer.set(this.buffer)},j.prototype.updateData=function(t){var e=this.context.gl;this.context.unbindVAO(),this.bind(),e.bufferSubData(e.ELEMENT_ARRAY_BUFFER,0,t.arrayBuffer)},j.prototype.destroy=function(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)};var V={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"},U=function(t,e,r,n){this.length=e.length,this.attributes=r,this.itemSize=e.bytesPerElement,this.dynamicDraw=n,this.context=t;var a=t.gl;this.buffer=a.createBuffer(),t.bindVertexBuffer.set(this.buffer),a.bufferData(a.ARRAY_BUFFER,e.arrayBuffer,this.dynamicDraw?a.DYNAMIC_DRAW:a.STATIC_DRAW),this.dynamicDraw||delete e.arrayBuffer};U.prototype.bind=function(){this.context.bindVertexBuffer.set(this.buffer)},U.prototype.updateData=function(t){var e=this.context.gl;this.bind(),e.bufferSubData(e.ARRAY_BUFFER,0,t.arrayBuffer)},U.prototype.enableAttributes=function(t,e){for(var r=0;r<this.attributes.length;r++){var n=e.attributes[this.attributes[r].name];void 0!==n&&t.enableVertexAttribArray(n)}},U.prototype.setVertexAttribPointers=function(t,e,r){for(var n=0;n<this.attributes.length;n++){var a=this.attributes[n],i=e.attributes[a.name];void 0!==i&&t.vertexAttribPointer(i,a.components,t[V[a.type]],!1,this.itemSize,a.offset+this.itemSize*(r||0))}},U.prototype.destroy=function(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)};var q=function(t){this.gl=t.gl,this.default=this.getDefault(),this.current=this.default,this.dirty=!1};q.prototype.get=function(){return this.current},q.prototype.set=function(t){},q.prototype.getDefault=function(){return this.default},q.prototype.setDefault=function(){this.set(this.default)};var H=function(e){function r(){e.apply(this,arguments)}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.getDefault=function(){return t.Color.transparent},r.prototype.set=function(t){var e=this.current;(t.r!==e.r||t.g!==e.g||t.b!==e.b||t.a!==e.a||this.dirty)&&(this.gl.clearColor(t.r,t.g,t.b,t.a),this.current=t,this.dirty=!1)},r}(q),G=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return 1},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.clearDepth(t),this.current=t,this.dirty=!1)},e}(q),Y=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return 0},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.clearStencil(t),this.current=t,this.dirty=!1)},e}(q),W=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return[!0,!0,!0,!0]},e.prototype.set=function(t){var e=this.current;(t[0]!==e[0]||t[1]!==e[1]||t[2]!==e[2]||t[3]!==e[3]||this.dirty)&&(this.gl.colorMask(t[0],t[1],t[2],t[3]),this.current=t,this.dirty=!1)},e}(q),Z=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return!0},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.depthMask(t),this.current=t,this.dirty=!1)},e}(q),X=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return 255},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.stencilMask(t),this.current=t,this.dirty=!1)},e}(q),J=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return{func:this.gl.ALWAYS,ref:0,mask:255}},e.prototype.set=function(t){var e=this.current;(t.func!==e.func||t.ref!==e.ref||t.mask!==e.mask||this.dirty)&&(this.gl.stencilFunc(t.func,t.ref,t.mask),this.current=t,this.dirty=!1)},e}(q),K=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){var t=this.gl;return[t.KEEP,t.KEEP,t.KEEP]},e.prototype.set=function(t){var e=this.current;(t[0]!==e[0]||t[1]!==e[1]||t[2]!==e[2]||this.dirty)&&(this.gl.stencilOp(t[0],t[1],t[2]),this.current=t,this.dirty=!1)},e}(q),Q=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return!1},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;t?e.enable(e.STENCIL_TEST):e.disable(e.STENCIL_TEST),this.current=t,this.dirty=!1}},e}(q),$=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return[0,1]},e.prototype.set=function(t){var e=this.current;(t[0]!==e[0]||t[1]!==e[1]||this.dirty)&&(this.gl.depthRange(t[0],t[1]),this.current=t,this.dirty=!1)},e}(q),tt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return!1},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;t?e.enable(e.DEPTH_TEST):e.disable(e.DEPTH_TEST),this.current=t,this.dirty=!1}},e}(q),et=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return this.gl.LESS},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.depthFunc(t),this.current=t,this.dirty=!1)},e}(q),rt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return!1},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;t?e.enable(e.BLEND):e.disable(e.BLEND),this.current=t,this.dirty=!1}},e}(q),nt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){var t=this.gl;return[t.ONE,t.ZERO]},e.prototype.set=function(t){var e=this.current;(t[0]!==e[0]||t[1]!==e[1]||this.dirty)&&(this.gl.blendFunc(t[0],t[1]),this.current=t,this.dirty=!1)},e}(q),at=function(e){function r(){e.apply(this,arguments)}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.getDefault=function(){return t.Color.transparent},r.prototype.set=function(t){var e=this.current;(t.r!==e.r||t.g!==e.g||t.b!==e.b||t.a!==e.a||this.dirty)&&(this.gl.blendColor(t.r,t.g,t.b,t.a),this.current=t,this.dirty=!1)},r}(q),it=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return this.gl.FUNC_ADD},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.blendEquation(t),this.current=t,this.dirty=!1)},e}(q),ot=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return!1},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;t?e.enable(e.CULL_FACE):e.disable(e.CULL_FACE),this.current=t,this.dirty=!1}},e}(q),st=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return this.gl.BACK},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.cullFace(t),this.current=t,this.dirty=!1)},e}(q),lt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return this.gl.CCW},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.frontFace(t),this.current=t,this.dirty=!1)},e}(q),ct=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return null},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.useProgram(t),this.current=t,this.dirty=!1)},e}(q),ut=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return this.gl.TEXTURE0},e.prototype.set=function(t){(t!==this.current||this.dirty)&&(this.gl.activeTexture(t),this.current=t,this.dirty=!1)},e}(q),ht=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){var t=this.gl;return[0,0,t.drawingBufferWidth,t.drawingBufferHeight]},e.prototype.set=function(t){var e=this.current;(t[0]!==e[0]||t[1]!==e[1]||t[2]!==e[2]||t[3]!==e[3]||this.dirty)&&(this.gl.viewport(t[0],t[1],t[2],t[3]),this.current=t,this.dirty=!1)},e}(q),ft=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return null},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;e.bindFramebuffer(e.FRAMEBUFFER,t),this.current=t,this.dirty=!1}},e}(q),pt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return null},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;e.bindRenderbuffer(e.RENDERBUFFER,t),this.current=t,this.dirty=!1}},e}(q),dt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return null},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;e.bindTexture(e.TEXTURE_2D,t),this.current=t,this.dirty=!1}},e}(q),gt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return null},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;e.bindBuffer(e.ARRAY_BUFFER,t),this.current=t,this.dirty=!1}},e}(q),mt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return null},e.prototype.set=function(t){var e=this.gl;e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,t),this.current=t,this.dirty=!1},e}(q),vt=function(t){function e(e){t.call(this,e),this.vao=e.extVertexArrayObject}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return null},e.prototype.set=function(t){this.vao&&(t!==this.current||this.dirty)&&(this.vao.bindVertexArrayOES(t),this.current=t,this.dirty=!1)},e}(q),yt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return 4},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;e.pixelStorei(e.UNPACK_ALIGNMENT,t),this.current=t,this.dirty=!1}},e}(q),xt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return!1},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,t),this.current=t,this.dirty=!1}},e}(q),bt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return!1},e.prototype.set=function(t){if(t!==this.current||this.dirty){var e=this.gl;e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,t),this.current=t,this.dirty=!1}},e}(q),_t=function(t){function e(e,r){t.call(this,e),this.context=e,this.parent=r}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.getDefault=function(){return null},e}(q),wt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.setDirty=function(){this.dirty=!0},e.prototype.set=function(t){if(t!==this.current||this.dirty){this.context.bindFramebuffer.set(this.parent);var e=this.gl;e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,t,0),this.current=t,this.dirty=!1}},e}(_t),Tt=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.set=function(t){if(t!==this.current||this.dirty){this.context.bindFramebuffer.set(this.parent);var e=this.gl;e.framebufferRenderbuffer(e.FRAMEBUFFER,e.DEPTH_ATTACHMENT,e.RENDERBUFFER,t),this.current=t,this.dirty=!1}},e}(_t),kt=function(t,e,r,n){this.context=t,this.width=e,this.height=r;var a=this.framebuffer=t.gl.createFramebuffer();this.colorAttachment=new wt(t,a),n&&(this.depthAttachment=new Tt(t,a))};kt.prototype.destroy=function(){var t=this.context.gl,e=this.colorAttachment.get();if(e&&t.deleteTexture(e),this.depthAttachment){var r=this.depthAttachment.get();r&&t.deleteRenderbuffer(r)}t.deleteFramebuffer(this.framebuffer)};var At=function(t,e,r){this.func=t,this.mask=e,this.range=r};At.ReadOnly=!1,At.ReadWrite=!0,At.disabled=new At(519,At.ReadOnly,[0,1]);var Mt=function(t,e,r,n,a,i){this.test=t,this.ref=e,this.mask=r,this.fail=n,this.depthFail=a,this.pass=i};Mt.disabled=new Mt({func:519,mask:0},0,0,7680,7680,7680);var St=function(t,e,r){this.blendFunction=t,this.blendColor=e,this.mask=r};St.disabled=new St(St.Replace=[1,0],t.Color.transparent,[!1,!1,!1,!1]),St.unblended=new St(St.Replace,t.Color.transparent,[!0,!0,!0,!0]),St.alphaBlended=new St([1,771],t.Color.transparent,[!0,!0,!0,!0]);var Et=function(t,e,r){this.enable=t,this.mode=e,this.frontFace=r};Et.disabled=new Et(!1,1029,2305),Et.backCCW=new Et(!0,1029,2305);var Ct=function(t){this.gl=t,this.extVertexArrayObject=this.gl.getExtension("OES_vertex_array_object"),this.clearColor=new H(this),this.clearDepth=new G(this),this.clearStencil=new Y(this),this.colorMask=new W(this),this.depthMask=new Z(this),this.stencilMask=new X(this),this.stencilFunc=new J(this),this.stencilOp=new K(this),this.stencilTest=new Q(this),this.depthRange=new $(this),this.depthTest=new tt(this),this.depthFunc=new et(this),this.blend=new rt(this),this.blendFunc=new nt(this),this.blendColor=new at(this),this.blendEquation=new it(this),this.cullFace=new ot(this),this.cullFaceSide=new st(this),this.frontFace=new lt(this),this.program=new ct(this),this.activeTexture=new ut(this),this.viewport=new ht(this),this.bindFramebuffer=new ft(this),this.bindRenderbuffer=new pt(this),this.bindTexture=new dt(this),this.bindVertexBuffer=new gt(this),this.bindElementBuffer=new mt(this),this.bindVertexArrayOES=this.extVertexArrayObject&&new vt(this),this.pixelStoreUnpack=new yt(this),this.pixelStoreUnpackPremultiplyAlpha=new xt(this),this.pixelStoreUnpackFlipY=new bt(this),this.extTextureFilterAnisotropic=t.getExtension("EXT_texture_filter_anisotropic")||t.getExtension("MOZ_EXT_texture_filter_anisotropic")||t.getExtension("WEBKIT_EXT_texture_filter_anisotropic"),this.extTextureFilterAnisotropic&&(this.extTextureFilterAnisotropicMax=t.getParameter(this.extTextureFilterAnisotropic.MAX_TEXTURE_MAX_ANISOTROPY_EXT)),this.extTextureHalfFloat=t.getExtension("OES_texture_half_float"),this.extTextureHalfFloat&&(t.getExtension("OES_texture_half_float_linear"),this.extRenderToTextureHalfFloat=t.getExtension("EXT_color_buffer_half_float")),this.extTimerQuery=t.getExtension("EXT_disjoint_timer_query")};Ct.prototype.setDefault=function(){this.unbindVAO(),this.clearColor.setDefault(),this.clearDepth.setDefault(),this.clearStencil.setDefault(),this.colorMask.setDefault(),this.depthMask.setDefault(),this.stencilMask.setDefault(),this.stencilFunc.setDefault(),this.stencilOp.setDefault(),this.stencilTest.setDefault(),this.depthRange.setDefault(),this.depthTest.setDefault(),this.depthFunc.setDefault(),this.blend.setDefault(),this.blendFunc.setDefault(),this.blendColor.setDefault(),this.blendEquation.setDefault(),this.cullFace.setDefault(),this.cullFaceSide.setDefault(),this.frontFace.setDefault(),this.program.setDefault(),this.activeTexture.setDefault(),this.bindFramebuffer.setDefault(),this.pixelStoreUnpack.setDefault(),this.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.pixelStoreUnpackFlipY.setDefault()},Ct.prototype.setDirty=function(){this.clearColor.dirty=!0,this.clearDepth.dirty=!0,this.clearStencil.dirty=!0,this.colorMask.dirty=!0,this.depthMask.dirty=!0,this.stencilMask.dirty=!0,this.stencilFunc.dirty=!0,this.stencilOp.dirty=!0,this.stencilTest.dirty=!0,this.depthRange.dirty=!0,this.depthTest.dirty=!0,this.depthFunc.dirty=!0,this.blend.dirty=!0,this.blendFunc.dirty=!0,this.blendColor.dirty=!0,this.blendEquation.dirty=!0,this.cullFace.dirty=!0,this.cullFaceSide.dirty=!0,this.frontFace.dirty=!0,this.program.dirty=!0,this.activeTexture.dirty=!0,this.viewport.dirty=!0,this.bindFramebuffer.dirty=!0,this.bindRenderbuffer.dirty=!0,this.bindTexture.dirty=!0,this.bindVertexBuffer.dirty=!0,this.bindElementBuffer.dirty=!0,this.extVertexArrayObject&&(this.bindVertexArrayOES.dirty=!0),this.pixelStoreUnpack.dirty=!0,this.pixelStoreUnpackPremultiplyAlpha.dirty=!0,this.pixelStoreUnpackFlipY.dirty=!0},Ct.prototype.createIndexBuffer=function(t,e){return new j(this,t,e)},Ct.prototype.createVertexBuffer=function(t,e,r){return new U(this,t,e,r)},Ct.prototype.createRenderbuffer=function(t,e,r){var n=this.gl,a=n.createRenderbuffer();return this.bindRenderbuffer.set(a),n.renderbufferStorage(n.RENDERBUFFER,t,e,r),this.bindRenderbuffer.set(null),a},Ct.prototype.createFramebuffer=function(t,e,r){return new kt(this,t,e,r)},Ct.prototype.clear=function(t){var e=t.color,r=t.depth,n=this.gl,a=0;e&&(a|=n.COLOR_BUFFER_BIT,this.clearColor.set(e),this.colorMask.set([!0,!0,!0,!0])),void 0!==r&&(a|=n.DEPTH_BUFFER_BIT,this.depthRange.set([0,1]),this.clearDepth.set(r),this.depthMask.set(!0)),n.clear(a)},Ct.prototype.setCullFace=function(t){!1===t.enable?this.cullFace.set(!1):(this.cullFace.set(!0),this.cullFaceSide.set(t.mode),this.frontFace.set(t.frontFace))},Ct.prototype.setDepthMode=function(t){t.func!==this.gl.ALWAYS||t.mask?(this.depthTest.set(!0),this.depthFunc.set(t.func),this.depthMask.set(t.mask),this.depthRange.set(t.range)):this.depthTest.set(!1)},Ct.prototype.setStencilMode=function(t){t.test.func!==this.gl.ALWAYS||t.mask?(this.stencilTest.set(!0),this.stencilMask.set(t.mask),this.stencilOp.set([t.fail,t.depthFail,t.pass]),this.stencilFunc.set({func:t.test.func,ref:t.ref,mask:t.test.mask})):this.stencilTest.set(!1)},Ct.prototype.setColorMode=function(e){t.deepEqual(e.blendFunction,St.Replace)?this.blend.set(!1):(this.blend.set(!0),this.blendFunc.set(e.blendFunction),this.blendColor.set(e.blendColor)),this.colorMask.set(e.mask)},Ct.prototype.unbindVAO=function(){this.extVertexArrayObject&&this.bindVertexArrayOES.set(null)};var Lt=function(e){function r(r,n,a){var i=this;e.call(this),this.id=r,this.dispatcher=a,this.on("data",(function(t){"source"===t.dataType&&"metadata"===t.sourceDataType&&(i._sourceLoaded=!0),i._sourceLoaded&&!i._paused&&"source"===t.dataType&&"content"===t.sourceDataType&&(i.reload(),i.transform&&i.update(i.transform))})),this.on("error",(function(){i._sourceErrored=!0})),this._source=function(e,r,n,a){var i=new D[r.type](e,r,n,a);if(i.id!==e)throw new Error("Expected Source id to be "+e+" instead of "+i.id);return t.bindAll(["load","abort","unload","serialize","prepare"],i),i}(r,n,a,this),this._tiles={},this._cache=new N(0,this._unloadTile.bind(this)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._loadedParentTiles={},this._coveredTiles={},this._state=new t.SourceFeatureState}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.onAdd=function(t){this.map=t,this._maxTileCacheSize=t?t._maxTileCacheSize:null,this._source&&this._source.onAdd&&this._source.onAdd(t)},r.prototype.onRemove=function(t){this._source&&this._source.onRemove&&this._source.onRemove(t)},r.prototype.loaded=function(){if(this._sourceErrored)return!0;if(!this._sourceLoaded)return!1;if(!this._source.loaded())return!1;for(var t in this._tiles){var e=this._tiles[t];if("loaded"!==e.state&&"errored"!==e.state)return!1}return!0},r.prototype.getSource=function(){return this._source},r.prototype.pause=function(){this._paused=!0},r.prototype.resume=function(){if(this._paused){var t=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,t&&this.reload(),this.transform&&this.update(this.transform)}},r.prototype._loadTile=function(t,e){return this._source.loadTile(t,e)},r.prototype._unloadTile=function(t){if(this._source.unloadTile)return this._source.unloadTile(t,(function(){}))},r.prototype._abortTile=function(t){if(this._source.abortTile)return this._source.abortTile(t,(function(){}))},r.prototype.serialize=function(){return this._source.serialize()},r.prototype.prepare=function(t){for(var e in this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null),this._tiles){var r=this._tiles[e];r.upload(t),r.prepare(this.map.style.imageManager)}},r.prototype.getIds=function(){return t.values(this._tiles).map((function(t){return t.tileID})).sort(Pt).map((function(t){return t.key}))},r.prototype.getRenderableIds=function(e){var r=this,n=[];for(var a in this._tiles)this._isIdRenderable(a,e)&&n.push(this._tiles[a]);return e?n.sort((function(e,n){var a=e.tileID,i=n.tileID,o=new t.Point(a.canonical.x,a.canonical.y)._rotate(r.transform.angle),s=new t.Point(i.canonical.x,i.canonical.y)._rotate(r.transform.angle);return a.overscaledZ-i.overscaledZ||s.y-o.y||s.x-o.x})).map((function(t){return t.tileID.key})):n.map((function(t){return t.tileID})).sort(Pt).map((function(t){return t.key}))},r.prototype.hasRenderableParent=function(t){var e=this.findLoadedParent(t,0);return!!e&&this._isIdRenderable(e.tileID.key)},r.prototype._isIdRenderable=function(t,e){return this._tiles[t]&&this._tiles[t].hasData()&&!this._coveredTiles[t]&&(e||!this._tiles[t].holdingForFade())},r.prototype.reload=function(){if(this._paused)this._shouldReloadOnResume=!0;else for(var t in this._cache.reset(),this._tiles)"errored"!==this._tiles[t].state&&this._reloadTile(t,"reloading")},r.prototype._reloadTile=function(t,e){var r=this._tiles[t];r&&("loading"!==r.state&&(r.state=e),this._loadTile(r,this._tileLoaded.bind(this,r,t,e)))},r.prototype._tileLoaded=function(e,r,n,a){if(a)return e.state="errored",void(404!==a.status?this._source.fire(new t.ErrorEvent(a,{tile:e})):this.update(this.transform));e.timeAdded=t.browser.now(),"expired"===n&&(e.refreshedUponExpiration=!0),this._setTileReloadTimer(r,e),"raster-dem"===this.getSource().type&&e.dem&&this._backfillDEM(e),this._state.initializeTileState(e,this.map?this.map.painter:null),this._source.fire(new t.Event("data",{dataType:"source",tile:e,coord:e.tileID}))},r.prototype._backfillDEM=function(t){for(var e=this.getRenderableIds(),r=0;r<e.length;r++){var n=e[r];if(t.neighboringTiles&&t.neighboringTiles[n]){var a=this.getTileByID(n);i(t,a),i(a,t)}}function i(t,e){t.needsHillshadePrepare=!0;var r=e.tileID.canonical.x-t.tileID.canonical.x,n=e.tileID.canonical.y-t.tileID.canonical.y,a=Math.pow(2,t.tileID.canonical.z),i=e.tileID.key;0===r&&0===n||Math.abs(n)>1||(Math.abs(r)>1&&(1===Math.abs(r+a)?r+=a:1===Math.abs(r-a)&&(r-=a)),e.dem&&t.dem&&(t.dem.backfillBorder(e.dem,r,n),t.neighboringTiles&&t.neighboringTiles[i]&&(t.neighboringTiles[i].backfilled=!0)))}},r.prototype.getTile=function(t){return this.getTileByID(t.key)},r.prototype.getTileByID=function(t){return this._tiles[t]},r.prototype._retainLoadedChildren=function(t,e,r,n){for(var a in this._tiles){var i=this._tiles[a];if(!(n[a]||!i.hasData()||i.tileID.overscaledZ<=e||i.tileID.overscaledZ>r)){for(var o=i.tileID;i&&i.tileID.overscaledZ>e+1;){var s=i.tileID.scaledTo(i.tileID.overscaledZ-1);(i=this._tiles[s.key])&&i.hasData()&&(o=s)}for(var l=o;l.overscaledZ>e;)if(t[(l=l.scaledTo(l.overscaledZ-1)).key]){n[o.key]=o;break}}}},r.prototype.findLoadedParent=function(t,e){if(t.key in this._loadedParentTiles){var r=this._loadedParentTiles[t.key];return r&&r.tileID.overscaledZ>=e?r:null}for(var n=t.overscaledZ-1;n>=e;n--){var a=t.scaledTo(n),i=this._getLoadedTile(a);if(i)return i}},r.prototype._getLoadedTile=function(t){var e=this._tiles[t.key];return e&&e.hasData()?e:this._cache.getByKey(t.wrapped().key)},r.prototype.updateCacheSize=function(t){var e=Math.ceil(t.width/this._source.tileSize)+1,r=Math.ceil(t.height/this._source.tileSize)+1,n=Math.floor(e*r*5),a="number"==typeof this._maxTileCacheSize?Math.min(this._maxTileCacheSize,n):n;this._cache.setMaxSize(a)},r.prototype.handleWrapJump=function(t){var e=Math.round((t-(void 0===this._prevLng?t:this._prevLng))/360);if(this._prevLng=t,e){var r={};for(var n in this._tiles){var a=this._tiles[n];a.tileID=a.tileID.unwrapTo(a.tileID.wrap+e),r[a.tileID.key]=a}for(var i in this._tiles=r,this._timers)clearTimeout(this._timers[i]),delete this._timers[i];for(var o in this._tiles)this._setTileReloadTimer(o,this._tiles[o])}},r.prototype.update=function(e){var n=this;if(this.transform=e,this._sourceLoaded&&!this._paused){var a;this.updateCacheSize(e),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used?this._source.tileID?a=e.getVisibleUnwrappedCoordinates(this._source.tileID).map((function(e){return new t.OverscaledTileID(e.canonical.z,e.wrap,e.canonical.z,e.canonical.x,e.canonical.y)})):(a=e.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(a=a.filter((function(t){return n._source.hasTile(t)})))):a=[];var i=e.coveringZoomLevel(this._source),o=Math.max(i-r.maxOverzooming,this._source.minzoom),s=Math.max(i+r.maxUnderzooming,this._source.minzoom),l=this._updateRetainedTiles(a,i);if(It(this._source.type)){for(var c={},u={},h=0,f=Object.keys(l);h<f.length;h+=1){var p=f[h],d=l[p],g=this._tiles[p];if(g&&!(g.fadeEndTime&&g.fadeEndTime<=t.browser.now())){var m=this.findLoadedParent(d,o);m&&(this._addTile(m.tileID),c[m.tileID.key]=m.tileID),u[p]=d}}for(var v in this._retainLoadedChildren(u,i,s,l),c)l[v]||(this._coveredTiles[v]=!0,l[v]=c[v])}for(var y in l)this._tiles[y].clearFadeHold();for(var x=0,b=t.keysDifference(this._tiles,l);x<b.length;x+=1){var _=b[x],w=this._tiles[_];w.hasSymbolBuckets&&!w.holdingForFade()?w.setHoldDuration(this.map._fadeDuration):w.hasSymbolBuckets&&!w.symbolFadeFinished()||this._removeTile(_)}this._updateLoadedParentTileCache()}},r.prototype.releaseSymbolFadeTiles=function(){for(var t in this._tiles)this._tiles[t].holdingForFade()&&this._removeTile(t)},r.prototype._updateRetainedTiles=function(t,e){for(var n={},a={},i=Math.max(e-r.maxOverzooming,this._source.minzoom),o=Math.max(e+r.maxUnderzooming,this._source.minzoom),s={},l=0,c=t;l<c.length;l+=1){var u=c[l],h=this._addTile(u);n[u.key]=u,h.hasData()||e<this._source.maxzoom&&(s[u.key]=u)}this._retainLoadedChildren(s,e,o,n);for(var f=0,p=t;f<p.length;f+=1){var d=p[f],g=this._tiles[d.key];if(!g.hasData()){if(e+1>this._source.maxzoom){var m=d.children(this._source.maxzoom)[0],v=this.getTile(m);if(v&&v.hasData()){n[m.key]=m;continue}}else{var y=d.children(this._source.maxzoom);if(n[y[0].key]&&n[y[1].key]&&n[y[2].key]&&n[y[3].key])continue}for(var x=g.wasRequested(),b=d.overscaledZ-1;b>=i;--b){var _=d.scaledTo(b);if(a[_.key])break;if(a[_.key]=!0,!(g=this.getTile(_))&&x&&(g=this._addTile(_)),g&&(n[_.key]=_,x=g.wasRequested(),g.hasData()))break}}}return n},r.prototype._updateLoadedParentTileCache=function(){for(var t in this._loadedParentTiles={},this._tiles){for(var e=[],r=void 0,n=this._tiles[t].tileID;n.overscaledZ>0;){if(n.key in this._loadedParentTiles){r=this._loadedParentTiles[n.key];break}e.push(n.key);var a=n.scaledTo(n.overscaledZ-1);if(r=this._getLoadedTile(a))break;n=a}for(var i=0,o=e;i<o.length;i+=1)this._loadedParentTiles[o[i]]=r}},r.prototype._addTile=function(e){var r=this._tiles[e.key];if(r)return r;(r=this._cache.getAndRemove(e))&&(this._setTileReloadTimer(e.key,r),r.tileID=e,this._state.initializeTileState(r,this.map?this.map.painter:null),this._cacheTimers[e.key]&&(clearTimeout(this._cacheTimers[e.key]),delete this._cacheTimers[e.key],this._setTileReloadTimer(e.key,r)));var n=Boolean(r);return n||(r=new t.Tile(e,this._source.tileSize*e.overscaleFactor()),this._loadTile(r,this._tileLoaded.bind(this,r,e.key,r.state))),r?(r.uses++,this._tiles[e.key]=r,n||this._source.fire(new t.Event("dataloading",{tile:r,coord:r.tileID,dataType:"source"})),r):null},r.prototype._setTileReloadTimer=function(t,e){var r=this;t in this._timers&&(clearTimeout(this._timers[t]),delete this._timers[t]);var n=e.getExpiryTimeout();n&&(this._timers[t]=setTimeout((function(){r._reloadTile(t,"expired"),delete r._timers[t]}),n))},r.prototype._removeTile=function(t){var e=this._tiles[t];e&&(e.uses--,delete this._tiles[t],this._timers[t]&&(clearTimeout(this._timers[t]),delete this._timers[t]),e.uses>0||(e.hasData()&&"reloading"!==e.state?this._cache.add(e.tileID,e,e.getExpiryTimeout()):(e.aborted=!0,this._abortTile(e),this._unloadTile(e))))},r.prototype.clearTiles=function(){for(var t in this._shouldReloadOnResume=!1,this._paused=!1,this._tiles)this._removeTile(t);this._cache.reset()},r.prototype.tilesIn=function(e,r,n){var a=this,i=[],o=this.transform;if(!o)return i;for(var s=n?o.getCameraQueryGeometry(e):e,l=e.map((function(t){return o.pointCoordinate(t)})),c=s.map((function(t){return o.pointCoordinate(t)})),u=this.getIds(),h=1/0,f=1/0,p=-1/0,d=-1/0,g=0,m=c;g<m.length;g+=1){var v=m[g];h=Math.min(h,v.x),f=Math.min(f,v.y),p=Math.max(p,v.x),d=Math.max(d,v.y)}for(var y=function(e){var n=a._tiles[u[e]];if(!n.holdingForFade()){var s=n.tileID,g=Math.pow(2,o.zoom-n.tileID.overscaledZ),m=r*n.queryPadding*t.EXTENT/n.tileSize/g,v=[s.getTilePoint(new t.MercatorCoordinate(h,f)),s.getTilePoint(new t.MercatorCoordinate(p,d))];if(v[0].x-m<t.EXTENT&&v[0].y-m<t.EXTENT&&v[1].x+m>=0&&v[1].y+m>=0){var y=l.map((function(t){return s.getTilePoint(t)})),x=c.map((function(t){return s.getTilePoint(t)}));i.push({tile:n,tileID:s,queryGeometry:y,cameraQueryGeometry:x,scale:g})}}},x=0;x<u.length;x++)y(x);return i},r.prototype.getVisibleCoordinates=function(t){for(var e=this,r=this.getRenderableIds(t).map((function(t){return e._tiles[t].tileID})),n=0,a=r;n<a.length;n+=1){var i=a[n];i.posMatrix=this.transform.calculatePosMatrix(i.toUnwrapped())}return r},r.prototype.hasTransition=function(){if(this._source.hasTransition())return!0;if(It(this._source.type))for(var e in this._tiles){var r=this._tiles[e];if(void 0!==r.fadeEndTime&&r.fadeEndTime>=t.browser.now())return!0}return!1},r.prototype.setFeatureState=function(t,e,r){this._state.updateState(t=t||"_geojsonTileLayer",e,r)},r.prototype.removeFeatureState=function(t,e,r){this._state.removeFeatureState(t=t||"_geojsonTileLayer",e,r)},r.prototype.getFeatureState=function(t,e){return this._state.getState(t=t||"_geojsonTileLayer",e)},r.prototype.setDependencies=function(t,e,r){var n=this._tiles[t];n&&n.setDependencies(e,r)},r.prototype.reloadTilesForDependencies=function(t,e){for(var r in this._tiles)this._tiles[r].hasDependency(t,e)&&this._reloadTile(r,"reloading");this._cache.filter((function(r){return!r.hasDependency(t,e)}))},r}(t.Evented);function Pt(t,e){var r=Math.abs(2*t.wrap)-+(t.wrap<0),n=Math.abs(2*e.wrap)-+(e.wrap<0);return t.overscaledZ-e.overscaledZ||n-r||e.canonical.y-t.canonical.y||e.canonical.x-t.canonical.x}function It(t){return"raster"===t||"image"===t||"video"===t}function zt(){return new t.window.Worker(Ya.workerUrl)}Lt.maxOverzooming=10,Lt.maxUnderzooming=3;var Ot="mapboxgl_preloaded_worker_pool",Dt=function(){this.active={}};Dt.prototype.acquire=function(t){if(!this.workers)for(this.workers=[];this.workers.length<Dt.workerCount;)this.workers.push(new zt);return this.active[t]=!0,this.workers.slice()},Dt.prototype.release=function(t){delete this.active[t],0===this.numActive()&&(this.workers.forEach((function(t){t.terminate()})),this.workers=null)},Dt.prototype.isPreloaded=function(){return!!this.active[Ot]},Dt.prototype.numActive=function(){return Object.keys(this.active).length};var Rt,Ft=Math.floor(t.browser.hardwareConcurrency/2);function Bt(){return Rt||(Rt=new Dt),Rt}function Nt(e,r){var n={};for(var a in e)"ref"!==a&&(n[a]=e[a]);return t.refProperties.forEach((function(t){t in r&&(n[t]=r[t])})),n}function jt(t){t=t.slice();for(var e=Object.create(null),r=0;r<t.length;r++)e[t[r].id]=t[r];for(var n=0;n<t.length;n++)"ref"in t[n]&&(t[n]=Nt(t[n],e[t[n].ref]));return t}Dt.workerCount=Math.max(Math.min(Ft,6),1);var Vt={setStyle:"setStyle",addLayer:"addLayer",removeLayer:"removeLayer",setPaintProperty:"setPaintProperty",setLayoutProperty:"setLayoutProperty",setFilter:"setFilter",addSource:"addSource",removeSource:"removeSource",setGeoJSONSourceData:"setGeoJSONSourceData",setLayerZoomRange:"setLayerZoomRange",setLayerProperty:"setLayerProperty",setCenter:"setCenter",setZoom:"setZoom",setBearing:"setBearing",setPitch:"setPitch",setSprite:"setSprite",setGlyphs:"setGlyphs",setTransition:"setTransition",setLight:"setLight"};function Ut(t,e,r){r.push({command:Vt.addSource,args:[t,e[t]]})}function qt(t,e,r){e.push({command:Vt.removeSource,args:[t]}),r[t]=!0}function Ht(t,e,r,n){qt(t,r,n),Ut(t,e,r)}function Gt(e,r,n){var a;for(a in e[n])if(e[n].hasOwnProperty(a)&&"data"!==a&&!t.deepEqual(e[n][a],r[n][a]))return!1;for(a in r[n])if(r[n].hasOwnProperty(a)&&"data"!==a&&!t.deepEqual(e[n][a],r[n][a]))return!1;return!0}function Yt(e,r,n,a,i,o){var s;for(s in r=r||{},e=e||{})e.hasOwnProperty(s)&&(t.deepEqual(e[s],r[s])||n.push({command:o,args:[a,s,r[s],i]}));for(s in r)r.hasOwnProperty(s)&&!e.hasOwnProperty(s)&&(t.deepEqual(e[s],r[s])||n.push({command:o,args:[a,s,r[s],i]}))}function Wt(t){return t.id}function Zt(t,e){return t[e.id]=e,t}var Xt=function(t,e){this.reset(t,e)};Xt.prototype.reset=function(t,e){this.points=t||[],this._distances=[0];for(var r=1;r<this.points.length;r++)this._distances[r]=this._distances[r-1]+this.points[r].dist(this.points[r-1]);this.length=this._distances[this._distances.length-1],this.padding=Math.min(e||0,.5*this.length),this.paddedLength=this.length-2*this.padding},Xt.prototype.lerp=function(e){if(1===this.points.length)return this.points[0];e=t.clamp(e,0,1);for(var r=1,n=this._distances[r],a=e*this.paddedLength+this.padding;n<a&&r<this._distances.length;)n=this._distances[++r];var i=r-1,o=this._distances[i],s=n-o,l=s>0?(a-o)/s:0;return this.points[i].mult(1-l).add(this.points[r].mult(l))};var Jt=function(t,e,r){var n=this.boxCells=[],a=this.circleCells=[];this.xCellCount=Math.ceil(t/r),this.yCellCount=Math.ceil(e/r);for(var i=0;i<this.xCellCount*this.yCellCount;i++)n.push([]),a.push([]);this.circleKeys=[],this.boxKeys=[],this.bboxes=[],this.circles=[],this.width=t,this.height=e,this.xScale=this.xCellCount/t,this.yScale=this.yCellCount/e,this.boxUid=0,this.circleUid=0};function Kt(e,r,n,a,i){var o=t.create();return r?(t.scale(o,o,[1/i,1/i,1]),n||t.rotateZ(o,o,a.angle)):t.multiply(o,a.labelPlaneMatrix,e),o}function Qt(e,r,n,a,i){if(r){var o=t.clone(e);return t.scale(o,o,[i,i,1]),n||t.rotateZ(o,o,-a.angle),o}return a.glCoordMatrix}function $t(e,r){var n=[e.x,e.y,0,1];ue(n,n,r);var a=n[3];return{point:new t.Point(n[0]/a,n[1]/a),signedDistanceFromCamera:a}}function te(t,e){return.5+t/e*.5}function ee(t,e){var r=t[0]/t[3],n=t[1]/t[3];return r>=-e[0]&&r<=e[0]&&n>=-e[1]&&n<=e[1]}function re(e,r,n,a,i,o,s,l){var c=a?e.textSizeData:e.iconSizeData,u=t.evaluateSizeForZoom(c,n.transform.zoom),h=[256/n.width*2+1,256/n.height*2+1],f=a?e.text.dynamicLayoutVertexArray:e.icon.dynamicLayoutVertexArray;f.clear();for(var p=e.lineVertexArray,d=a?e.text.placedSymbolArray:e.icon.placedSymbolArray,g=n.transform.width/n.transform.height,m=!1,v=0;v<d.length;v++){var y=d.get(v);if(y.hidden||y.writingMode===t.WritingMode.vertical&&!m)ce(y.numGlyphs,f);else{m=!1;var x=[y.anchorX,y.anchorY,0,1];if(t.transformMat4(x,x,r),ee(x,h)){var b=te(n.transform.cameraToCenterDistance,x[3]),_=t.evaluateSizeForFeature(c,u,y),w=s?_/b:_*b,T=new t.Point(y.anchorX,y.anchorY),k=$t(T,i).point,A={},M=ie(y,w,!1,l,r,i,o,e.glyphOffsetArray,p,f,k,T,A,g);m=M.useVertical,(M.notEnoughRoom||m||M.needsFlipping&&ie(y,w,!0,l,r,i,o,e.glyphOffsetArray,p,f,k,T,A,g).notEnoughRoom)&&ce(y.numGlyphs,f)}else ce(y.numGlyphs,f)}}a?e.text.dynamicLayoutVertexBuffer.updateData(f):e.icon.dynamicLayoutVertexBuffer.updateData(f)}function ne(t,e,r,n,a,i,o,s,l,c,u){var h=s.glyphStartIndex+s.numGlyphs,f=s.lineStartIndex,p=s.lineStartIndex+s.lineLength,d=e.getoffsetX(s.glyphStartIndex),g=e.getoffsetX(h-1),m=se(t*d,r,n,a,i,o,s.segment,f,p,l,c,u);if(!m)return null;var v=se(t*g,r,n,a,i,o,s.segment,f,p,l,c,u);return v?{first:m,last:v}:null}function ae(e,r,n,a){return e===t.WritingMode.horizontal&&Math.abs(n.y-r.y)>Math.abs(n.x-r.x)*a?{useVertical:!0}:(e===t.WritingMode.vertical?r.y<n.y:r.x>n.x)?{needsFlipping:!0}:null}function ie(e,r,n,a,i,o,s,l,c,u,h,f,p,d){var g,m=r/24,v=e.lineOffsetX*m,y=e.lineOffsetY*m;if(e.numGlyphs>1){var x=e.glyphStartIndex+e.numGlyphs,b=e.lineStartIndex,_=e.lineStartIndex+e.lineLength,w=ne(m,l,v,y,n,h,f,e,c,o,p);if(!w)return{notEnoughRoom:!0};var T=$t(w.first.point,s).point,k=$t(w.last.point,s).point;if(a&&!n){var A=ae(e.writingMode,T,k,d);if(A)return A}g=[w.first];for(var M=e.glyphStartIndex+1;M<x-1;M++)g.push(se(m*l.getoffsetX(M),v,y,n,h,f,e.segment,b,_,c,o,p));g.push(w.last)}else{if(a&&!n){var S=$t(f,i).point,E=e.lineStartIndex+e.segment+1,C=new t.Point(c.getx(E),c.gety(E)),L=$t(C,i),P=L.signedDistanceFromCamera>0?L.point:oe(f,C,S,1,i),I=ae(e.writingMode,S,P,d);if(I)return I}var z=se(m*l.getoffsetX(e.glyphStartIndex),v,y,n,h,f,e.segment,e.lineStartIndex,e.lineStartIndex+e.lineLength,c,o,p);if(!z)return{notEnoughRoom:!0};g=[z]}for(var O=0,D=g;O<D.length;O+=1){var R=D[O];t.addDynamicAttributes(u,R.point,R.angle)}return{}}function oe(t,e,r,n,a){var i=$t(t.add(t.sub(e)._unit()),a).point,o=r.sub(i);return r.add(o._mult(n/o.mag()))}function se(e,r,n,a,i,o,s,l,c,u,h,f){var p=a?e-r:e+r,d=p>0?1:-1,g=0;a&&(d*=-1,g=Math.PI),d<0&&(g+=Math.PI);for(var m=d>0?l+s:l+s+1,v=i,y=i,x=0,b=0,_=Math.abs(p),w=[];x+b<=_;){if((m+=d)<l||m>=c)return null;if(y=v,w.push(v),void 0===(v=f[m])){var T=new t.Point(u.getx(m),u.gety(m)),k=$t(T,h);if(k.signedDistanceFromCamera>0)v=f[m]=k.point;else{var A=m-d;v=oe(0===x?o:new t.Point(u.getx(A),u.gety(A)),T,y,_-x+1,h)}}x+=b,b=y.dist(v)}var M=(_-x)/b,S=v.sub(y),E=S.mult(M)._add(y);E._add(S._unit()._perp()._mult(n*d));var C=g+Math.atan2(v.y-y.y,v.x-y.x);return w.push(E),{point:E,angle:C,path:w}}Jt.prototype.keysLength=function(){return this.boxKeys.length+this.circleKeys.length},Jt.prototype.insert=function(t,e,r,n,a){this._forEachCell(e,r,n,a,this._insertBoxCell,this.boxUid++),this.boxKeys.push(t),this.bboxes.push(e),this.bboxes.push(r),this.bboxes.push(n),this.bboxes.push(a)},Jt.prototype.insertCircle=function(t,e,r,n){this._forEachCell(e-n,r-n,e+n,r+n,this._insertCircleCell,this.circleUid++),this.circleKeys.push(t),this.circles.push(e),this.circles.push(r),this.circles.push(n)},Jt.prototype._insertBoxCell=function(t,e,r,n,a,i){this.boxCells[a].push(i)},Jt.prototype._insertCircleCell=function(t,e,r,n,a,i){this.circleCells[a].push(i)},Jt.prototype._query=function(t,e,r,n,a,i){if(r<0||t>this.width||n<0||e>this.height)return!a&&[];var o=[];if(t<=0&&e<=0&&this.width<=r&&this.height<=n){if(a)return!0;for(var s=0;s<this.boxKeys.length;s++)o.push({key:this.boxKeys[s],x1:this.bboxes[4*s],y1:this.bboxes[4*s+1],x2:this.bboxes[4*s+2],y2:this.bboxes[4*s+3]});for(var l=0;l<this.circleKeys.length;l++){var c=this.circles[3*l],u=this.circles[3*l+1],h=this.circles[3*l+2];o.push({key:this.circleKeys[l],x1:c-h,y1:u-h,x2:c+h,y2:u+h})}return i?o.filter(i):o}return this._forEachCell(t,e,r,n,this._queryCell,o,{hitTest:a,seenUids:{box:{},circle:{}}},i),a?o.length>0:o},Jt.prototype._queryCircle=function(t,e,r,n,a){var i=t-r,o=t+r,s=e-r,l=e+r;if(o<0||i>this.width||l<0||s>this.height)return!n&&[];var c=[];return this._forEachCell(i,s,o,l,this._queryCellCircle,c,{hitTest:n,circle:{x:t,y:e,radius:r},seenUids:{box:{},circle:{}}},a),n?c.length>0:c},Jt.prototype.query=function(t,e,r,n,a){return this._query(t,e,r,n,!1,a)},Jt.prototype.hitTest=function(t,e,r,n,a){return this._query(t,e,r,n,!0,a)},Jt.prototype.hitTestCircle=function(t,e,r,n){return this._queryCircle(t,e,r,!0,n)},Jt.prototype._queryCell=function(t,e,r,n,a,i,o,s){var l=o.seenUids,c=this.boxCells[a];if(null!==c)for(var u=this.bboxes,h=0,f=c;h<f.length;h+=1){var p=f[h];if(!l.box[p]){l.box[p]=!0;var d=4*p;if(t<=u[d+2]&&e<=u[d+3]&&r>=u[d+0]&&n>=u[d+1]&&(!s||s(this.boxKeys[p]))){if(o.hitTest)return i.push(!0),!0;i.push({key:this.boxKeys[p],x1:u[d],y1:u[d+1],x2:u[d+2],y2:u[d+3]})}}}var g=this.circleCells[a];if(null!==g)for(var m=this.circles,v=0,y=g;v<y.length;v+=1){var x=y[v];if(!l.circle[x]){l.circle[x]=!0;var b=3*x;if(this._circleAndRectCollide(m[b],m[b+1],m[b+2],t,e,r,n)&&(!s||s(this.circleKeys[x]))){if(o.hitTest)return i.push(!0),!0;var _=m[b],w=m[b+1],T=m[b+2];i.push({key:this.circleKeys[x],x1:_-T,y1:w-T,x2:_+T,y2:w+T})}}}},Jt.prototype._queryCellCircle=function(t,e,r,n,a,i,o,s){var l=o.circle,c=o.seenUids,u=this.boxCells[a];if(null!==u)for(var h=this.bboxes,f=0,p=u;f<p.length;f+=1){var d=p[f];if(!c.box[d]){c.box[d]=!0;var g=4*d;if(this._circleAndRectCollide(l.x,l.y,l.radius,h[g+0],h[g+1],h[g+2],h[g+3])&&(!s||s(this.boxKeys[d])))return i.push(!0),!0}}var m=this.circleCells[a];if(null!==m)for(var v=this.circles,y=0,x=m;y<x.length;y+=1){var b=x[y];if(!c.circle[b]){c.circle[b]=!0;var _=3*b;if(this._circlesCollide(v[_],v[_+1],v[_+2],l.x,l.y,l.radius)&&(!s||s(this.circleKeys[b])))return i.push(!0),!0}}},Jt.prototype._forEachCell=function(t,e,r,n,a,i,o,s){for(var l=this._convertToXCellCoord(t),c=this._convertToYCellCoord(e),u=this._convertToXCellCoord(r),h=this._convertToYCellCoord(n),f=l;f<=u;f++)for(var p=c;p<=h;p++)if(a.call(this,t,e,r,n,this.xCellCount*p+f,i,o,s))return},Jt.prototype._convertToXCellCoord=function(t){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(t*this.xScale)))},Jt.prototype._convertToYCellCoord=function(t){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(t*this.yScale)))},Jt.prototype._circlesCollide=function(t,e,r,n,a,i){var o=n-t,s=a-e,l=r+i;return l*l>o*o+s*s},Jt.prototype._circleAndRectCollide=function(t,e,r,n,a,i,o){var s=(i-n)/2,l=Math.abs(t-(n+s));if(l>s+r)return!1;var c=(o-a)/2,u=Math.abs(e-(a+c));if(u>c+r)return!1;if(l<=s||u<=c)return!0;var h=l-s,f=u-c;return h*h+f*f<=r*r};var le=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function ce(t,e){for(var r=0;r<t;r++){var n=e.length;e.resize(n+4),e.float32.set(le,3*n)}}function ue(t,e,r){var n=e[0],a=e[1];return t[0]=r[0]*n+r[4]*a+r[12],t[1]=r[1]*n+r[5]*a+r[13],t[3]=r[3]*n+r[7]*a+r[15],t}var he=function(t,e,r){void 0===e&&(e=new Jt(t.width+200,t.height+200,25)),void 0===r&&(r=new Jt(t.width+200,t.height+200,25)),this.transform=t,this.grid=e,this.ignoredGrid=r,this.pitchfactor=Math.cos(t._pitch)*t.cameraToCenterDistance,this.screenRightBoundary=t.width+100,this.screenBottomBoundary=t.height+100,this.gridRightBoundary=t.width+200,this.gridBottomBoundary=t.height+200};function fe(e,r,n){return r*(t.EXTENT/(e.tileSize*Math.pow(2,n-e.tileID.overscaledZ)))}he.prototype.placeCollisionBox=function(t,e,r,n,a){var i=this.projectAndGetPerspectiveRatio(n,t.anchorPointX,t.anchorPointY),o=r*i.perspectiveRatio,s=t.x1*o+i.point.x,l=t.y1*o+i.point.y,c=t.x2*o+i.point.x,u=t.y2*o+i.point.y;return!this.isInsideGrid(s,l,c,u)||!e&&this.grid.hitTest(s,l,c,u,a)?{box:[],offscreen:!1}:{box:[s,l,c,u],offscreen:this.isOffscreen(s,l,c,u)}},he.prototype.placeCollisionCircles=function(e,r,n,a,i,o,s,l,c,u,h,f,p){var d=[],g=new t.Point(r.anchorX,r.anchorY),m=$t(g,o),v=te(this.transform.cameraToCenterDistance,m.signedDistanceFromCamera),y=(u?i/v:i*v)/t.ONE_EM,x=$t(g,s).point,b=ne(y,a,r.lineOffsetX*y,r.lineOffsetY*y,!1,x,g,r,n,s,{}),_=!1,w=!1,T=!0;if(b){for(var k=.5*f*v+p,A=new t.Point(-100,-100),M=new t.Point(this.screenRightBoundary,this.screenBottomBoundary),S=new Xt,E=b.first,C=b.last,L=[],P=E.path.length-1;P>=1;P--)L.push(E.path[P]);for(var I=1;I<C.path.length;I++)L.push(C.path[I]);var z=2.5*k;if(l){var O=L.map((function(t){return $t(t,l)}));L=O.some((function(t){return t.signedDistanceFromCamera<=0}))?[]:O.map((function(t){return t.point}))}var D=[];if(L.length>0){for(var R=L[0].clone(),F=L[0].clone(),B=1;B<L.length;B++)R.x=Math.min(R.x,L[B].x),R.y=Math.min(R.y,L[B].y),F.x=Math.max(F.x,L[B].x),F.y=Math.max(F.y,L[B].y);D=R.x>=A.x&&F.x<=M.x&&R.y>=A.y&&F.y<=M.y?[L]:F.x<A.x||R.x>M.x||F.y<A.y||R.y>M.y?[]:t.clipLine([L],A.x,A.y,M.x,M.y)}for(var N=0,j=D;N<j.length;N+=1){var V;S.reset(j[N],.25*k),V=S.length<=.5*k?1:Math.ceil(S.paddedLength/z)+1;for(var U=0;U<V;U++){var q=U/Math.max(V-1,1),H=S.lerp(q),G=H.x+100,Y=H.y+100;d.push(G,Y,k,0);var W=G-k,Z=Y-k,X=G+k,J=Y+k;if(T=T&&this.isOffscreen(W,Z,X,J),w=w||this.isInsideGrid(W,Z,X,J),!e&&this.grid.hitTestCircle(G,Y,k,h)&&(_=!0,!c))return{circles:[],offscreen:!1,collisionDetected:_}}}}return{circles:!c&&_||!w?[]:d,offscreen:T,collisionDetected:_}},he.prototype.queryRenderedSymbols=function(e){if(0===e.length||0===this.grid.keysLength()&&0===this.ignoredGrid.keysLength())return{};for(var r=[],n=1/0,a=1/0,i=-1/0,o=-1/0,s=0,l=e;s<l.length;s+=1){var c=l[s],u=new t.Point(c.x+100,c.y+100);n=Math.min(n,u.x),a=Math.min(a,u.y),i=Math.max(i,u.x),o=Math.max(o,u.y),r.push(u)}for(var h={},f={},p=0,d=this.grid.query(n,a,i,o).concat(this.ignoredGrid.query(n,a,i,o));p<d.length;p+=1){var g=d[p],m=g.key;if(void 0===h[m.bucketInstanceId]&&(h[m.bucketInstanceId]={}),!h[m.bucketInstanceId][m.featureIndex]){var v=[new t.Point(g.x1,g.y1),new t.Point(g.x2,g.y1),new t.Point(g.x2,g.y2),new t.Point(g.x1,g.y2)];t.polygonIntersectsPolygon(r,v)&&(h[m.bucketInstanceId][m.featureIndex]=!0,void 0===f[m.bucketInstanceId]&&(f[m.bucketInstanceId]=[]),f[m.bucketInstanceId].push(m.featureIndex))}}return f},he.prototype.insertCollisionBox=function(t,e,r,n,a){(e?this.ignoredGrid:this.grid).insert({bucketInstanceId:r,featureIndex:n,collisionGroupID:a},t[0],t[1],t[2],t[3])},he.prototype.insertCollisionCircles=function(t,e,r,n,a){for(var i=e?this.ignoredGrid:this.grid,o={bucketInstanceId:r,featureIndex:n,collisionGroupID:a},s=0;s<t.length;s+=4)i.insertCircle(o,t[s],t[s+1],t[s+2])},he.prototype.projectAndGetPerspectiveRatio=function(e,r,n){var a=[r,n,0,1];return ue(a,a,e),{point:new t.Point((a[0]/a[3]+1)/2*this.transform.width+100,(-a[1]/a[3]+1)/2*this.transform.height+100),perspectiveRatio:.5+this.transform.cameraToCenterDistance/a[3]*.5}},he.prototype.isOffscreen=function(t,e,r,n){return r<100||t>=this.screenRightBoundary||n<100||e>this.screenBottomBoundary},he.prototype.isInsideGrid=function(t,e,r,n){return r>=0&&t<this.gridRightBoundary&&n>=0&&e<this.gridBottomBoundary},he.prototype.getViewportMatrix=function(){var e=t.identity([]);return t.translate(e,e,[-100,-100,0]),e};var pe=function(t,e,r,n){this.opacity=t?Math.max(0,Math.min(1,t.opacity+(t.placed?e:-e))):n&&r?1:0,this.placed=r};pe.prototype.isHidden=function(){return 0===this.opacity&&!this.placed};var de=function(t,e,r,n,a){this.text=new pe(t?t.text:null,e,r,a),this.icon=new pe(t?t.icon:null,e,n,a)};de.prototype.isHidden=function(){return this.text.isHidden()&&this.icon.isHidden()};var ge=function(t,e,r){this.text=t,this.icon=e,this.skipFade=r},me=function(){this.invProjMatrix=t.create(),this.viewportMatrix=t.create(),this.circles=[]},ve=function(t,e,r,n,a){this.bucketInstanceId=t,this.featureIndex=e,this.sourceLayerIndex=r,this.bucketIndex=n,this.tileID=a},ye=function(t){this.crossSourceCollisions=t,this.maxGroupID=0,this.collisionGroups={}};function xe(e,r,n,a,i){var o=t.getAnchorAlignment(e),s=-(o.horizontalAlign-.5)*r,l=-(o.verticalAlign-.5)*n,c=t.evaluateVariableOffset(e,a);return new t.Point(s+c[0]*i,l+c[1]*i)}function be(e,r,n,a,i,o){var s=e.x1,l=e.x2,c=e.y1,u=e.y2,h=e.anchorPointX,f=e.anchorPointY,p=new t.Point(r,n);return a&&p._rotate(i?o:-o),{x1:s+p.x,y1:c+p.y,x2:l+p.x,y2:u+p.y,anchorPointX:h,anchorPointY:f}}ye.prototype.get=function(t){if(this.crossSourceCollisions)return{ID:0,predicate:null};if(!this.collisionGroups[t]){var e=++this.maxGroupID;this.collisionGroups[t]={ID:e,predicate:function(t){return t.collisionGroupID===e}}}return this.collisionGroups[t]};var _e=function(t,e,r,n){this.transform=t.clone(),this.collisionIndex=new he(this.transform),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=e,this.retainedQueryData={},this.collisionGroups=new ye(r),this.collisionCircleArrays={},this.prevPlacement=n,n&&(n.prevPlacement=void 0),this.placedOrientations={}};function we(t,e,r,n,a){t.emplaceBack(e?1:0,r?1:0,n||0,a||0),t.emplaceBack(e?1:0,r?1:0,n||0,a||0),t.emplaceBack(e?1:0,r?1:0,n||0,a||0),t.emplaceBack(e?1:0,r?1:0,n||0,a||0)}_e.prototype.getBucketParts=function(e,r,n,a){var i=n.getBucket(r),o=n.latestFeatureIndex;if(i&&o&&r.id===i.layerIds[0]){var s=n.collisionBoxArray,l=i.layers[0].layout,c=Math.pow(2,this.transform.zoom-n.tileID.overscaledZ),u=n.tileSize/t.EXTENT,h=this.transform.calculatePosMatrix(n.tileID.toUnwrapped()),f="map"===l.get("text-pitch-alignment"),p="map"===l.get("text-rotation-alignment"),d=fe(n,1,this.transform.zoom),g=Kt(h,f,p,this.transform,d),m=null;if(f){var v=Qt(h,f,p,this.transform,d);m=t.multiply([],this.transform.labelPlaneMatrix,v)}this.retainedQueryData[i.bucketInstanceId]=new ve(i.bucketInstanceId,o,i.sourceLayerIndex,i.index,n.tileID);var y={bucket:i,layout:l,posMatrix:h,textLabelPlaneMatrix:g,labelToScreenMatrix:m,scale:c,textPixelRatio:u,holdingForFade:n.holdingForFade(),collisionBoxArray:s,partiallyEvaluatedTextSize:t.evaluateSizeForZoom(i.textSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(i.sourceID)};if(a)for(var x=0,b=i.sortKeyRanges;x<b.length;x+=1){var _=b[x];e.push({sortKey:_.sortKey,symbolInstanceStart:_.symbolInstanceStart,symbolInstanceEnd:_.symbolInstanceEnd,parameters:y})}else e.push({symbolInstanceStart:0,symbolInstanceEnd:i.symbolInstances.length,parameters:y})}},_e.prototype.attemptAnchorPlacement=function(t,e,r,n,a,i,o,s,l,c,u,h,f,p,d){var g,m=[h.textOffset0,h.textOffset1],v=xe(t,r,n,m,a),y=this.collisionIndex.placeCollisionBox(be(e,v.x,v.y,i,o,this.transform.angle),u,s,l,c.predicate);if(!d||0!==this.collisionIndex.placeCollisionBox(be(d,v.x,v.y,i,o,this.transform.angle),u,s,l,c.predicate).box.length)return y.box.length>0?(this.prevPlacement&&this.prevPlacement.variableOffsets[h.crossTileID]&&this.prevPlacement.placements[h.crossTileID]&&this.prevPlacement.placements[h.crossTileID].text&&(g=this.prevPlacement.variableOffsets[h.crossTileID].anchor),this.variableOffsets[h.crossTileID]={textOffset:m,width:r,height:n,anchor:t,textBoxScale:a,prevAnchor:g},this.markUsedJustification(f,t,h,p),f.allowVerticalPlacement&&(this.markUsedOrientation(f,p,h),this.placedOrientations[h.crossTileID]=p),{shift:v,placedGlyphBoxes:y}):void 0},_e.prototype.placeLayerBucketPart=function(e,r,n){var a=this,i=e.parameters,o=i.bucket,s=i.layout,l=i.posMatrix,c=i.textLabelPlaneMatrix,u=i.labelToScreenMatrix,h=i.textPixelRatio,f=i.holdingForFade,p=i.collisionBoxArray,d=i.partiallyEvaluatedTextSize,g=i.collisionGroup,m=s.get("text-optional"),v=s.get("icon-optional"),y=s.get("text-allow-overlap"),x=s.get("icon-allow-overlap"),b="map"===s.get("text-rotation-alignment"),_="map"===s.get("text-pitch-alignment"),w="none"!==s.get("icon-text-fit"),T="viewport-y"===s.get("symbol-z-order"),k=y&&(x||!o.hasIconData()||v),A=x&&(y||!o.hasTextData()||m);!o.collisionArrays&&p&&o.deserializeCollisionBoxes(p);var M=function(e,i){if(!r[e.crossTileID])if(f)a.placements[e.crossTileID]=new ge(!1,!1,!1);else{var p,T=!1,M=!1,S=!0,E=null,C={box:null,offscreen:null},L={box:null,offscreen:null},P=null,I=null,z=0,O=0,D=0;i.textFeatureIndex?z=i.textFeatureIndex:e.useRuntimeCollisionCircles&&(z=e.featureIndex),i.verticalTextFeatureIndex&&(O=i.verticalTextFeatureIndex);var R=i.textBox;if(R){var F=function(r){var n=t.WritingMode.horizontal;if(o.allowVerticalPlacement&&!r&&a.prevPlacement){var i=a.prevPlacement.placedOrientations[e.crossTileID];i&&(a.placedOrientations[e.crossTileID]=i,a.markUsedOrientation(o,n=i,e))}return n},B=function(r,n){if(o.allowVerticalPlacement&&e.numVerticalGlyphVertices>0&&i.verticalTextBox)for(var a=0,s=o.writingModes;a<s.length&&(s[a]===t.WritingMode.vertical?(C=n(),L=C):C=r(),!(C&&C.box&&C.box.length));a+=1);else C=r()};if(s.get("text-variable-anchor")){var N=s.get("text-variable-anchor");if(a.prevPlacement&&a.prevPlacement.variableOffsets[e.crossTileID]){var j=a.prevPlacement.variableOffsets[e.crossTileID];N.indexOf(j.anchor)>0&&(N=N.filter((function(t){return t!==j.anchor}))).unshift(j.anchor)}var V=function(t,r,n){for(var i=t.x2-t.x1,s=t.y2-t.y1,c=e.textBoxScale,u=w&&!x?r:null,f={box:[],offscreen:!1},p=y?2*N.length:N.length,d=0;d<p;++d){var m=a.attemptAnchorPlacement(N[d%N.length],t,i,s,c,b,_,h,l,g,d>=N.length,e,o,n,u);if(m&&(f=m.placedGlyphBoxes)&&f.box&&f.box.length){T=!0,E=m.shift;break}}return f};B((function(){return V(R,i.iconBox,t.WritingMode.horizontal)}),(function(){var r=i.verticalTextBox;return o.allowVerticalPlacement&&!(C&&C.box&&C.box.length)&&e.numVerticalGlyphVertices>0&&r?V(r,i.verticalIconBox,t.WritingMode.vertical):{box:null,offscreen:null}})),C&&(T=C.box,S=C.offscreen);var U=F(C&&C.box);if(!T&&a.prevPlacement){var q=a.prevPlacement.variableOffsets[e.crossTileID];q&&(a.variableOffsets[e.crossTileID]=q,a.markUsedJustification(o,q.anchor,e,U))}}else{var H=function(t,r){var n=a.collisionIndex.placeCollisionBox(t,y,h,l,g.predicate);return n&&n.box&&n.box.length&&(a.markUsedOrientation(o,r,e),a.placedOrientations[e.crossTileID]=r),n};B((function(){return H(R,t.WritingMode.horizontal)}),(function(){var r=i.verticalTextBox;return o.allowVerticalPlacement&&e.numVerticalGlyphVertices>0&&r?H(r,t.WritingMode.vertical):{box:null,offscreen:null}})),F(C&&C.box&&C.box.length)}}if(T=(p=C)&&p.box&&p.box.length>0,S=p&&p.offscreen,e.useRuntimeCollisionCircles){var G=o.text.placedSymbolArray.get(e.centerJustifiedTextSymbolIndex),Y=t.evaluateSizeForFeature(o.textSizeData,d,G),W=s.get("text-padding");P=a.collisionIndex.placeCollisionCircles(y,G,o.lineVertexArray,o.glyphOffsetArray,Y,l,c,u,n,_,g.predicate,e.collisionCircleDiameter,W),T=y||P.circles.length>0&&!P.collisionDetected,S=S&&P.offscreen}if(i.iconFeatureIndex&&(D=i.iconFeatureIndex),i.iconBox){var Z=function(t){var e=w&&E?be(t,E.x,E.y,b,_,a.transform.angle):t;return a.collisionIndex.placeCollisionBox(e,x,h,l,g.predicate)};M=L&&L.box&&L.box.length&&i.verticalIconBox?(I=Z(i.verticalIconBox)).box.length>0:(I=Z(i.iconBox)).box.length>0,S=S&&I.offscreen}var X=m||0===e.numHorizontalGlyphVertices&&0===e.numVerticalGlyphVertices,J=v||0===e.numIconVertices;if(X||J?J?X||(M=M&&T):T=M&&T:M=T=M&&T,T&&p&&p.box&&a.collisionIndex.insertCollisionBox(p.box,s.get("text-ignore-placement"),o.bucketInstanceId,L&&L.box&&O?O:z,g.ID),M&&I&&a.collisionIndex.insertCollisionBox(I.box,s.get("icon-ignore-placement"),o.bucketInstanceId,D,g.ID),P&&(T&&a.collisionIndex.insertCollisionCircles(P.circles,s.get("text-ignore-placement"),o.bucketInstanceId,z,g.ID),n)){var K=o.bucketInstanceId,Q=a.collisionCircleArrays[K];void 0===Q&&(Q=a.collisionCircleArrays[K]=new me);for(var $=0;$<P.circles.length;$+=4)Q.circles.push(P.circles[$+0]),Q.circles.push(P.circles[$+1]),Q.circles.push(P.circles[$+2]),Q.circles.push(P.collisionDetected?1:0)}a.placements[e.crossTileID]=new ge(T||k,M||A,S||o.justReloaded),r[e.crossTileID]=!0}};if(T)for(var S=o.getSortedSymbolIndexes(this.transform.angle),E=S.length-1;E>=0;--E){var C=S[E];M(o.symbolInstances.get(C),o.collisionArrays[C])}else for(var L=e.symbolInstanceStart;L<e.symbolInstanceEnd;L++)M(o.symbolInstances.get(L),o.collisionArrays[L]);if(n&&o.bucketInstanceId in this.collisionCircleArrays){var P=this.collisionCircleArrays[o.bucketInstanceId];t.invert(P.invProjMatrix,l),P.viewportMatrix=this.collisionIndex.getViewportMatrix()}o.justReloaded=!1},_e.prototype.markUsedJustification=function(e,r,n,a){var i;i=a===t.WritingMode.vertical?n.verticalPlacedTextSymbolIndex:{left:n.leftJustifiedTextSymbolIndex,center:n.centerJustifiedTextSymbolIndex,right:n.rightJustifiedTextSymbolIndex}[t.getAnchorJustification(r)];for(var o=0,s=[n.leftJustifiedTextSymbolIndex,n.centerJustifiedTextSymbolIndex,n.rightJustifiedTextSymbolIndex,n.verticalPlacedTextSymbolIndex];o<s.length;o+=1){var l=s[o];l>=0&&(e.text.placedSymbolArray.get(l).crossTileID=i>=0&&l!==i?0:n.crossTileID)}},_e.prototype.markUsedOrientation=function(e,r,n){for(var a=r===t.WritingMode.horizontal||r===t.WritingMode.horizontalOnly?r:0,i=r===t.WritingMode.vertical?r:0,o=0,s=[n.leftJustifiedTextSymbolIndex,n.centerJustifiedTextSymbolIndex,n.rightJustifiedTextSymbolIndex];o<s.length;o+=1)e.text.placedSymbolArray.get(s[o]).placedOrientation=a;n.verticalPlacedTextSymbolIndex&&(e.text.placedSymbolArray.get(n.verticalPlacedTextSymbolIndex).placedOrientation=i)},_e.prototype.commit=function(t){this.commitTime=t,this.zoomAtLastRecencyCheck=this.transform.zoom;var e=this.prevPlacement,r=!1;this.prevZoomAdjustment=e?e.zoomAdjustment(this.transform.zoom):0;var n=e?e.symbolFadeChange(t):1,a=e?e.opacities:{},i=e?e.variableOffsets:{},o=e?e.placedOrientations:{};for(var s in this.placements){var l=this.placements[s],c=a[s];c?(this.opacities[s]=new de(c,n,l.text,l.icon),r=r||l.text!==c.text.placed||l.icon!==c.icon.placed):(this.opacities[s]=new de(null,n,l.text,l.icon,l.skipFade),r=r||l.text||l.icon)}for(var u in a){var h=a[u];if(!this.opacities[u]){var f=new de(h,n,!1,!1);f.isHidden()||(this.opacities[u]=f,r=r||h.text.placed||h.icon.placed)}}for(var p in i)this.variableOffsets[p]||!this.opacities[p]||this.opacities[p].isHidden()||(this.variableOffsets[p]=i[p]);for(var d in o)this.placedOrientations[d]||!this.opacities[d]||this.opacities[d].isHidden()||(this.placedOrientations[d]=o[d]);r?this.lastPlacementChangeTime=t:"number"!=typeof this.lastPlacementChangeTime&&(this.lastPlacementChangeTime=e?e.lastPlacementChangeTime:t)},_e.prototype.updateLayerOpacities=function(t,e){for(var r={},n=0,a=e;n<a.length;n+=1){var i=a[n],o=i.getBucket(t);o&&i.latestFeatureIndex&&t.id===o.layerIds[0]&&this.updateBucketOpacities(o,r,i.collisionBoxArray)}},_e.prototype.updateBucketOpacities=function(e,r,n){var a=this;e.hasTextData()&&e.text.opacityVertexArray.clear(),e.hasIconData()&&e.icon.opacityVertexArray.clear(),e.hasIconCollisionBoxData()&&e.iconCollisionBox.collisionVertexArray.clear(),e.hasTextCollisionBoxData()&&e.textCollisionBox.collisionVertexArray.clear();var i=e.layers[0].layout,o=new de(null,0,!1,!1,!0),s=i.get("text-allow-overlap"),l=i.get("icon-allow-overlap"),c=i.get("text-variable-anchor"),u="map"===i.get("text-rotation-alignment"),h="map"===i.get("text-pitch-alignment"),f="none"!==i.get("icon-text-fit"),p=new de(null,0,s&&(l||!e.hasIconData()||i.get("icon-optional")),l&&(s||!e.hasTextData()||i.get("text-optional")),!0);!e.collisionArrays&&n&&(e.hasIconCollisionBoxData()||e.hasTextCollisionBoxData())&&e.deserializeCollisionBoxes(n);for(var d=function(t,e,r){for(var n=0;n<e/4;n++)t.opacityVertexArray.emplaceBack(r)},g=function(n){var i=e.symbolInstances.get(n),s=i.numHorizontalGlyphVertices,l=i.numVerticalGlyphVertices,g=i.crossTileID,m=a.opacities[g];r[g]?m=o:m||(a.opacities[g]=m=p),r[g]=!0;var v=i.numIconVertices>0,y=a.placedOrientations[i.crossTileID],x=y===t.WritingMode.vertical,b=y===t.WritingMode.horizontal||y===t.WritingMode.horizontalOnly;if(s>0||l>0){var _=Le(m.text);d(e.text,s,x?Pe:_),d(e.text,l,b?Pe:_);var w=m.text.isHidden();[i.rightJustifiedTextSymbolIndex,i.centerJustifiedTextSymbolIndex,i.leftJustifiedTextSymbolIndex].forEach((function(t){t>=0&&(e.text.placedSymbolArray.get(t).hidden=w||x?1:0)})),i.verticalPlacedTextSymbolIndex>=0&&(e.text.placedSymbolArray.get(i.verticalPlacedTextSymbolIndex).hidden=w||b?1:0);var T=a.variableOffsets[i.crossTileID];T&&a.markUsedJustification(e,T.anchor,i,y);var k=a.placedOrientations[i.crossTileID];k&&(a.markUsedJustification(e,"left",i,k),a.markUsedOrientation(e,k,i))}if(v){var A=Le(m.icon),M=!(f&&i.verticalPlacedIconSymbolIndex&&x);i.placedIconSymbolIndex>=0&&(d(e.icon,i.numIconVertices,M?A:Pe),e.icon.placedSymbolArray.get(i.placedIconSymbolIndex).hidden=m.icon.isHidden()),i.verticalPlacedIconSymbolIndex>=0&&(d(e.icon,i.numVerticalIconVertices,M?Pe:A),e.icon.placedSymbolArray.get(i.verticalPlacedIconSymbolIndex).hidden=m.icon.isHidden())}if(e.hasIconCollisionBoxData()||e.hasTextCollisionBoxData()){var S=e.collisionArrays[n];if(S){var E=new t.Point(0,0);if(S.textBox||S.verticalTextBox){var C=!0;if(c){var L=a.variableOffsets[g];L?(E=xe(L.anchor,L.width,L.height,L.textOffset,L.textBoxScale),u&&E._rotate(h?a.transform.angle:-a.transform.angle)):C=!1}S.textBox&&we(e.textCollisionBox.collisionVertexArray,m.text.placed,!C||x,E.x,E.y),S.verticalTextBox&&we(e.textCollisionBox.collisionVertexArray,m.text.placed,!C||b,E.x,E.y)}var P=Boolean(!b&&S.verticalIconBox);S.iconBox&&we(e.iconCollisionBox.collisionVertexArray,m.icon.placed,P,f?E.x:0,f?E.y:0),S.verticalIconBox&&we(e.iconCollisionBox.collisionVertexArray,m.icon.placed,!P,f?E.x:0,f?E.y:0)}}},m=0;m<e.symbolInstances.length;m++)g(m);if(e.sortFeatures(this.transform.angle),this.retainedQueryData[e.bucketInstanceId]&&(this.retainedQueryData[e.bucketInstanceId].featureSortOrder=e.featureSortOrder),e.hasTextData()&&e.text.opacityVertexBuffer&&e.text.opacityVertexBuffer.updateData(e.text.opacityVertexArray),e.hasIconData()&&e.icon.opacityVertexBuffer&&e.icon.opacityVertexBuffer.updateData(e.icon.opacityVertexArray),e.hasIconCollisionBoxData()&&e.iconCollisionBox.collisionVertexBuffer&&e.iconCollisionBox.collisionVertexBuffer.updateData(e.iconCollisionBox.collisionVertexArray),e.hasTextCollisionBoxData()&&e.textCollisionBox.collisionVertexBuffer&&e.textCollisionBox.collisionVertexBuffer.updateData(e.textCollisionBox.collisionVertexArray),e.bucketInstanceId in this.collisionCircleArrays){var v=this.collisionCircleArrays[e.bucketInstanceId];e.placementInvProjMatrix=v.invProjMatrix,e.placementViewportMatrix=v.viewportMatrix,e.collisionCircleArray=v.circles,delete this.collisionCircleArrays[e.bucketInstanceId]}},_e.prototype.symbolFadeChange=function(t){return 0===this.fadeDuration?1:(t-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment},_e.prototype.zoomAdjustment=function(t){return Math.max(0,(this.transform.zoom-t)/1.5)},_e.prototype.hasTransitions=function(t){return this.stale||t-this.lastPlacementChangeTime<this.fadeDuration},_e.prototype.stillRecent=function(t,e){var r=this.zoomAtLastRecencyCheck===e?1-this.zoomAdjustment(e):1;return this.zoomAtLastRecencyCheck=e,this.commitTime+this.fadeDuration*r>t},_e.prototype.setStale=function(){this.stale=!0};var Te=Math.pow(2,25),ke=Math.pow(2,24),Ae=Math.pow(2,17),Me=Math.pow(2,16),Se=Math.pow(2,9),Ee=Math.pow(2,8),Ce=Math.pow(2,1);function Le(t){if(0===t.opacity&&!t.placed)return 0;if(1===t.opacity&&t.placed)return 4294967295;var e=t.placed?1:0,r=Math.floor(127*t.opacity);return r*Te+e*ke+r*Ae+e*Me+r*Se+e*Ee+r*Ce+e}var Pe=0,Ie=function(t){this._sortAcrossTiles="viewport-y"!==t.layout.get("symbol-z-order")&&void 0!==t.layout.get("symbol-sort-key").constantOr(1),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]};Ie.prototype.continuePlacement=function(t,e,r,n,a){for(var i=this._bucketParts;this._currentTileIndex<t.length;)if(e.getBucketParts(i,n,t[this._currentTileIndex],this._sortAcrossTiles),this._currentTileIndex++,a())return!0;for(this._sortAcrossTiles&&(this._sortAcrossTiles=!1,i.sort((function(t,e){return t.sortKey-e.sortKey})));this._currentPartIndex<i.length;)if(e.placeLayerBucketPart(i[this._currentPartIndex],this._seenCrossTileIDs,r),this._currentPartIndex++,a())return!0;return!1};var ze=function(t,e,r,n,a,i,o){this.placement=new _e(t,a,i,o),this._currentPlacementIndex=e.length-1,this._forceFullPlacement=r,this._showCollisionBoxes=n,this._done=!1};ze.prototype.isDone=function(){return this._done},ze.prototype.continuePlacement=function(e,r,n){for(var a=this,i=t.browser.now(),o=function(){var e=t.browser.now()-i;return!a._forceFullPlacement&&e>2};this._currentPlacementIndex>=0;){var s=r[e[this._currentPlacementIndex]],l=this.placement.collisionIndex.transform.zoom;if("symbol"===s.type&&(!s.minzoom||s.minzoom<=l)&&(!s.maxzoom||s.maxzoom>l)){if(this._inProgressLayer||(this._inProgressLayer=new Ie(s)),this._inProgressLayer.continuePlacement(n[s.source],this.placement,this._showCollisionBoxes,s,o))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0},ze.prototype.commit=function(t){return this.placement.commit(t),this.placement};var Oe=512/t.EXTENT/2,De=function(t,e,r){this.tileID=t,this.indexedSymbolInstances={},this.bucketInstanceId=r;for(var n=0;n<e.length;n++){var a=e.get(n),i=a.key;this.indexedSymbolInstances[i]||(this.indexedSymbolInstances[i]=[]),this.indexedSymbolInstances[i].push({crossTileID:a.crossTileID,coord:this.getScaledCoordinates(a,t)})}};De.prototype.getScaledCoordinates=function(e,r){var n=Oe/Math.pow(2,r.canonical.z-this.tileID.canonical.z);return{x:Math.floor((r.canonical.x*t.EXTENT+e.anchorX)*n),y:Math.floor((r.canonical.y*t.EXTENT+e.anchorY)*n)}},De.prototype.findMatches=function(t,e,r){for(var n=this.tileID.canonical.z<e.canonical.z?1:Math.pow(2,this.tileID.canonical.z-e.canonical.z),a=0;a<t.length;a++){var i=t.get(a);if(!i.crossTileID){var o=this.indexedSymbolInstances[i.key];if(o)for(var s=this.getScaledCoordinates(i,e),l=0,c=o;l<c.length;l+=1){var u=c[l];if(Math.abs(u.coord.x-s.x)<=n&&Math.abs(u.coord.y-s.y)<=n&&!r[u.crossTileID]){r[u.crossTileID]=!0,i.crossTileID=u.crossTileID;break}}}}};var Re=function(){this.maxCrossTileID=0};Re.prototype.generate=function(){return++this.maxCrossTileID};var Fe=function(){this.indexes={},this.usedCrossTileIDs={},this.lng=0};Fe.prototype.handleWrapJump=function(t){var e=Math.round((t-this.lng)/360);if(0!==e)for(var r in this.indexes){var n=this.indexes[r],a={};for(var i in n){var o=n[i];o.tileID=o.tileID.unwrapTo(o.tileID.wrap+e),a[o.tileID.key]=o}this.indexes[r]=a}this.lng=t},Fe.prototype.addBucket=function(t,e,r){if(this.indexes[t.overscaledZ]&&this.indexes[t.overscaledZ][t.key]){if(this.indexes[t.overscaledZ][t.key].bucketInstanceId===e.bucketInstanceId)return!1;this.removeBucketCrossTileIDs(t.overscaledZ,this.indexes[t.overscaledZ][t.key])}for(var n=0;n<e.symbolInstances.length;n++)e.symbolInstances.get(n).crossTileID=0;this.usedCrossTileIDs[t.overscaledZ]||(this.usedCrossTileIDs[t.overscaledZ]={});var a=this.usedCrossTileIDs[t.overscaledZ];for(var i in this.indexes){var o=this.indexes[i];if(Number(i)>t.overscaledZ)for(var s in o){var l=o[s];l.tileID.isChildOf(t)&&l.findMatches(e.symbolInstances,t,a)}else{var c=o[t.scaledTo(Number(i)).key];c&&c.findMatches(e.symbolInstances,t,a)}}for(var u=0;u<e.symbolInstances.length;u++){var h=e.symbolInstances.get(u);h.crossTileID||(h.crossTileID=r.generate(),a[h.crossTileID]=!0)}return void 0===this.indexes[t.overscaledZ]&&(this.indexes[t.overscaledZ]={}),this.indexes[t.overscaledZ][t.key]=new De(t,e.symbolInstances,e.bucketInstanceId),!0},Fe.prototype.removeBucketCrossTileIDs=function(t,e){for(var r in e.indexedSymbolInstances)for(var n=0,a=e.indexedSymbolInstances[r];n<a.length;n+=1)delete this.usedCrossTileIDs[t][a[n].crossTileID]},Fe.prototype.removeStaleBuckets=function(t){var e=!1;for(var r in this.indexes){var n=this.indexes[r];for(var a in n)t[n[a].bucketInstanceId]||(this.removeBucketCrossTileIDs(r,n[a]),delete n[a],e=!0)}return e};var Be=function(){this.layerIndexes={},this.crossTileIDs=new Re,this.maxBucketInstanceId=0,this.bucketsInCurrentPlacement={}};Be.prototype.addLayer=function(t,e,r){var n=this.layerIndexes[t.id];void 0===n&&(n=this.layerIndexes[t.id]=new Fe);var a=!1,i={};n.handleWrapJump(r);for(var o=0,s=e;o<s.length;o+=1){var l=s[o],c=l.getBucket(t);c&&t.id===c.layerIds[0]&&(c.bucketInstanceId||(c.bucketInstanceId=++this.maxBucketInstanceId),n.addBucket(l.tileID,c,this.crossTileIDs)&&(a=!0),i[c.bucketInstanceId]=!0)}return n.removeStaleBuckets(i)&&(a=!0),a},Be.prototype.pruneUnusedLayers=function(t){var e={};for(var r in t.forEach((function(t){e[t]=!0})),this.layerIndexes)e[r]||delete this.layerIndexes[r]};var Ne=function(e,r){return t.emitValidationErrors(e,r&&r.filter((function(t){return"source.canvas"!==t.identifier})))},je=t.pick(Vt,["addLayer","removeLayer","setPaintProperty","setLayoutProperty","setFilter","addSource","removeSource","setLayerZoomRange","setLight","setTransition","setGeoJSONSourceData"]),Ve=t.pick(Vt,["setCenter","setZoom","setBearing","setPitch"]),Ue=function(){var e={},r=t.styleSpec.$version;for(var n in t.styleSpec.$root){var a,i=t.styleSpec.$root[n];i.required&&null!=(a="version"===n?r:"array"===i.type?[]:{})&&(e[n]=a)}return e}(),qe=function(e){function r(n,a){var i=this;void 0===a&&(a={}),e.call(this),this.map=n,this.dispatcher=new k(Bt(),this),this.imageManager=new f,this.imageManager.setEventedParent(this),this.glyphManager=new x(n._requestManager,a.localIdeographFontFamily),this.lineAtlas=new T(256,512),this.crossTileSymbolIndex=new Be,this._layers={},this._serializedLayers={},this._order=[],this.sourceCaches={},this.zoomHistory=new t.ZoomHistory,this._loaded=!1,this._availableImages=[],this._resetUpdates(),this.dispatcher.broadcast("setReferrer",t.getReferrer());var o=this;this._rtlTextPluginCallback=r.registerForPluginStateChange((function(e){o.dispatcher.broadcast("syncRTLPluginState",{pluginStatus:e.pluginStatus,pluginURL:e.pluginURL},(function(e,r){if(t.triggerPluginCompletionEvent(e),r&&r.every((function(t){return t})))for(var n in o.sourceCaches)o.sourceCaches[n].reload()}))})),this.on("data",(function(t){if("source"===t.dataType&&"metadata"===t.sourceDataType){var e=i.sourceCaches[t.sourceId];if(e){var r=e.getSource();if(r&&r.vectorLayerIds)for(var n in i._layers){var a=i._layers[n];a.source===r.id&&i._validateLayer(a)}}}}))}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.loadURL=function(e,r){var n=this;void 0===r&&(r={}),this.fire(new t.Event("dataloading",{dataType:"style"}));var a="boolean"==typeof r.validate?r.validate:!t.isMapboxURL(e);e=this.map._requestManager.normalizeStyleURL(e,r.accessToken);var i=this.map._requestManager.transformRequest(e,t.ResourceType.Style);this._request=t.getJSON(i,(function(e,r){n._request=null,e?n.fire(new t.ErrorEvent(e)):r&&n._load(r,a)}))},r.prototype.loadJSON=function(e,r){var n=this;void 0===r&&(r={}),this.fire(new t.Event("dataloading",{dataType:"style"})),this._request=t.browser.frame((function(){n._request=null,n._load(e,!1!==r.validate)}))},r.prototype.loadEmpty=function(){this.fire(new t.Event("dataloading",{dataType:"style"})),this._load(Ue,!1)},r.prototype._load=function(e,r){if(!r||!Ne(this,t.validateStyle(e))){for(var n in this._loaded=!0,this.stylesheet=e,e.sources)this.addSource(n,e.sources[n],{validate:!1});e.sprite?this._loadSprite(e.sprite):this.imageManager.setLoaded(!0),this.glyphManager.setURL(e.glyphs);var a=jt(this.stylesheet.layers);this._order=a.map((function(t){return t.id})),this._layers={},this._serializedLayers={};for(var i=0,o=a;i<o.length;i+=1){var s=o[i];(s=t.createStyleLayer(s)).setEventedParent(this,{layer:{id:s.id}}),this._layers[s.id]=s,this._serializedLayers[s.id]=s.serialize()}this.dispatcher.broadcast("setLayers",this._serializeLayers(this._order)),this.light=new w(this.stylesheet.light),this.fire(new t.Event("data",{dataType:"style"})),this.fire(new t.Event("style.load"))}},r.prototype._loadSprite=function(e){var r=this;this._spriteRequest=function(e,r,n){var a,i,o,s=t.browser.devicePixelRatio>1?"@2x":"",l=t.getJSON(r.transformRequest(r.normalizeSpriteURL(e,s,".json"),t.ResourceType.SpriteJSON),(function(t,e){l=null,o||(o=t,a=e,u())})),c=t.getImage(r.transformRequest(r.normalizeSpriteURL(e,s,".png"),t.ResourceType.SpriteImage),(function(t,e){c=null,o||(o=t,i=e,u())}));function u(){if(o)n(o);else if(a&&i){var e=t.browser.getImageData(i),r={};for(var s in a){var l=a[s],c=l.width,u=l.height,h=l.x,f=l.y,p=l.sdf,d=l.pixelRatio,g=l.stretchX,m=l.stretchY,v=l.content,y=new t.RGBAImage({width:c,height:u});t.RGBAImage.copy(e,y,{x:h,y:f},{x:0,y:0},{width:c,height:u}),r[s]={data:y,pixelRatio:d,sdf:p,stretchX:g,stretchY:m,content:v}}n(null,r)}}return{cancel:function(){l&&(l.cancel(),l=null),c&&(c.cancel(),c=null)}}}(e,this.map._requestManager,(function(e,n){if(r._spriteRequest=null,e)r.fire(new t.ErrorEvent(e));else if(n)for(var a in n)r.imageManager.addImage(a,n[a]);r.imageManager.setLoaded(!0),r._availableImages=r.imageManager.listImages(),r.dispatcher.broadcast("setImages",r._availableImages),r.fire(new t.Event("data",{dataType:"style"}))}))},r.prototype._validateLayer=function(e){var r=this.sourceCaches[e.source];if(r){var n=e.sourceLayer;if(n){var a=r.getSource();("geojson"===a.type||a.vectorLayerIds&&-1===a.vectorLayerIds.indexOf(n))&&this.fire(new t.ErrorEvent(new Error('Source layer "'+n+'" does not exist on source "'+a.id+'" as specified by style layer "'+e.id+'"')))}}},r.prototype.loaded=function(){if(!this._loaded)return!1;if(Object.keys(this._updatedSources).length)return!1;for(var t in this.sourceCaches)if(!this.sourceCaches[t].loaded())return!1;return!!this.imageManager.isLoaded()},r.prototype._serializeLayers=function(t){for(var e=[],r=0,n=t;r<n.length;r+=1){var a=this._layers[n[r]];"custom"!==a.type&&e.push(a.serialize())}return e},r.prototype.hasTransitions=function(){if(this.light&&this.light.hasTransition())return!0;for(var t in this.sourceCaches)if(this.sourceCaches[t].hasTransition())return!0;for(var e in this._layers)if(this._layers[e].hasTransition())return!0;return!1},r.prototype._checkLoaded=function(){if(!this._loaded)throw new Error("Style is not done loading")},r.prototype.update=function(e){if(this._loaded){var r=this._changed;if(this._changed){var n=Object.keys(this._updatedLayers),a=Object.keys(this._removedLayers);for(var i in(n.length||a.length)&&this._updateWorkerLayers(n,a),this._updatedSources){var o=this._updatedSources[i];"reload"===o?this._reloadSource(i):"clear"===o&&this._clearSource(i)}for(var s in this._updateTilesForChangedImages(),this._updatedPaintProps)this._layers[s].updateTransitions(e);this.light.updateTransitions(e),this._resetUpdates()}for(var l in this.sourceCaches)this.sourceCaches[l].used=!1;for(var c=0,u=this._order;c<u.length;c+=1){var h=this._layers[u[c]];h.recalculate(e,this._availableImages),!h.isHidden(e.zoom)&&h.source&&(this.sourceCaches[h.source].used=!0)}this.light.recalculate(e),this.z=e.zoom,r&&this.fire(new t.Event("data",{dataType:"style"}))}},r.prototype._updateTilesForChangedImages=function(){var t=Object.keys(this._changedImages);if(t.length){for(var e in this.sourceCaches)this.sourceCaches[e].reloadTilesForDependencies(["icons","patterns"],t);this._changedImages={}}},r.prototype._updateWorkerLayers=function(t,e){this.dispatcher.broadcast("updateLayers",{layers:this._serializeLayers(t),removedIds:e})},r.prototype._resetUpdates=function(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={}},r.prototype.setState=function(e){var r=this;if(this._checkLoaded(),Ne(this,t.validateStyle(e)))return!1;(e=t.clone$1(e)).layers=jt(e.layers);var n=function(e,r){if(!e)return[{command:Vt.setStyle,args:[r]}];var n=[];try{if(!t.deepEqual(e.version,r.version))return[{command:Vt.setStyle,args:[r]}];t.deepEqual(e.center,r.center)||n.push({command:Vt.setCenter,args:[r.center]}),t.deepEqual(e.zoom,r.zoom)||n.push({command:Vt.setZoom,args:[r.zoom]}),t.deepEqual(e.bearing,r.bearing)||n.push({command:Vt.setBearing,args:[r.bearing]}),t.deepEqual(e.pitch,r.pitch)||n.push({command:Vt.setPitch,args:[r.pitch]}),t.deepEqual(e.sprite,r.sprite)||n.push({command:Vt.setSprite,args:[r.sprite]}),t.deepEqual(e.glyphs,r.glyphs)||n.push({command:Vt.setGlyphs,args:[r.glyphs]}),t.deepEqual(e.transition,r.transition)||n.push({command:Vt.setTransition,args:[r.transition]}),t.deepEqual(e.light,r.light)||n.push({command:Vt.setLight,args:[r.light]});var a={},i=[];!function(e,r,n,a){var i;for(i in r=r||{},e=e||{})e.hasOwnProperty(i)&&(r.hasOwnProperty(i)||qt(i,n,a));for(i in r)r.hasOwnProperty(i)&&(e.hasOwnProperty(i)?t.deepEqual(e[i],r[i])||("geojson"===e[i].type&&"geojson"===r[i].type&&Gt(e,r,i)?n.push({command:Vt.setGeoJSONSourceData,args:[i,r[i].data]}):Ht(i,r,n,a)):Ut(i,r,n))}(e.sources,r.sources,i,a);var o=[];e.layers&&e.layers.forEach((function(t){a[t.source]?n.push({command:Vt.removeLayer,args:[t.id]}):o.push(t)})),n=n.concat(i),function(e,r,n){r=r||[];var a,i,o,s,l,c,u,h=(e=e||[]).map(Wt),f=r.map(Wt),p=e.reduce(Zt,{}),d=r.reduce(Zt,{}),g=h.slice(),m=Object.create(null);for(a=0,i=0;a<h.length;a++)d.hasOwnProperty(o=h[a])?i++:(n.push({command:Vt.removeLayer,args:[o]}),g.splice(g.indexOf(o,i),1));for(a=0,i=0;a<f.length;a++)g[g.length-1-a]!==(o=f[f.length-1-a])&&(p.hasOwnProperty(o)?(n.push({command:Vt.removeLayer,args:[o]}),g.splice(g.lastIndexOf(o,g.length-i),1)):i++,n.push({command:Vt.addLayer,args:[d[o],c=g[g.length-a]]}),g.splice(g.length-a,0,o),m[o]=!0);for(a=0;a<f.length;a++)if(s=p[o=f[a]],l=d[o],!m[o]&&!t.deepEqual(s,l))if(t.deepEqual(s.source,l.source)&&t.deepEqual(s["source-layer"],l["source-layer"])&&t.deepEqual(s.type,l.type)){for(u in Yt(s.layout,l.layout,n,o,null,Vt.setLayoutProperty),Yt(s.paint,l.paint,n,o,null,Vt.setPaintProperty),t.deepEqual(s.filter,l.filter)||n.push({command:Vt.setFilter,args:[o,l.filter]}),t.deepEqual(s.minzoom,l.minzoom)&&t.deepEqual(s.maxzoom,l.maxzoom)||n.push({command:Vt.setLayerZoomRange,args:[o,l.minzoom,l.maxzoom]}),s)s.hasOwnProperty(u)&&"layout"!==u&&"paint"!==u&&"filter"!==u&&"metadata"!==u&&"minzoom"!==u&&"maxzoom"!==u&&(0===u.indexOf("paint.")?Yt(s[u],l[u],n,o,u.slice(6),Vt.setPaintProperty):t.deepEqual(s[u],l[u])||n.push({command:Vt.setLayerProperty,args:[o,u,l[u]]}));for(u in l)l.hasOwnProperty(u)&&!s.hasOwnProperty(u)&&"layout"!==u&&"paint"!==u&&"filter"!==u&&"metadata"!==u&&"minzoom"!==u&&"maxzoom"!==u&&(0===u.indexOf("paint.")?Yt(s[u],l[u],n,o,u.slice(6),Vt.setPaintProperty):t.deepEqual(s[u],l[u])||n.push({command:Vt.setLayerProperty,args:[o,u,l[u]]}))}else n.push({command:Vt.removeLayer,args:[o]}),c=g[g.lastIndexOf(o)+1],n.push({command:Vt.addLayer,args:[l,c]})}(o,r.layers,n)}catch(t){console.warn("Unable to compute style diff:",t),n=[{command:Vt.setStyle,args:[r]}]}return n}(this.serialize(),e).filter((function(t){return!(t.command in Ve)}));if(0===n.length)return!1;var a=n.filter((function(t){return!(t.command in je)}));if(a.length>0)throw new Error("Unimplemented: "+a.map((function(t){return t.command})).join(", ")+".");return n.forEach((function(t){"setTransition"!==t.command&&r[t.command].apply(r,t.args)})),this.stylesheet=e,!0},r.prototype.addImage=function(e,r){if(this.getImage(e))return this.fire(new t.ErrorEvent(new Error("An image with this name already exists.")));this.imageManager.addImage(e,r),this._availableImages=this.imageManager.listImages(),this._changedImages[e]=!0,this._changed=!0,this.fire(new t.Event("data",{dataType:"style"}))},r.prototype.updateImage=function(t,e){this.imageManager.updateImage(t,e)},r.prototype.getImage=function(t){return this.imageManager.getImage(t)},r.prototype.removeImage=function(e){if(!this.getImage(e))return this.fire(new t.ErrorEvent(new Error("No image with this name exists.")));this.imageManager.removeImage(e),this._availableImages=this.imageManager.listImages(),this._changedImages[e]=!0,this._changed=!0,this.fire(new t.Event("data",{dataType:"style"}))},r.prototype.listImages=function(){return this._checkLoaded(),this.imageManager.listImages()},r.prototype.addSource=function(e,r,n){var a=this;if(void 0===n&&(n={}),this._checkLoaded(),void 0!==this.sourceCaches[e])throw new Error("There is already a source with this ID");if(!r.type)throw new Error("The type property must be defined, but the only the following properties were given: "+Object.keys(r).join(", ")+".");if(!(["vector","raster","geojson","video","image"].indexOf(r.type)>=0&&this._validate(t.validateStyle.source,"sources."+e,r,null,n))){this.map&&this.map._collectResourceTiming&&(r.collectResourceTiming=!0);var i=this.sourceCaches[e]=new Lt(e,r,this.dispatcher);i.style=this,i.setEventedParent(this,(function(){return{isSourceLoaded:a.loaded(),source:i.serialize(),sourceId:e}})),i.onAdd(this.map),this._changed=!0}},r.prototype.removeSource=function(e){if(this._checkLoaded(),void 0===this.sourceCaches[e])throw new Error("There is no source with this ID");for(var r in this._layers)if(this._layers[r].source===e)return this.fire(new t.ErrorEvent(new Error('Source "'+e+'" cannot be removed while layer "'+r+'" is using it.')));var n=this.sourceCaches[e];delete this.sourceCaches[e],delete this._updatedSources[e],n.fire(new t.Event("data",{sourceDataType:"metadata",dataType:"source",sourceId:e})),n.setEventedParent(null),n.clearTiles(),n.onRemove&&n.onRemove(this.map),this._changed=!0},r.prototype.setGeoJSONSourceData=function(t,e){this._checkLoaded(),this.sourceCaches[t].getSource().setData(e),this._changed=!0},r.prototype.getSource=function(t){return this.sourceCaches[t]&&this.sourceCaches[t].getSource()},r.prototype.addLayer=function(e,r,n){void 0===n&&(n={}),this._checkLoaded();var a=e.id;if(this.getLayer(a))this.fire(new t.ErrorEvent(new Error('Layer with id "'+a+'" already exists on this map')));else{var i;if("custom"===e.type){if(Ne(this,t.validateCustomStyleLayer(e)))return;i=t.createStyleLayer(e)}else{if("object"==typeof e.source&&(this.addSource(a,e.source),e=t.clone$1(e),e=t.extend(e,{source:a})),this._validate(t.validateStyle.layer,"layers."+a,e,{arrayIndex:-1},n))return;i=t.createStyleLayer(e),this._validateLayer(i),i.setEventedParent(this,{layer:{id:a}}),this._serializedLayers[i.id]=i.serialize()}var o=r?this._order.indexOf(r):this._order.length;if(r&&-1===o)this.fire(new t.ErrorEvent(new Error('Layer with id "'+r+'" does not exist on this map.')));else{if(this._order.splice(o,0,a),this._layerOrderChanged=!0,this._layers[a]=i,this._removedLayers[a]&&i.source&&"custom"!==i.type){var s=this._removedLayers[a];delete this._removedLayers[a],s.type!==i.type?this._updatedSources[i.source]="clear":(this._updatedSources[i.source]="reload",this.sourceCaches[i.source].pause())}this._updateLayer(i),i.onAdd&&i.onAdd(this.map)}}},r.prototype.moveLayer=function(e,r){if(this._checkLoaded(),this._changed=!0,this._layers[e]){if(e!==r){var n=this._order.indexOf(e);this._order.splice(n,1);var a=r?this._order.indexOf(r):this._order.length;r&&-1===a?this.fire(new t.ErrorEvent(new Error('Layer with id "'+r+'" does not exist on this map.'))):(this._order.splice(a,0,e),this._layerOrderChanged=!0)}}else this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style and cannot be moved.")))},r.prototype.removeLayer=function(e){this._checkLoaded();var r=this._layers[e];if(r){r.setEventedParent(null);var n=this._order.indexOf(e);this._order.splice(n,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[e]=r,delete this._layers[e],delete this._serializedLayers[e],delete this._updatedLayers[e],delete this._updatedPaintProps[e],r.onRemove&&r.onRemove(this.map)}else this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style and cannot be removed.")))},r.prototype.getLayer=function(t){return this._layers[t]},r.prototype.hasLayer=function(t){return t in this._layers},r.prototype.setLayerZoomRange=function(e,r,n){this._checkLoaded();var a=this.getLayer(e);a?a.minzoom===r&&a.maxzoom===n||(null!=r&&(a.minzoom=r),null!=n&&(a.maxzoom=n),this._updateLayer(a)):this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style and cannot have zoom extent.")))},r.prototype.setFilter=function(e,r,n){void 0===n&&(n={}),this._checkLoaded();var a=this.getLayer(e);if(a){if(!t.deepEqual(a.filter,r))return null==r?(a.filter=void 0,void this._updateLayer(a)):void(this._validate(t.validateStyle.filter,"layers."+a.id+".filter",r,null,n)||(a.filter=t.clone$1(r),this._updateLayer(a)))}else this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style and cannot be filtered.")))},r.prototype.getFilter=function(e){return t.clone$1(this.getLayer(e).filter)},r.prototype.setLayoutProperty=function(e,r,n,a){void 0===a&&(a={}),this._checkLoaded();var i=this.getLayer(e);i?t.deepEqual(i.getLayoutProperty(r),n)||(i.setLayoutProperty(r,n,a),this._updateLayer(i)):this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style and cannot be styled.")))},r.prototype.getLayoutProperty=function(e,r){var n=this.getLayer(e);if(n)return n.getLayoutProperty(r);this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style.")))},r.prototype.setPaintProperty=function(e,r,n,a){void 0===a&&(a={}),this._checkLoaded();var i=this.getLayer(e);i?t.deepEqual(i.getPaintProperty(r),n)||(i.setPaintProperty(r,n,a)&&this._updateLayer(i),this._changed=!0,this._updatedPaintProps[e]=!0):this.fire(new t.ErrorEvent(new Error("The layer '"+e+"' does not exist in the map's style and cannot be styled.")))},r.prototype.getPaintProperty=function(t,e){return this.getLayer(t).getPaintProperty(e)},r.prototype.setFeatureState=function(e,r){this._checkLoaded();var n=e.source,a=e.sourceLayer,i=this.sourceCaches[n];if(void 0!==i){var o=i.getSource().type;"geojson"===o&&a?this.fire(new t.ErrorEvent(new Error("GeoJSON sources cannot have a sourceLayer parameter."))):"vector"!==o||a?(void 0===e.id&&this.fire(new t.ErrorEvent(new Error("The feature id parameter must be provided."))),i.setFeatureState(a,e.id,r)):this.fire(new t.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")))}else this.fire(new t.ErrorEvent(new Error("The source '"+n+"' does not exist in the map's style.")))},r.prototype.removeFeatureState=function(e,r){this._checkLoaded();var n=e.source,a=this.sourceCaches[n];if(void 0!==a){var i=a.getSource().type,o="vector"===i?e.sourceLayer:void 0;"vector"!==i||o?r&&"string"!=typeof e.id&&"number"!=typeof e.id?this.fire(new t.ErrorEvent(new Error("A feature id is requred to remove its specific state property."))):a.removeFeatureState(o,e.id,r):this.fire(new t.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")))}else this.fire(new t.ErrorEvent(new Error("The source '"+n+"' does not exist in the map's style.")))},r.prototype.getFeatureState=function(e){this._checkLoaded();var r=e.source,n=e.sourceLayer,a=this.sourceCaches[r];if(void 0!==a){if("vector"!==a.getSource().type||n)return void 0===e.id&&this.fire(new t.ErrorEvent(new Error("The feature id parameter must be provided."))),a.getFeatureState(n,e.id);this.fire(new t.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")))}else this.fire(new t.ErrorEvent(new Error("The source '"+r+"' does not exist in the map's style.")))},r.prototype.getTransition=function(){return t.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},r.prototype.serialize=function(){return t.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:t.mapObject(this.sourceCaches,(function(t){return t.serialize()})),layers:this._serializeLayers(this._order)},(function(t){return void 0!==t}))},r.prototype._updateLayer=function(t){this._updatedLayers[t.id]=!0,t.source&&!this._updatedSources[t.source]&&"raster"!==this.sourceCaches[t.source].getSource().type&&(this._updatedSources[t.source]="reload",this.sourceCaches[t.source].pause()),this._changed=!0},r.prototype._flattenAndSortRenderedFeatures=function(t){for(var e=this,r=function(t){return"fill-extrusion"===e._layers[t].type},n={},a=[],i=this._order.length-1;i>=0;i--){var o=this._order[i];if(r(o)){n[o]=i;for(var s=0,l=t;s<l.length;s+=1){var c=l[s][o];if(c)for(var u=0,h=c;u<h.length;u+=1)a.push(h[u])}}}a.sort((function(t,e){return e.intersectionZ-t.intersectionZ}));for(var f=[],p=this._order.length-1;p>=0;p--){var d=this._order[p];if(r(d))for(var g=a.length-1;g>=0;g--){var m=a[g].feature;if(n[m.layer.id]<p)break;f.push(m),a.pop()}else for(var v=0,y=t;v<y.length;v+=1){var x=y[v][d];if(x)for(var b=0,_=x;b<_.length;b+=1)f.push(_[b].feature)}}return f},r.prototype.queryRenderedFeatures=function(e,r,n){r&&r.filter&&this._validate(t.validateStyle.filter,"queryRenderedFeatures.filter",r.filter,null,r);var a={};if(r&&r.layers){if(!Array.isArray(r.layers))return this.fire(new t.ErrorEvent(new Error("parameters.layers must be an Array."))),[];for(var i=0,o=r.layers;i<o.length;i+=1){var s=o[i],l=this._layers[s];if(!l)return this.fire(new t.ErrorEvent(new Error("The layer '"+s+"' does not exist in the map's style and cannot be queried for features."))),[];a[l.source]=!0}}var c=[];for(var u in r.availableImages=this._availableImages,this.sourceCaches)r.layers&&!a[u]||c.push(F(this.sourceCaches[u],this._layers,this._serializedLayers,e,r,n));return this.placement&&c.push(function(t,e,r,n,a,i,o){for(var s={},l=i.queryRenderedSymbols(n),c=[],u=0,h=Object.keys(l).map(Number);u<h.length;u+=1)c.push(o[h[u]]);c.sort(B);for(var f=function(){var r=d[p],n=r.featureIndex.lookupSymbolFeatures(l[r.bucketInstanceId],e,r.bucketIndex,r.sourceLayerIndex,a.filter,a.layers,a.availableImages,t);for(var i in n){var o=s[i]=s[i]||[],c=n[i];c.sort((function(t,e){var n=r.featureSortOrder;if(n){var a=n.indexOf(t.featureIndex);return n.indexOf(e.featureIndex)-a}return e.featureIndex-t.featureIndex}));for(var u=0,h=c;u<h.length;u+=1)o.push(h[u])}},p=0,d=c;p<d.length;p+=1)f();var g=function(e){s[e].forEach((function(n){var a=n.feature,i=r[t[e].source].getFeatureState(a.layer["source-layer"],a.id);a.source=a.layer.source,a.layer["source-layer"]&&(a.sourceLayer=a.layer["source-layer"]),a.state=i}))};for(var m in s)g(m);return s}(this._layers,this._serializedLayers,this.sourceCaches,e,r,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(c)},r.prototype.querySourceFeatures=function(e,r){r&&r.filter&&this._validate(t.validateStyle.filter,"querySourceFeatures.filter",r.filter,null,r);var n=this.sourceCaches[e];return n?function(t,e){for(var r=t.getRenderableIds().map((function(e){return t.getTileByID(e)})),n=[],a={},i=0;i<r.length;i++){var o=r[i],s=o.tileID.canonical.key;a[s]||(a[s]=!0,o.querySourceFeatures(n,e))}return n}(n,r):[]},r.prototype.addSourceType=function(t,e,n){return r.getSourceType(t)?n(new Error('A source type called "'+t+'" already exists.')):(r.setSourceType(t,e),e.workerSourceURL?void this.dispatcher.broadcast("loadWorkerSource",{name:t,url:e.workerSourceURL},n):n(null,null))},r.prototype.getLight=function(){return this.light.getLight()},r.prototype.setLight=function(e,r){void 0===r&&(r={}),this._checkLoaded();var n=this.light.getLight(),a=!1;for(var i in e)if(!t.deepEqual(e[i],n[i])){a=!0;break}if(a){var o={now:t.browser.now(),transition:t.extend({duration:300,delay:0},this.stylesheet.transition)};this.light.setLight(e,r),this.light.updateTransitions(o)}},r.prototype._validate=function(e,r,n,a,i){return void 0===i&&(i={}),(!i||!1!==i.validate)&&Ne(this,e.call(t.validateStyle,t.extend({key:r,style:this.serialize(),value:n,styleSpec:t.styleSpec},a)))},r.prototype._remove=function(){for(var e in this._request&&(this._request.cancel(),this._request=null),this._spriteRequest&&(this._spriteRequest.cancel(),this._spriteRequest=null),t.evented.off("pluginStateChange",this._rtlTextPluginCallback),this._layers)this._layers[e].setEventedParent(null);for(var r in this.sourceCaches)this.sourceCaches[r].clearTiles(),this.sourceCaches[r].setEventedParent(null);this.imageManager.setEventedParent(null),this.setEventedParent(null),this.dispatcher.remove()},r.prototype._clearSource=function(t){this.sourceCaches[t].clearTiles()},r.prototype._reloadSource=function(t){this.sourceCaches[t].resume(),this.sourceCaches[t].reload()},r.prototype._updateSources=function(t){for(var e in this.sourceCaches)this.sourceCaches[e].update(t)},r.prototype._generateCollisionBoxes=function(){for(var t in this.sourceCaches)this._reloadSource(t)},r.prototype._updatePlacement=function(e,r,n,a,i){void 0===i&&(i=!1);for(var o=!1,s=!1,l={},c=0,u=this._order;c<u.length;c+=1){var h=this._layers[u[c]];if("symbol"===h.type){if(!l[h.source]){var f=this.sourceCaches[h.source];l[h.source]=f.getRenderableIds(!0).map((function(t){return f.getTileByID(t)})).sort((function(t,e){return e.tileID.overscaledZ-t.tileID.overscaledZ||(t.tileID.isLessThan(e.tileID)?-1:1)}))}var p=this.crossTileSymbolIndex.addLayer(h,l[h.source],e.center.lng);o=o||p}}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),((i=i||this._layerOrderChanged||0===n)||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(t.browser.now(),e.zoom))&&(this.pauseablePlacement=new ze(e,this._order,i,r,n,a,this.placement),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,l),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(t.browser.now()),s=!0),o&&this.pauseablePlacement.placement.setStale()),s||o)for(var d=0,g=this._order;d<g.length;d+=1){var m=this._layers[g[d]];"symbol"===m.type&&this.placement.updateLayerOpacities(m,l[m.source])}return!this.pauseablePlacement.isDone()||this.placement.hasTransitions(t.browser.now())},r.prototype._releaseSymbolFadeTiles=function(){for(var t in this.sourceCaches)this.sourceCaches[t].releaseSymbolFadeTiles()},r.prototype.getImages=function(t,e,r){this.imageManager.getImages(e.icons,r),this._updateTilesForChangedImages();var n=this.sourceCaches[e.source];n&&n.setDependencies(e.tileID.key,e.type,e.icons)},r.prototype.getGlyphs=function(t,e,r){this.glyphManager.getGlyphs(e.stacks,r)},r.prototype.getResource=function(e,r,n){return t.makeRequest(r,n)},r}(t.Evented);qe.getSourceType=function(t){return D[t]},qe.setSourceType=function(t,e){D[t]=e},qe.registerForPluginStateChange=t.registerForPluginStateChange;var He=t.createLayout([{name:"a_pos",type:"Int16",components:2}]),Ge=vr("#ifdef GL_ES\nprecision mediump float;\n#else\n#if !defined(lowp)\n#define lowp\n#endif\n#if !defined(mediump)\n#define mediump\n#endif\n#if !defined(highp)\n#define highp\n#endif\n#endif","#ifdef GL_ES\nprecision highp float;\n#else\n#if !defined(lowp)\n#define lowp\n#endif\n#if !defined(mediump)\n#define mediump\n#endif\n#if !defined(highp)\n#define highp\n#endif\n#endif\nvec2 unpack_float(const float packedValue) {int packedIntValue=int(packedValue);int v0=packedIntValue/256;return vec2(v0,packedIntValue-v0*256);}vec2 unpack_opacity(const float packedOpacity) {int intOpacity=int(packedOpacity)/2;return vec2(float(intOpacity)/127.0,mod(packedOpacity,2.0));}vec4 decode_color(const vec2 encodedColor) {return vec4(unpack_float(encodedColor[0])/255.0,unpack_float(encodedColor[1])/255.0\n);}float unpack_mix_vec2(const vec2 packedValue,const float t) {return mix(packedValue[0],packedValue[1],t);}vec4 unpack_mix_color(const vec4 packedColors,const float t) {vec4 minColor=decode_color(vec2(packedColors[0],packedColors[1]));vec4 maxColor=decode_color(vec2(packedColors[2],packedColors[3]));return mix(minColor,maxColor,t);}vec2 get_pattern_pos(const vec2 pixel_coord_upper,const vec2 pixel_coord_lower,const vec2 pattern_size,const float tile_units_to_pixels,const vec2 pos) {vec2 offset=mod(mod(mod(pixel_coord_upper,pattern_size)*256.0,pattern_size)*256.0+pixel_coord_lower,pattern_size);return (tile_units_to_pixels*pos+offset)/pattern_size;}"),Ye=vr("uniform vec4 u_color;uniform float u_opacity;void main() {gl_FragColor=u_color*u_opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}"),We=vr("uniform vec2 u_pattern_tl_a;uniform vec2 u_pattern_br_a;uniform vec2 u_pattern_tl_b;uniform vec2 u_pattern_br_b;uniform vec2 u_texsize;uniform float u_mix;uniform float u_opacity;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(u_pattern_tl_a/u_texsize,u_pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(u_pattern_tl_b/u_texsize,u_pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_mix)*u_opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_pattern_size_a;uniform vec2 u_pattern_size_b;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_scale_a;uniform float u_scale_b;uniform float u_tile_units_to_pixels;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_a*u_pattern_size_a,u_tile_units_to_pixels,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_b*u_pattern_size_b,u_tile_units_to_pixels,a_pos);}"),Ze=vr("varying vec3 v_data;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define mediump float radius\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define highp vec4 stroke_color\n#pragma mapbox: define mediump float stroke_width\n#pragma mapbox: define lowp float stroke_opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize mediump float radius\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize highp vec4 stroke_color\n#pragma mapbox: initialize mediump float stroke_width\n#pragma mapbox: initialize lowp float stroke_opacity\nvec2 extrude=v_data.xy;float extrude_length=length(extrude);lowp float antialiasblur=v_data.z;float antialiased_blur=-max(blur,antialiasblur);float opacity_t=smoothstep(0.0,antialiased_blur,extrude_length-1.0);float color_t=stroke_width < 0.01 ? 0.0 : smoothstep(antialiased_blur,0.0,extrude_length-radius/(radius+stroke_width));gl_FragColor=opacity_t*mix(color*opacity,stroke_color*stroke_opacity,color_t);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform bool u_scale_with_map;uniform bool u_pitch_with_map;uniform vec2 u_extrude_scale;uniform lowp float u_device_pixel_ratio;uniform highp float u_camera_to_center_distance;attribute vec2 a_pos;varying vec3 v_data;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define mediump float radius\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define highp vec4 stroke_color\n#pragma mapbox: define mediump float stroke_width\n#pragma mapbox: define lowp float stroke_opacity\nvoid main(void) {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize mediump float radius\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize highp vec4 stroke_color\n#pragma mapbox: initialize mediump float stroke_width\n#pragma mapbox: initialize lowp float stroke_opacity\nvec2 extrude=vec2(mod(a_pos,2.0)*2.0-1.0);vec2 circle_center=floor(a_pos*0.5);if (u_pitch_with_map) {vec2 corner_position=circle_center;if (u_scale_with_map) {corner_position+=extrude*(radius+stroke_width)*u_extrude_scale;} else {vec4 projected_center=u_matrix*vec4(circle_center,0,1);corner_position+=extrude*(radius+stroke_width)*u_extrude_scale*(projected_center.w/u_camera_to_center_distance);}gl_Position=u_matrix*vec4(corner_position,0,1);} else {gl_Position=u_matrix*vec4(circle_center,0,1);if (u_scale_with_map) {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*u_camera_to_center_distance;} else {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*gl_Position.w;}}lowp float antialiasblur=1.0/u_device_pixel_ratio/(radius+stroke_width);v_data=vec3(extrude.x,extrude.y,antialiasblur);}"),Xe=vr("void main() {gl_FragColor=vec4(1.0);}","attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}"),Je=vr("uniform highp float u_intensity;varying vec2 v_extrude;\n#pragma mapbox: define highp float weight\n#define GAUSS_COEF 0.3989422804014327\nvoid main() {\n#pragma mapbox: initialize highp float weight\nfloat d=-0.5*3.0*3.0*dot(v_extrude,v_extrude);float val=weight*u_intensity*GAUSS_COEF*exp(d);gl_FragColor=vec4(val,1.0,1.0,1.0);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform float u_extrude_scale;uniform float u_opacity;uniform float u_intensity;attribute vec2 a_pos;varying vec2 v_extrude;\n#pragma mapbox: define highp float weight\n#pragma mapbox: define mediump float radius\nconst highp float ZERO=1.0/255.0/16.0;\n#define GAUSS_COEF 0.3989422804014327\nvoid main(void) {\n#pragma mapbox: initialize highp float weight\n#pragma mapbox: initialize mediump float radius\nvec2 unscaled_extrude=vec2(mod(a_pos,2.0)*2.0-1.0);float S=sqrt(-2.0*log(ZERO/weight/u_intensity/GAUSS_COEF))/3.0;v_extrude=S*unscaled_extrude;vec2 extrude=v_extrude*radius*u_extrude_scale;vec4 pos=vec4(floor(a_pos*0.5)+extrude,0,1);gl_Position=u_matrix*pos;}"),Ke=vr("uniform sampler2D u_image;uniform sampler2D u_color_ramp;uniform float u_opacity;varying vec2 v_pos;void main() {float t=texture2D(u_image,v_pos).r;vec4 color=texture2D(u_color_ramp,vec2(t,0.5));gl_FragColor=color*u_opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(0.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_world;attribute vec2 a_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos*u_world,0,1);v_pos.x=a_pos.x;v_pos.y=1.0-a_pos.y;}"),Qe=vr("varying float v_placed;varying float v_notUsed;void main() {float alpha=0.5;gl_FragColor=vec4(1.0,0.0,0.0,1.0)*alpha;if (v_placed > 0.5) {gl_FragColor=vec4(0.0,0.0,1.0,0.5)*alpha;}if (v_notUsed > 0.5) {gl_FragColor*=.1;}}","attribute vec2 a_pos;attribute vec2 a_anchor_pos;attribute vec2 a_extrude;attribute vec2 a_placed;attribute vec2 a_shift;uniform mat4 u_matrix;uniform vec2 u_extrude_scale;uniform float u_camera_to_center_distance;varying float v_placed;varying float v_notUsed;void main() {vec4 projectedPoint=u_matrix*vec4(a_anchor_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float collision_perspective_ratio=clamp(0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);gl_Position=u_matrix*vec4(a_pos,0.0,1.0);gl_Position.xy+=(a_extrude+a_shift)*u_extrude_scale*gl_Position.w*collision_perspective_ratio;v_placed=a_placed.x;v_notUsed=a_placed.y;}"),$e=vr("varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;void main() {float alpha=0.5*min(v_perspective_ratio,1.0);float stroke_radius=0.9*max(v_perspective_ratio,1.0);float distance_to_center=length(v_extrude);float distance_to_edge=abs(distance_to_center-v_radius);float opacity_t=smoothstep(-stroke_radius,0.0,-distance_to_edge);vec4 color=mix(vec4(0.0,0.0,1.0,0.5),vec4(1.0,0.0,0.0,1.0),v_collision);gl_FragColor=color*alpha*opacity_t;}","attribute vec2 a_pos;attribute float a_radius;attribute vec2 a_flags;uniform mat4 u_matrix;uniform mat4 u_inv_matrix;uniform vec2 u_viewport_size;uniform float u_camera_to_center_distance;varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;vec3 toTilePosition(vec2 screenPos) {vec4 rayStart=u_inv_matrix*vec4(screenPos,-1.0,1.0);vec4 rayEnd =u_inv_matrix*vec4(screenPos, 1.0,1.0);rayStart.xyz/=rayStart.w;rayEnd.xyz /=rayEnd.w;highp float t=(0.0-rayStart.z)/(rayEnd.z-rayStart.z);return mix(rayStart.xyz,rayEnd.xyz,t);}void main() {vec2 quadCenterPos=a_pos;float radius=a_radius;float collision=a_flags.x;float vertexIdx=a_flags.y;vec2 quadVertexOffset=vec2(mix(-1.0,1.0,float(vertexIdx >=2.0)),mix(-1.0,1.0,float(vertexIdx >=1.0 && vertexIdx <=2.0)));vec2 quadVertexExtent=quadVertexOffset*radius;vec3 tilePos=toTilePosition(quadCenterPos);vec4 clipPos=u_matrix*vec4(tilePos,1.0);highp float camera_to_anchor_distance=clipPos.w;highp float collision_perspective_ratio=clamp(0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);float padding_factor=1.2;v_radius=radius;v_extrude=quadVertexExtent*padding_factor;v_perspective_ratio=collision_perspective_ratio;v_collision=collision;gl_Position=vec4(clipPos.xyz/clipPos.w,1.0)+vec4(quadVertexExtent*padding_factor/u_viewport_size*2.0,0.0,0.0);}"),tr=vr("uniform highp vec4 u_color;uniform sampler2D u_overlay;varying vec2 v_uv;void main() {vec4 overlay_color=texture2D(u_overlay,v_uv);gl_FragColor=mix(u_color,overlay_color,overlay_color.a);}","attribute vec2 a_pos;varying vec2 v_uv;uniform mat4 u_matrix;uniform float u_overlay_scale;void main() {v_uv=a_pos/8192.0;gl_Position=u_matrix*vec4(a_pos*u_overlay_scale,0,1);}"),er=vr("#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float opacity\ngl_FragColor=color*opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec2 a_pos;uniform mat4 u_matrix;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float opacity\ngl_Position=u_matrix*vec4(a_pos,0,1);}"),rr=vr("varying vec2 v_pos;\n#pragma mapbox: define highp vec4 outline_color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 outline_color\n#pragma mapbox: initialize lowp float opacity\nfloat dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=outline_color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec2 a_pos;uniform mat4 u_matrix;uniform vec2 u_world;varying vec2 v_pos;\n#pragma mapbox: define highp vec4 outline_color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 outline_color\n#pragma mapbox: initialize lowp float opacity\ngl_Position=u_matrix*vec4(a_pos,0,1);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}"),nr=vr("uniform vec2 u_texsize;uniform sampler2D u_image;uniform float u_fade;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);float dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=mix(color1,color2,u_fade)*alpha*opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_world;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;gl_Position=u_matrix*vec4(a_pos,0,1);vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,a_pos);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}"),ar=vr("uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_fade)*opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileZoomRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileZoomRatio,a_pos);}"),ir=vr("varying vec4 v_color;void main() {gl_FragColor=v_color;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;uniform float u_vertical_gradient;uniform lowp float u_opacity;attribute vec2 a_pos;attribute vec4 a_normal_ed;varying vec4 v_color;\n#pragma mapbox: define highp float base\n#pragma mapbox: define highp float height\n#pragma mapbox: define highp vec4 color\nvoid main() {\n#pragma mapbox: initialize highp float base\n#pragma mapbox: initialize highp float height\n#pragma mapbox: initialize highp vec4 color\nvec3 normal=a_normal_ed.xyz;base=max(0.0,base);height=max(0.0,height);float t=mod(normal.x,2.0);gl_Position=u_matrix*vec4(a_pos,t > 0.0 ? height : base,1);float colorvalue=color.r*0.2126+color.g*0.7152+color.b*0.0722;v_color=vec4(0.0,0.0,0.0,1.0);vec4 ambientlight=vec4(0.03,0.03,0.03,1.0);color+=ambientlight;float directional=clamp(dot(normal/16384.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((1.0-colorvalue+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_color.r+=clamp(color.r*directional*u_lightcolor.r,mix(0.0,0.3,1.0-u_lightcolor.r),1.0);v_color.g+=clamp(color.g*directional*u_lightcolor.g,mix(0.0,0.3,1.0-u_lightcolor.g),1.0);v_color.b+=clamp(color.b*directional*u_lightcolor.b,mix(0.0,0.3,1.0-u_lightcolor.b),1.0);v_color*=u_opacity;}"),or=vr("uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting;\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float base\n#pragma mapbox: initialize lowp float height\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);vec4 mixedColor=mix(color1,color2,u_fade);gl_FragColor=mixedColor*v_lighting;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_height_factor;uniform vec3 u_scale;uniform float u_vertical_gradient;uniform lowp float u_opacity;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;attribute vec2 a_pos;attribute vec4 a_normal_ed;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting;\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float base\n#pragma mapbox: initialize lowp float height\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec3 normal=a_normal_ed.xyz;float edgedistance=a_normal_ed.w;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;base=max(0.0,base);height=max(0.0,height);float t=mod(normal.x,2.0);float z=t > 0.0 ? height : base;gl_Position=u_matrix*vec4(a_pos,z,1);vec2 pos=normal.x==1.0 && normal.y==0.0 && normal.z==16384.0\n? a_pos\n: vec2(edgedistance,z*u_height_factor);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,pos);v_lighting=vec4(0.0,0.0,0.0,1.0);float directional=clamp(dot(normal/16383.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((0.5+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_lighting.rgb+=clamp(directional*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));v_lighting*=u_opacity;}"),sr=vr("#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_dimension;uniform float u_zoom;uniform float u_maxzoom;uniform vec4 u_unpack;float getElevation(vec2 coord,float bias) {vec4 data=texture2D(u_image,coord)*255.0;data.a=-1.0;return dot(data,u_unpack)/4.0;}void main() {vec2 epsilon=1.0/u_dimension;float a=getElevation(v_pos+vec2(-epsilon.x,-epsilon.y),0.0);float b=getElevation(v_pos+vec2(0,-epsilon.y),0.0);float c=getElevation(v_pos+vec2(epsilon.x,-epsilon.y),0.0);float d=getElevation(v_pos+vec2(-epsilon.x,0),0.0);float e=getElevation(v_pos,0.0);float f=getElevation(v_pos+vec2(epsilon.x,0),0.0);float g=getElevation(v_pos+vec2(-epsilon.x,epsilon.y),0.0);float h=getElevation(v_pos+vec2(0,epsilon.y),0.0);float i=getElevation(v_pos+vec2(epsilon.x,epsilon.y),0.0);float exaggeration=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;vec2 deriv=vec2((c+f+f+i)-(a+d+d+g),(g+h+h+i)-(a+b+b+c))/ pow(2.0,(u_zoom-u_maxzoom)*exaggeration+19.2562-u_zoom);gl_FragColor=clamp(vec4(deriv.x/2.0+0.5,deriv.y/2.0+0.5,1.0,1.0),0.0,1.0);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_dimension;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);highp vec2 epsilon=1.0/u_dimension;float scale=(u_dimension.x-2.0)/u_dimension.x;v_pos=(a_texture_pos/8192.0)*scale+epsilon;}"),lr=vr("uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_latrange;uniform vec2 u_light;uniform vec4 u_shadow;uniform vec4 u_highlight;uniform vec4 u_accent;\n#define PI 3.141592653589793\nvoid main() {vec4 pixel=texture2D(u_image,v_pos);vec2 deriv=((pixel.rg*2.0)-1.0);float scaleFactor=cos(radians((u_latrange[0]-u_latrange[1])*(1.0-v_pos.y)+u_latrange[1]));float slope=atan(1.25*length(deriv)/scaleFactor);float aspect=deriv.x !=0.0 ? atan(deriv.y,-deriv.x) : PI/2.0*(deriv.y > 0.0 ? 1.0 :-1.0);float intensity=u_light.x;float azimuth=u_light.y+PI;float base=1.875-intensity*1.75;float maxValue=0.5*PI;float scaledSlope=intensity !=0.5 ? ((pow(base,slope)-1.0)/(pow(base,maxValue)-1.0))*maxValue : slope;float accent=cos(scaledSlope);vec4 accent_color=(1.0-accent)*u_accent*clamp(intensity*2.0,0.0,1.0);float shade=abs(mod((aspect+azimuth)/PI+0.5,2.0)-1.0);vec4 shade_color=mix(u_shadow,u_highlight,shade)*sin(scaledSlope)*clamp(intensity*2.0,0.0,1.0);gl_FragColor=accent_color*(1.0-shade_color.a)+shade_color;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=a_texture_pos/8192.0;}"),cr=vr("uniform lowp float u_device_pixel_ratio;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\nfloat dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);gl_FragColor=color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","\n#define scale 0.015873016\nattribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform vec2 u_units_to_pixels;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp float v_linesofar;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float width\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;v_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*2.0;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_width2=vec2(outset,inset);}"),ur=vr("uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;varying highp float v_lineprogress;\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\nfloat dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);vec4 color=texture2D(u_image,vec2(v_lineprogress,0.5));gl_FragColor=color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","\n#define MAX_LINE_DISTANCE 32767.0\n#define scale 0.015873016\nattribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_units_to_pixels;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp float v_lineprogress;\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\nvoid main() {\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float width\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;v_lineprogress=(floor(a_data.z/4.0)+a_data.w*64.0)*2.0/MAX_LINE_DISTANCE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_width2=vec2(outset,inset);}"),hr=vr("uniform lowp float u_device_pixel_ratio;uniform vec2 u_texsize;uniform float u_fade;uniform mediump vec3 u_scale;uniform sampler2D u_image;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;vec2 pattern_size_a=vec2(display_size_a.x*fromScale/tileZoomRatio,display_size_a.y);vec2 pattern_size_b=vec2(display_size_b.x*toScale/tileZoomRatio,display_size_b.y);float aspect_a=display_size_a.y/v_width;float aspect_b=display_size_b.y/v_width;float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float x_a=mod(v_linesofar/pattern_size_a.x*aspect_a,1.0);float x_b=mod(v_linesofar/pattern_size_b.x*aspect_b,1.0);float y=0.5*v_normal.y+0.5;vec2 texel_size=1.0/u_texsize;vec2 pos_a=mix(pattern_tl_a*texel_size-texel_size,pattern_br_a*texel_size+texel_size,vec2(x_a,y));vec2 pos_b=mix(pattern_tl_b*texel_size-texel_size,pattern_br_b*texel_size+texel_size,vec2(x_b,y));vec4 color=mix(texture2D(u_image,pos_a),texture2D(u_image,pos_b),u_fade);gl_FragColor=color*alpha*opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","\n#define scale 0.015873016\n#define LINE_DISTANCE_SCALE 2.0\nattribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform vec2 u_units_to_pixels;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize mediump float width\n#pragma mapbox: initialize lowp float floorwidth\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_linesofar=a_linesofar;v_width2=vec2(outset,inset);v_width=floorwidth;}"),fr=vr("uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;uniform float u_sdfgamma;uniform float u_mix;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float width\n#pragma mapbox: initialize lowp float floorwidth\nfloat dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float sdfdist_a=texture2D(u_image,v_tex_a).a;float sdfdist_b=texture2D(u_image,v_tex_b).a;float sdfdist=mix(sdfdist_a,sdfdist_b,u_mix);alpha*=smoothstep(0.5-u_sdfgamma/floorwidth,0.5+u_sdfgamma/floorwidth,sdfdist);gl_FragColor=color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","\n#define scale 0.015873016\n#define LINE_DISTANCE_SCALE 2.0\nattribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_patternscale_a;uniform float u_tex_y_a;uniform vec2 u_patternscale_b;uniform float u_tex_y_b;uniform vec2 u_units_to_pixels;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float width\n#pragma mapbox: initialize lowp float floorwidth\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_tex_a=vec2(a_linesofar*u_patternscale_a.x/floorwidth,normal.y*u_patternscale_a.y+u_tex_y_a);v_tex_b=vec2(a_linesofar*u_patternscale_b.x/floorwidth,normal.y*u_patternscale_b.y+u_tex_y_b);v_width2=vec2(outset,inset);}"),pr=vr("uniform float u_fade_t;uniform float u_opacity;uniform sampler2D u_image0;uniform sampler2D u_image1;varying vec2 v_pos0;varying vec2 v_pos1;uniform float u_brightness_low;uniform float u_brightness_high;uniform float u_saturation_factor;uniform float u_contrast_factor;uniform vec3 u_spin_weights;void main() {vec4 color0=texture2D(u_image0,v_pos0);vec4 color1=texture2D(u_image1,v_pos1);if (color0.a > 0.0) {color0.rgb=color0.rgb/color0.a;}if (color1.a > 0.0) {color1.rgb=color1.rgb/color1.a;}vec4 color=mix(color0,color1,u_fade_t);color.a*=u_opacity;vec3 rgb=color.rgb;rgb=vec3(dot(rgb,u_spin_weights.xyz),dot(rgb,u_spin_weights.zxy),dot(rgb,u_spin_weights.yzx));float average=(color.r+color.g+color.b)/3.0;rgb+=(average-rgb)*u_saturation_factor;rgb=(rgb-0.5)*u_contrast_factor+0.5;vec3 u_high_vec=vec3(u_brightness_low,u_brightness_low,u_brightness_low);vec3 u_low_vec=vec3(u_brightness_high,u_brightness_high,u_brightness_high);gl_FragColor=vec4(mix(u_high_vec,u_low_vec,rgb)*color.a,color.a);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_tl_parent;uniform float u_scale_parent;uniform float u_buffer_scale;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos0;varying vec2 v_pos1;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos0=(((a_texture_pos/8192.0)-0.5)/u_buffer_scale )+0.5;v_pos1=(v_pos0*u_scale_parent)+u_tl_parent;}"),dr=vr("uniform sampler2D u_texture;varying vec2 v_tex;varying float v_fade_opacity;\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\nlowp float alpha=opacity*v_fade_opacity;gl_FragColor=texture2D(u_texture,v_tex)*alpha;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform highp float u_camera_to_center_distance;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform float u_fade_change;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform vec2 u_texsize;varying vec2 v_tex;varying float v_fade_opacity;\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;vec2 a_minFontScale=a_pixeloffset.zw/256.0;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_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=u_is_text ? size/24.0 : size;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*max(a_minFontScale,fontScale)+a_pxoffset/16.0),0.0,1.0);v_tex=a_tex/u_texsize;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;v_fade_opacity=max(0.0,min(1.0,fade_opacity[0]+fade_change));}"),gr=vr("#define SDF_PX 8.0\nuniform bool u_is_halo;uniform sampler2D u_texture;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;uniform bool u_is_text;varying vec2 v_data0;varying vec3 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nfloat EDGE_GAMMA=0.105/u_device_pixel_ratio;vec2 tex=v_data0.xy;float gamma_scale=v_data1.x;float size=v_data1.y;float fade_opacity=v_data1[2];float fontScale=u_is_text ? size/24.0 : size;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;varying vec2 v_data0;varying vec3 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_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=u_is_text ? size/24.0 : size;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+a_pxoffset),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=a_tex/u_texsize;v_data1=vec3(gamma_scale,size,interpolated_fade_opacity);}"),mr=vr("#define SDF_PX 8.0\n#define SDF 1.0\n#define ICON 0.0\nuniform bool u_is_halo;uniform sampler2D u_texture;uniform sampler2D u_texture_icon;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;varying vec4 v_data0;varying vec4 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nfloat fade_opacity=v_data1[2];if (v_data1.w==ICON) {vec2 tex_icon=v_data0.zw;lowp float alpha=opacity*fade_opacity;gl_FragColor=texture2D(u_texture_icon,tex_icon)*alpha;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\nreturn;}vec2 tex=v_data0.xy;float EDGE_GAMMA=0.105/u_device_pixel_ratio;float gamma_scale=v_data1.x;float size=v_data1.y;float fontScale=size/24.0;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec2 u_texsize_icon;varying vec4 v_data0;varying vec4 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);float is_sdf=a_size[0]-2.0*a_size_min;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_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);}");function vr(t,e){var r=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,n={};return{fragmentSource:t=t.replace(r,(function(t,e,r,a,i){return n[i]=!0,"define"===e?"\n#ifndef HAS_UNIFORM_u_"+i+"\nvarying "+r+" "+a+" "+i+";\n#else\nuniform "+r+" "+a+" u_"+i+";\n#endif\n":"\n#ifdef HAS_UNIFORM_u_"+i+"\n "+r+" "+a+" "+i+" = u_"+i+";\n#endif\n"})),vertexSource:e=e.replace(r,(function(t,e,r,a,i){var o="float"===a?"vec2":"vec4",s=i.match(/color/)?"color":o;return n[i]?"define"===e?"\n#ifndef HAS_UNIFORM_u_"+i+"\nuniform lowp float u_"+i+"_t;\nattribute "+r+" "+o+" a_"+i+";\nvarying "+r+" "+a+" "+i+";\n#else\nuniform "+r+" "+a+" u_"+i+";\n#endif\n":"vec4"===s?"\n#ifndef HAS_UNIFORM_u_"+i+"\n "+i+" = a_"+i+";\n#else\n "+r+" "+a+" "+i+" = u_"+i+";\n#endif\n":"\n#ifndef HAS_UNIFORM_u_"+i+"\n "+i+" = unpack_mix_"+s+"(a_"+i+", u_"+i+"_t);\n#else\n "+r+" "+a+" "+i+" = u_"+i+";\n#endif\n":"define"===e?"\n#ifndef HAS_UNIFORM_u_"+i+"\nuniform lowp float u_"+i+"_t;\nattribute "+r+" "+o+" a_"+i+";\n#else\nuniform "+r+" "+a+" u_"+i+";\n#endif\n":"vec4"===s?"\n#ifndef HAS_UNIFORM_u_"+i+"\n "+r+" "+a+" "+i+" = a_"+i+";\n#else\n "+r+" "+a+" "+i+" = u_"+i+";\n#endif\n":"\n#ifndef HAS_UNIFORM_u_"+i+"\n "+r+" "+a+" "+i+" = unpack_mix_"+s+"(a_"+i+", u_"+i+"_t);\n#else\n "+r+" "+a+" "+i+" = u_"+i+";\n#endif\n"}))}}var yr=Object.freeze({__proto__:null,prelude:Ge,background:Ye,backgroundPattern:We,circle:Ze,clippingMask:Xe,heatmap:Je,heatmapTexture:Ke,collisionBox:Qe,collisionCircle:$e,debug:tr,fill:er,fillOutline:rr,fillOutlinePattern:nr,fillPattern:ar,fillExtrusion:ir,fillExtrusionPattern:or,hillshadePrepare:sr,hillshade:lr,line:cr,lineGradient:ur,linePattern:hr,lineSDF:fr,raster:pr,symbolIcon:dr,symbolSDF:gr,symbolTextAndIcon:mr}),xr=function(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null};xr.prototype.bind=function(t,e,r,n,a,i,o,s){this.context=t;for(var l=this.boundPaintVertexBuffers.length!==n.length,c=0;!l&&c<n.length;c++)this.boundPaintVertexBuffers[c]!==n[c]&&(l=!0);t.extVertexArrayObject&&this.vao&&this.boundProgram===e&&this.boundLayoutVertexBuffer===r&&!l&&this.boundIndexBuffer===a&&this.boundVertexOffset===i&&this.boundDynamicVertexBuffer===o&&this.boundDynamicVertexBuffer2===s?(t.bindVertexArrayOES.set(this.vao),o&&o.bind(),a&&a.dynamicDraw&&a.bind(),s&&s.bind()):this.freshBind(e,r,n,a,i,o,s)},xr.prototype.freshBind=function(t,e,r,n,a,i,o){var s,l=t.numAttributes,c=this.context,u=c.gl;if(c.extVertexArrayObject)this.vao&&this.destroy(),this.vao=c.extVertexArrayObject.createVertexArrayOES(),c.bindVertexArrayOES.set(this.vao),s=0,this.boundProgram=t,this.boundLayoutVertexBuffer=e,this.boundPaintVertexBuffers=r,this.boundIndexBuffer=n,this.boundVertexOffset=a,this.boundDynamicVertexBuffer=i,this.boundDynamicVertexBuffer2=o;else{s=c.currentNumAttributes||0;for(var h=l;h<s;h++)u.disableVertexAttribArray(h)}e.enableAttributes(u,t);for(var f=0,p=r;f<p.length;f+=1)p[f].enableAttributes(u,t);i&&i.enableAttributes(u,t),o&&o.enableAttributes(u,t),e.bind(),e.setVertexAttribPointers(u,t,a);for(var d=0,g=r;d<g.length;d+=1){var m=g[d];m.bind(),m.setVertexAttribPointers(u,t,a)}i&&(i.bind(),i.setVertexAttribPointers(u,t,a)),n&&n.bind(),o&&(o.bind(),o.setVertexAttribPointers(u,t,a)),c.currentNumAttributes=l},xr.prototype.destroy=function(){this.vao&&(this.context.extVertexArrayObject.deleteVertexArrayOES(this.vao),this.vao=null)};var br=function(t,e,r,n,a){var i=t.gl;this.program=i.createProgram();var o=r?r.defines():[];a&&o.push("#define OVERDRAW_INSPECTOR;");var s=o.concat(Ge.fragmentSource,e.fragmentSource).join("\n"),l=o.concat(Ge.vertexSource,e.vertexSource).join("\n"),c=i.createShader(i.FRAGMENT_SHADER);if(i.isContextLost())this.failedToCreate=!0;else{i.shaderSource(c,s),i.compileShader(c),i.attachShader(this.program,c);var u=i.createShader(i.VERTEX_SHADER);if(i.isContextLost())this.failedToCreate=!0;else{i.shaderSource(u,l),i.compileShader(u),i.attachShader(this.program,u);for(var h=r?r.layoutAttributes:[],f=0;f<h.length;f++)i.bindAttribLocation(this.program,f,h[f].name);i.linkProgram(this.program),i.deleteShader(u),i.deleteShader(c),this.numAttributes=i.getProgramParameter(this.program,i.ACTIVE_ATTRIBUTES),this.attributes={};for(var p={},d=0;d<this.numAttributes;d++){var g=i.getActiveAttrib(this.program,d);g&&(this.attributes[g.name]=i.getAttribLocation(this.program,g.name))}for(var m=i.getProgramParameter(this.program,i.ACTIVE_UNIFORMS),v=0;v<m;v++){var y=i.getActiveUniform(this.program,v);y&&(p[y.name]=i.getUniformLocation(this.program,y.name))}this.fixedUniforms=n(t,p),this.binderUniforms=r?r.getUniforms(t,p):[]}}};function _r(t,e,r){var n=1/fe(r,1,e.transform.tileZoom),a=Math.pow(2,r.tileID.overscaledZ),i=r.tileSize*Math.pow(2,e.transform.tileZoom)/a,o=i*(r.tileID.canonical.x+r.tileID.wrap*a),s=i*r.tileID.canonical.y;return{u_image:0,u_texsize:r.imageAtlasTexture.size,u_scale:[n,t.fromScale,t.toScale],u_fade:t.t,u_pixel_coord_upper:[o>>16,s>>16],u_pixel_coord_lower:[65535&o,65535&s]}}br.prototype.draw=function(t,e,r,n,a,i,o,s,l,c,u,h,f,p,d,g){var m,v=t.gl;if(!this.failedToCreate){for(var y in t.program.set(this.program),t.setDepthMode(r),t.setStencilMode(n),t.setColorMode(a),t.setCullFace(i),this.fixedUniforms)this.fixedUniforms[y].set(o[y]);p&&p.setUniforms(t,this.binderUniforms,h,{zoom:f});for(var x=(m={},m[v.LINES]=2,m[v.TRIANGLES]=3,m[v.LINE_STRIP]=1,m)[e],b=0,_=u.get();b<_.length;b+=1){var w=_[b],T=w.vaos||(w.vaos={});(T[s]||(T[s]=new xr)).bind(t,this,l,p?p.getPaintVertexBuffers():[],c,w.vertexOffset,d,g),v.drawElements(e,w.primitiveLength*x,v.UNSIGNED_SHORT,w.primitiveOffset*x*2)}}};var wr=function(e,r,n,a){var i=r.style.light,o=i.properties.get("position"),s=[o.x,o.y,o.z],l=t.create$1();"viewport"===i.properties.get("anchor")&&t.fromRotation(l,-r.transform.angle),t.transformMat3(s,s,l);var c=i.properties.get("color");return{u_matrix:e,u_lightpos:s,u_lightintensity:i.properties.get("intensity"),u_lightcolor:[c.r,c.g,c.b],u_vertical_gradient:+n,u_opacity:a}},Tr=function(e,r,n,a,i,o,s){return t.extend(wr(e,r,n,a),_r(o,r,s),{u_height_factor:-Math.pow(2,i.overscaledZ)/s.tileSize/8})},kr=function(t){return{u_matrix:t}},Ar=function(e,r,n,a){return t.extend(kr(e),_r(n,r,a))},Mr=function(t,e){return{u_matrix:t,u_world:e}},Sr=function(e,r,n,a,i){return t.extend(Ar(e,r,n,a),{u_world:i})},Er=function(e,r,n,a){var i,o,s=e.transform;if("map"===a.paint.get("circle-pitch-alignment")){var l=fe(n,1,s.zoom);i=!0,o=[l,l]}else i=!1,o=s.pixelsToGLUnits;return{u_camera_to_center_distance:s.cameraToCenterDistance,u_scale_with_map:+("map"===a.paint.get("circle-pitch-scale")),u_matrix:e.translatePosMatrix(r.posMatrix,n,a.paint.get("circle-translate"),a.paint.get("circle-translate-anchor")),u_pitch_with_map:+i,u_device_pixel_ratio:t.browser.devicePixelRatio,u_extrude_scale:o}},Cr=function(t,e,r){var n=fe(r,1,e.zoom),a=Math.pow(2,e.zoom-r.tileID.overscaledZ),i=r.tileID.overscaleFactor();return{u_matrix:t,u_camera_to_center_distance:e.cameraToCenterDistance,u_pixels_to_tile_units:n,u_extrude_scale:[e.pixelsToGLUnits[0]/(n*a),e.pixelsToGLUnits[1]/(n*a)],u_overscale_factor:i}},Lr=function(t,e,r){return{u_matrix:t,u_inv_matrix:e,u_camera_to_center_distance:r.cameraToCenterDistance,u_viewport_size:[r.width,r.height]}},Pr=function(t,e,r){return void 0===r&&(r=1),{u_matrix:t,u_color:e,u_overlay:0,u_overlay_scale:r}},Ir=function(t){return{u_matrix:t}},zr=function(t,e,r,n){return{u_matrix:t,u_extrude_scale:fe(e,1,r),u_intensity:n}},Or=function(e,r,n){var a=e.transform;return{u_matrix:Nr(e,r,n),u_ratio:1/fe(r,1,a.zoom),u_device_pixel_ratio:t.browser.devicePixelRatio,u_units_to_pixels:[1/a.pixelsToGLUnits[0],1/a.pixelsToGLUnits[1]]}},Dr=function(e,r,n){return t.extend(Or(e,r,n),{u_image:0})},Rr=function(e,r,n,a){var i=e.transform,o=Br(r,i);return{u_matrix:Nr(e,r,n),u_texsize:r.imageAtlasTexture.size,u_ratio:1/fe(r,1,i.zoom),u_device_pixel_ratio:t.browser.devicePixelRatio,u_image:0,u_scale:[o,a.fromScale,a.toScale],u_fade:a.t,u_units_to_pixels:[1/i.pixelsToGLUnits[0],1/i.pixelsToGLUnits[1]]}},Fr=function(e,r,n,a,i){var o=e.lineAtlas,s=Br(r,e.transform),l="round"===n.layout.get("line-cap"),c=o.getDash(a.from,l),u=o.getDash(a.to,l),h=c.width*i.fromScale,f=u.width*i.toScale;return t.extend(Or(e,r,n),{u_patternscale_a:[s/h,-c.height/2],u_patternscale_b:[s/f,-u.height/2],u_sdfgamma:o.width/(256*Math.min(h,f)*t.browser.devicePixelRatio)/2,u_image:0,u_tex_y_a:c.y,u_tex_y_b:u.y,u_mix:i.t})};function Br(t,e){return 1/fe(t,1,e.tileZoom)}function Nr(t,e,r){return t.translatePosMatrix(e.tileID.posMatrix,e,r.paint.get("line-translate"),r.paint.get("line-translate-anchor"))}var jr=function(t,e,r,n,a){return{u_matrix:t,u_tl_parent:e,u_scale_parent:r,u_buffer_scale:1,u_fade_t:n.mix,u_opacity:n.opacity*a.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:a.paint.get("raster-brightness-min"),u_brightness_high:a.paint.get("raster-brightness-max"),u_saturation_factor:(o=a.paint.get("raster-saturation"),o>0?1-1/(1.001-o):-o),u_contrast_factor:(i=a.paint.get("raster-contrast"),i>0?1/(1-i):1+i),u_spin_weights:Vr(a.paint.get("raster-hue-rotate"))};var i,o};function Vr(t){t*=Math.PI/180;var e=Math.sin(t),r=Math.cos(t);return[(2*r+1)/3,(-Math.sqrt(3)*e-r+1)/3,(Math.sqrt(3)*e-r+1)/3]}var Ur,qr=function(t,e,r,n,a,i,o,s,l,c){var u=a.transform;return{u_is_size_zoom_constant:+("constant"===t||"source"===t),u_is_size_feature_constant:+("constant"===t||"camera"===t),u_size_t:e?e.uSizeT:0,u_size:e?e.uSize:0,u_camera_to_center_distance:u.cameraToCenterDistance,u_pitch:u.pitch/360*2*Math.PI,u_rotate_symbol:+r,u_aspect_ratio:u.width/u.height,u_fade_change:a.options.fadeDuration?a.symbolFadeChange:1,u_matrix:i,u_label_plane_matrix:o,u_coord_matrix:s,u_is_text:+l,u_pitch_with_map:+n,u_texsize:c,u_texture:0}},Hr=function(e,r,n,a,i,o,s,l,c,u,h){var f=i.transform;return t.extend(qr(e,r,n,a,i,o,s,l,c,u),{u_gamma_scale:a?Math.cos(f._pitch)*f.cameraToCenterDistance:1,u_device_pixel_ratio:t.browser.devicePixelRatio,u_is_halo:+h})},Gr=function(e,r,n,a,i,o,s,l,c,u){return t.extend(Hr(e,r,n,a,i,o,s,l,!0,c,!0),{u_texsize_icon:u,u_texture_icon:1})},Yr=function(t,e,r){return{u_matrix:t,u_opacity:e,u_color:r}},Wr=function(e,r,n,a,i,o){return t.extend(function(t,e,r,n){var a=r.imageManager.getPattern(t.from.toString()),i=r.imageManager.getPattern(t.to.toString()),o=r.imageManager.getPixelSize(),s=o.width,l=o.height,c=Math.pow(2,n.tileID.overscaledZ),u=n.tileSize*Math.pow(2,r.transform.tileZoom)/c,h=u*(n.tileID.canonical.x+n.tileID.wrap*c),f=u*n.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:a.tl,u_pattern_br_a:a.br,u_pattern_tl_b:i.tl,u_pattern_br_b:i.br,u_texsize:[s,l],u_mix:e.t,u_pattern_size_a:a.displaySize,u_pattern_size_b:i.displaySize,u_scale_a:e.fromScale,u_scale_b:e.toScale,u_tile_units_to_pixels:1/fe(n,1,r.transform.tileZoom),u_pixel_coord_upper:[h>>16,f>>16],u_pixel_coord_lower:[65535&h,65535&f]}}(a,o,n,i),{u_matrix:e,u_opacity:r})},Zr={fillExtrusion:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_lightpos:new t.Uniform3f(e,r.u_lightpos),u_lightintensity:new t.Uniform1f(e,r.u_lightintensity),u_lightcolor:new t.Uniform3f(e,r.u_lightcolor),u_vertical_gradient:new t.Uniform1f(e,r.u_vertical_gradient),u_opacity:new t.Uniform1f(e,r.u_opacity)}},fillExtrusionPattern:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_lightpos:new t.Uniform3f(e,r.u_lightpos),u_lightintensity:new t.Uniform1f(e,r.u_lightintensity),u_lightcolor:new t.Uniform3f(e,r.u_lightcolor),u_vertical_gradient:new t.Uniform1f(e,r.u_vertical_gradient),u_height_factor:new t.Uniform1f(e,r.u_height_factor),u_image:new t.Uniform1i(e,r.u_image),u_texsize:new t.Uniform2f(e,r.u_texsize),u_pixel_coord_upper:new t.Uniform2f(e,r.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,r.u_pixel_coord_lower),u_scale:new t.Uniform3f(e,r.u_scale),u_fade:new t.Uniform1f(e,r.u_fade),u_opacity:new t.Uniform1f(e,r.u_opacity)}},fill:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix)}},fillPattern:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_image:new t.Uniform1i(e,r.u_image),u_texsize:new t.Uniform2f(e,r.u_texsize),u_pixel_coord_upper:new t.Uniform2f(e,r.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,r.u_pixel_coord_lower),u_scale:new t.Uniform3f(e,r.u_scale),u_fade:new t.Uniform1f(e,r.u_fade)}},fillOutline:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_world:new t.Uniform2f(e,r.u_world)}},fillOutlinePattern:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_world:new t.Uniform2f(e,r.u_world),u_image:new t.Uniform1i(e,r.u_image),u_texsize:new t.Uniform2f(e,r.u_texsize),u_pixel_coord_upper:new t.Uniform2f(e,r.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,r.u_pixel_coord_lower),u_scale:new t.Uniform3f(e,r.u_scale),u_fade:new t.Uniform1f(e,r.u_fade)}},circle:function(e,r){return{u_camera_to_center_distance:new t.Uniform1f(e,r.u_camera_to_center_distance),u_scale_with_map:new t.Uniform1i(e,r.u_scale_with_map),u_pitch_with_map:new t.Uniform1i(e,r.u_pitch_with_map),u_extrude_scale:new t.Uniform2f(e,r.u_extrude_scale),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_matrix:new t.UniformMatrix4f(e,r.u_matrix)}},collisionBox:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_camera_to_center_distance:new t.Uniform1f(e,r.u_camera_to_center_distance),u_pixels_to_tile_units:new t.Uniform1f(e,r.u_pixels_to_tile_units),u_extrude_scale:new t.Uniform2f(e,r.u_extrude_scale),u_overscale_factor:new t.Uniform1f(e,r.u_overscale_factor)}},collisionCircle:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_inv_matrix:new t.UniformMatrix4f(e,r.u_inv_matrix),u_camera_to_center_distance:new t.Uniform1f(e,r.u_camera_to_center_distance),u_viewport_size:new t.Uniform2f(e,r.u_viewport_size)}},debug:function(e,r){return{u_color:new t.UniformColor(e,r.u_color),u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_overlay:new t.Uniform1i(e,r.u_overlay),u_overlay_scale:new t.Uniform1f(e,r.u_overlay_scale)}},clippingMask:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix)}},heatmap:function(e,r){return{u_extrude_scale:new t.Uniform1f(e,r.u_extrude_scale),u_intensity:new t.Uniform1f(e,r.u_intensity),u_matrix:new t.UniformMatrix4f(e,r.u_matrix)}},heatmapTexture:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_world:new t.Uniform2f(e,r.u_world),u_image:new t.Uniform1i(e,r.u_image),u_color_ramp:new t.Uniform1i(e,r.u_color_ramp),u_opacity:new t.Uniform1f(e,r.u_opacity)}},hillshade:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_image:new t.Uniform1i(e,r.u_image),u_latrange:new t.Uniform2f(e,r.u_latrange),u_light:new t.Uniform2f(e,r.u_light),u_shadow:new t.UniformColor(e,r.u_shadow),u_highlight:new t.UniformColor(e,r.u_highlight),u_accent:new t.UniformColor(e,r.u_accent)}},hillshadePrepare:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_image:new t.Uniform1i(e,r.u_image),u_dimension:new t.Uniform2f(e,r.u_dimension),u_zoom:new t.Uniform1f(e,r.u_zoom),u_maxzoom:new t.Uniform1f(e,r.u_maxzoom),u_unpack:new t.Uniform4f(e,r.u_unpack)}},line:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_ratio:new t.Uniform1f(e,r.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_units_to_pixels:new t.Uniform2f(e,r.u_units_to_pixels)}},lineGradient:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_ratio:new t.Uniform1f(e,r.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_units_to_pixels:new t.Uniform2f(e,r.u_units_to_pixels),u_image:new t.Uniform1i(e,r.u_image)}},linePattern:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_texsize:new t.Uniform2f(e,r.u_texsize),u_ratio:new t.Uniform1f(e,r.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_image:new t.Uniform1i(e,r.u_image),u_units_to_pixels:new t.Uniform2f(e,r.u_units_to_pixels),u_scale:new t.Uniform3f(e,r.u_scale),u_fade:new t.Uniform1f(e,r.u_fade)}},lineSDF:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_ratio:new t.Uniform1f(e,r.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_units_to_pixels:new t.Uniform2f(e,r.u_units_to_pixels),u_patternscale_a:new t.Uniform2f(e,r.u_patternscale_a),u_patternscale_b:new t.Uniform2f(e,r.u_patternscale_b),u_sdfgamma:new t.Uniform1f(e,r.u_sdfgamma),u_image:new t.Uniform1i(e,r.u_image),u_tex_y_a:new t.Uniform1f(e,r.u_tex_y_a),u_tex_y_b:new t.Uniform1f(e,r.u_tex_y_b),u_mix:new t.Uniform1f(e,r.u_mix)}},raster:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_tl_parent:new t.Uniform2f(e,r.u_tl_parent),u_scale_parent:new t.Uniform1f(e,r.u_scale_parent),u_buffer_scale:new t.Uniform1f(e,r.u_buffer_scale),u_fade_t:new t.Uniform1f(e,r.u_fade_t),u_opacity:new t.Uniform1f(e,r.u_opacity),u_image0:new t.Uniform1i(e,r.u_image0),u_image1:new t.Uniform1i(e,r.u_image1),u_brightness_low:new t.Uniform1f(e,r.u_brightness_low),u_brightness_high:new t.Uniform1f(e,r.u_brightness_high),u_saturation_factor:new t.Uniform1f(e,r.u_saturation_factor),u_contrast_factor:new t.Uniform1f(e,r.u_contrast_factor),u_spin_weights:new t.Uniform3f(e,r.u_spin_weights)}},symbolIcon:function(e,r){return{u_is_size_zoom_constant:new t.Uniform1i(e,r.u_is_size_zoom_constant),u_is_size_feature_constant:new t.Uniform1i(e,r.u_is_size_feature_constant),u_size_t:new t.Uniform1f(e,r.u_size_t),u_size:new t.Uniform1f(e,r.u_size),u_camera_to_center_distance:new t.Uniform1f(e,r.u_camera_to_center_distance),u_pitch:new t.Uniform1f(e,r.u_pitch),u_rotate_symbol:new t.Uniform1i(e,r.u_rotate_symbol),u_aspect_ratio:new t.Uniform1f(e,r.u_aspect_ratio),u_fade_change:new t.Uniform1f(e,r.u_fade_change),u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_label_plane_matrix:new t.UniformMatrix4f(e,r.u_label_plane_matrix),u_coord_matrix:new t.UniformMatrix4f(e,r.u_coord_matrix),u_is_text:new t.Uniform1i(e,r.u_is_text),u_pitch_with_map:new t.Uniform1i(e,r.u_pitch_with_map),u_texsize:new t.Uniform2f(e,r.u_texsize),u_texture:new t.Uniform1i(e,r.u_texture)}},symbolSDF:function(e,r){return{u_is_size_zoom_constant:new t.Uniform1i(e,r.u_is_size_zoom_constant),u_is_size_feature_constant:new t.Uniform1i(e,r.u_is_size_feature_constant),u_size_t:new t.Uniform1f(e,r.u_size_t),u_size:new t.Uniform1f(e,r.u_size),u_camera_to_center_distance:new t.Uniform1f(e,r.u_camera_to_center_distance),u_pitch:new t.Uniform1f(e,r.u_pitch),u_rotate_symbol:new t.Uniform1i(e,r.u_rotate_symbol),u_aspect_ratio:new t.Uniform1f(e,r.u_aspect_ratio),u_fade_change:new t.Uniform1f(e,r.u_fade_change),u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_label_plane_matrix:new t.UniformMatrix4f(e,r.u_label_plane_matrix),u_coord_matrix:new t.UniformMatrix4f(e,r.u_coord_matrix),u_is_text:new t.Uniform1i(e,r.u_is_text),u_pitch_with_map:new t.Uniform1i(e,r.u_pitch_with_map),u_texsize:new t.Uniform2f(e,r.u_texsize),u_texture:new t.Uniform1i(e,r.u_texture),u_gamma_scale:new t.Uniform1f(e,r.u_gamma_scale),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_is_halo:new t.Uniform1i(e,r.u_is_halo)}},symbolTextAndIcon:function(e,r){return{u_is_size_zoom_constant:new t.Uniform1i(e,r.u_is_size_zoom_constant),u_is_size_feature_constant:new t.Uniform1i(e,r.u_is_size_feature_constant),u_size_t:new t.Uniform1f(e,r.u_size_t),u_size:new t.Uniform1f(e,r.u_size),u_camera_to_center_distance:new t.Uniform1f(e,r.u_camera_to_center_distance),u_pitch:new t.Uniform1f(e,r.u_pitch),u_rotate_symbol:new t.Uniform1i(e,r.u_rotate_symbol),u_aspect_ratio:new t.Uniform1f(e,r.u_aspect_ratio),u_fade_change:new t.Uniform1f(e,r.u_fade_change),u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_label_plane_matrix:new t.UniformMatrix4f(e,r.u_label_plane_matrix),u_coord_matrix:new t.UniformMatrix4f(e,r.u_coord_matrix),u_is_text:new t.Uniform1i(e,r.u_is_text),u_pitch_with_map:new t.Uniform1i(e,r.u_pitch_with_map),u_texsize:new t.Uniform2f(e,r.u_texsize),u_texsize_icon:new t.Uniform2f(e,r.u_texsize_icon),u_texture:new t.Uniform1i(e,r.u_texture),u_texture_icon:new t.Uniform1i(e,r.u_texture_icon),u_gamma_scale:new t.Uniform1f(e,r.u_gamma_scale),u_device_pixel_ratio:new t.Uniform1f(e,r.u_device_pixel_ratio),u_is_halo:new t.Uniform1i(e,r.u_is_halo)}},background:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_opacity:new t.Uniform1f(e,r.u_opacity),u_color:new t.UniformColor(e,r.u_color)}},backgroundPattern:function(e,r){return{u_matrix:new t.UniformMatrix4f(e,r.u_matrix),u_opacity:new t.Uniform1f(e,r.u_opacity),u_image:new t.Uniform1i(e,r.u_image),u_pattern_tl_a:new t.Uniform2f(e,r.u_pattern_tl_a),u_pattern_br_a:new t.Uniform2f(e,r.u_pattern_br_a),u_pattern_tl_b:new t.Uniform2f(e,r.u_pattern_tl_b),u_pattern_br_b:new t.Uniform2f(e,r.u_pattern_br_b),u_texsize:new t.Uniform2f(e,r.u_texsize),u_mix:new t.Uniform1f(e,r.u_mix),u_pattern_size_a:new t.Uniform2f(e,r.u_pattern_size_a),u_pattern_size_b:new t.Uniform2f(e,r.u_pattern_size_b),u_scale_a:new t.Uniform1f(e,r.u_scale_a),u_scale_b:new t.Uniform1f(e,r.u_scale_b),u_pixel_coord_upper:new t.Uniform2f(e,r.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,r.u_pixel_coord_lower),u_tile_units_to_pixels:new t.Uniform1f(e,r.u_tile_units_to_pixels)}}};function Xr(e,r,n,a,i,o,s){for(var l=e.context,c=l.gl,u=e.useProgram("collisionBox"),h=[],f=0,p=0,d=0;d<a.length;d++){var g=a[d],m=r.getTile(g),v=m.getBucket(n);if(v){var y=g.posMatrix;0===i[0]&&0===i[1]||(y=e.translatePosMatrix(g.posMatrix,m,i,o));var x=s?v.textCollisionBox:v.iconCollisionBox,b=v.collisionCircleArray;if(b.length>0){var _=t.create(),w=y;t.mul(_,v.placementInvProjMatrix,e.transform.glCoordMatrix),t.mul(_,_,v.placementViewportMatrix),h.push({circleArray:b,circleOffset:p,transform:w,invTransform:_}),p=f+=b.length/4}x&&u.draw(l,c.LINES,At.disabled,Mt.disabled,e.colorModeForRenderPass(),Et.disabled,Cr(y,e.transform,m),n.id,x.layoutVertexBuffer,x.indexBuffer,x.segments,null,e.transform.zoom,null,null,x.collisionVertexBuffer)}}if(s&&h.length){var T=e.useProgram("collisionCircle"),k=new t.StructArrayLayout2f1f2i16;k.resize(4*f),k._trim();for(var A=0,M=0,S=h;M<S.length;M+=1)for(var E=S[M],C=0;C<E.circleArray.length/4;C++){var L=4*C,P=E.circleArray[L+0],I=E.circleArray[L+1],z=E.circleArray[L+2],O=E.circleArray[L+3];k.emplace(A++,P,I,z,O,0),k.emplace(A++,P,I,z,O,1),k.emplace(A++,P,I,z,O,2),k.emplace(A++,P,I,z,O,3)}(!Ur||Ur.length<2*f)&&(Ur=function(e){var r=2*e,n=new t.StructArrayLayout3ui6;n.resize(r),n._trim();for(var a=0;a<r;a++){var i=6*a;n.uint16[i+0]=4*a+0,n.uint16[i+1]=4*a+1,n.uint16[i+2]=4*a+2,n.uint16[i+3]=4*a+2,n.uint16[i+4]=4*a+3,n.uint16[i+5]=4*a+0}return n}(f));for(var D=l.createIndexBuffer(Ur,!0),R=l.createVertexBuffer(k,t.collisionCircleLayout.members,!0),F=0,B=h;F<B.length;F+=1){var N=B[F],j=Lr(N.transform,N.invTransform,e.transform);T.draw(l,c.TRIANGLES,At.disabled,Mt.disabled,e.colorModeForRenderPass(),Et.disabled,j,n.id,R,D,t.SegmentVector.simpleSegment(0,2*N.circleOffset,N.circleArray.length,N.circleArray.length/2),null,e.transform.zoom,null,null,null)}R.destroy(),D.destroy()}}var Jr=t.identity(new Float32Array(16));function Kr(e,r,n,a,i,o){var s=t.getAnchorAlignment(e),l=-(s.horizontalAlign-.5)*r,c=-(s.verticalAlign-.5)*n,u=t.evaluateVariableOffset(e,a);return new t.Point((l/i+u[0])*o,(c/i+u[1])*o)}function Qr(e,r,n,a,i,o,s,l,c,u,h){var f=e.text.placedSymbolArray,p=e.text.dynamicLayoutVertexArray,d=e.icon.dynamicLayoutVertexArray,g={};p.clear();for(var m=0;m<f.length;m++){var v=f.get(m),y=v.hidden||!v.crossTileID||e.allowVerticalPlacement&&!v.placedOrientation?null:a[v.crossTileID];if(y){var x=new t.Point(v.anchorX,v.anchorY),b=$t(x,n?l:s),_=te(o.cameraToCenterDistance,b.signedDistanceFromCamera),w=i.evaluateSizeForFeature(e.textSizeData,u,v)*_/t.ONE_EM;n&&(w*=e.tilePixelRatio/c);for(var T=Kr(y.anchor,y.width,y.height,y.textOffset,y.textBoxScale,w),k=n?$t(x.add(T),s).point:b.point.add(r?T.rotate(-o.angle):T),A=e.allowVerticalPlacement&&v.placedOrientation===t.WritingMode.vertical?Math.PI/2:0,M=0;M<v.numGlyphs;M++)t.addDynamicAttributes(p,k,A);h&&v.associatedIconIndex>=0&&(g[v.associatedIconIndex]={shiftedAnchor:k,angle:A})}else ce(v.numGlyphs,p)}if(h){d.clear();for(var S=e.icon.placedSymbolArray,E=0;E<S.length;E++){var C=S.get(E);if(C.hidden)ce(C.numGlyphs,d);else{var L=g[E];if(L)for(var P=0;P<C.numGlyphs;P++)t.addDynamicAttributes(d,L.shiftedAnchor,L.angle);else ce(C.numGlyphs,d)}}e.icon.dynamicLayoutVertexBuffer.updateData(d)}e.text.dynamicLayoutVertexBuffer.updateData(p)}function $r(t,e,r){return r.iconsInText&&e?"symbolTextAndIcon":t?"symbolSDF":"symbolIcon"}function tn(e,r,n,a,i,o,s,l,c,u,h,f){for(var p=e.context,d=p.gl,g=e.transform,m="map"===l,v="map"===c,y=m&&"point"!==n.layout.get("symbol-placement"),x=m&&!v&&!y,b=void 0!==n.layout.get("symbol-sort-key").constantOr(1),_=e.depthModeForSublayer(0,At.ReadOnly),w=n.layout.get("text-variable-anchor"),T=[],k=0,A=a;k<A.length;k+=1){var M=A[k],S=r.getTile(M),E=S.getBucket(n);if(E){var C=i?E.text:E.icon;if(C&&C.segments.get().length){var L=C.programConfigurations.get(n.id),P=i||E.sdfIcons,I=i?E.textSizeData:E.iconSizeData,z=v||0!==g.pitch,O=e.useProgram($r(P,i,E),L),D=t.evaluateSizeForZoom(I,g.zoom),R=void 0,F=[0,0],B=void 0,N=void 0,j=null,V=void 0;if(i)B=S.glyphAtlasTexture,N=d.LINEAR,R=S.glyphAtlasTexture.size,E.iconsInText&&(F=S.imageAtlasTexture.size,j=S.imageAtlasTexture,V=z||e.options.rotating||e.options.zooming||"composite"===I.kind||"camera"===I.kind?d.LINEAR:d.NEAREST);else{var U=1!==n.layout.get("icon-size").constantOr(0)||E.iconsNeedLinear;B=S.imageAtlasTexture,N=P||e.options.rotating||e.options.zooming||U||z?d.LINEAR:d.NEAREST,R=S.imageAtlasTexture.size}var q=fe(S,1,e.transform.zoom),H=Kt(M.posMatrix,v,m,e.transform,q),G=Qt(M.posMatrix,v,m,e.transform,q),Y=w&&E.hasTextData(),W="none"!==n.layout.get("icon-text-fit")&&Y&&E.hasIconData();y&&re(E,M.posMatrix,e,i,H,G,v,u);var Z=e.translatePosMatrix(M.posMatrix,S,o,s),X=y||i&&w||W?Jr:H,J=e.translatePosMatrix(G,S,o,s,!0),K=P&&0!==n.paint.get(i?"text-halo-width":"icon-halo-width").constantOr(1),Q={program:O,buffers:C,uniformValues:P?E.iconsInText?Gr(I.kind,D,x,v,e,Z,X,J,R,F):Hr(I.kind,D,x,v,e,Z,X,J,i,R,!0):qr(I.kind,D,x,v,e,Z,X,J,i,R),atlasTexture:B,atlasTextureIcon:j,atlasInterpolation:N,atlasInterpolationIcon:V,isSDF:P,hasHalo:K};if(b)for(var $=0,tt=C.segments.get();$<tt.length;$+=1){var et=tt[$];T.push({segments:new t.SegmentVector([et]),sortKey:et.sortKey,state:Q})}else T.push({segments:C.segments,sortKey:0,state:Q})}}}b&&T.sort((function(t,e){return t.sortKey-e.sortKey}));for(var rt=0,nt=T;rt<nt.length;rt+=1){var at=nt[rt],it=at.state;if(p.activeTexture.set(d.TEXTURE0),it.atlasTexture.bind(it.atlasInterpolation,d.CLAMP_TO_EDGE),it.atlasTextureIcon&&(p.activeTexture.set(d.TEXTURE1),it.atlasTextureIcon&&it.atlasTextureIcon.bind(it.atlasInterpolationIcon,d.CLAMP_TO_EDGE)),it.isSDF){var ot=it.uniformValues;it.hasHalo&&(ot.u_is_halo=1,en(it.buffers,at.segments,n,e,it.program,_,h,f,ot)),ot.u_is_halo=0}en(it.buffers,at.segments,n,e,it.program,_,h,f,it.uniformValues)}}function en(t,e,r,n,a,i,o,s,l){var c=n.context;a.draw(c,c.gl.TRIANGLES,i,o,s,Et.disabled,l,r.id,t.layoutVertexBuffer,t.indexBuffer,e,r.paint,n.transform.zoom,t.programConfigurations.get(r.id),t.dynamicLayoutVertexBuffer,t.opacityVertexBuffer)}function rn(t,e,r,n,a,i,o){var s,l,c,u,h,f=t.context.gl,p=r.paint.get("fill-pattern"),d=p&&p.constantOr(1),g=r.getCrossfadeParameters();o?(l=d&&!r.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",s=f.LINES):(l=d?"fillPattern":"fill",s=f.TRIANGLES);for(var m=0,v=n;m<v.length;m+=1){var y=v[m],x=e.getTile(y);if(!d||x.patternsLoaded()){var b=x.getBucket(r);if(b){var _=b.programConfigurations.get(r.id),w=t.useProgram(l,_);d&&(t.context.activeTexture.set(f.TEXTURE0),x.imageAtlasTexture.bind(f.LINEAR,f.CLAMP_TO_EDGE),_.updatePaintBuffers(g));var T=p.constantOr(null);if(T&&x.imageAtlas){var k=x.imageAtlas,A=k.patternPositions[T.to.toString()],M=k.patternPositions[T.from.toString()];A&&M&&_.setConstantPatternPositions(A,M)}var S=t.translatePosMatrix(y.posMatrix,x,r.paint.get("fill-translate"),r.paint.get("fill-translate-anchor"));if(o){u=b.indexBuffer2,h=b.segments2;var E=[f.drawingBufferWidth,f.drawingBufferHeight];c="fillOutlinePattern"===l&&d?Sr(S,t,g,x,E):Mr(S,E)}else u=b.indexBuffer,h=b.segments,c=d?Ar(S,t,g,x):kr(S);w.draw(t.context,s,a,t.stencilModeForClipping(y),i,Et.disabled,c,r.id,b.layoutVertexBuffer,u,h,r.paint,t.transform.zoom,_)}}}}function nn(t,e,r,n,a,i,o){for(var s=t.context,l=s.gl,c=r.paint.get("fill-extrusion-pattern"),u=c.constantOr(1),h=r.getCrossfadeParameters(),f=r.paint.get("fill-extrusion-opacity"),p=0,d=n;p<d.length;p+=1){var g=d[p],m=e.getTile(g),v=m.getBucket(r);if(v){var y=v.programConfigurations.get(r.id),x=t.useProgram(u?"fillExtrusionPattern":"fillExtrusion",y);u&&(t.context.activeTexture.set(l.TEXTURE0),m.imageAtlasTexture.bind(l.LINEAR,l.CLAMP_TO_EDGE),y.updatePaintBuffers(h));var b=c.constantOr(null);if(b&&m.imageAtlas){var _=m.imageAtlas,w=_.patternPositions[b.to.toString()],T=_.patternPositions[b.from.toString()];w&&T&&y.setConstantPatternPositions(w,T)}var k=t.translatePosMatrix(g.posMatrix,m,r.paint.get("fill-extrusion-translate"),r.paint.get("fill-extrusion-translate-anchor")),A=r.paint.get("fill-extrusion-vertical-gradient"),M=u?Tr(k,t,A,f,g,h,m):wr(k,t,A,f);x.draw(s,s.gl.TRIANGLES,a,i,o,Et.backCCW,M,r.id,v.layoutVertexBuffer,v.indexBuffer,v.segments,r.paint,t.transform.zoom,y)}}}function an(e,r,n,a,i,o){var s=e.context,l=s.gl,c=r.fbo;if(c){var u=e.useProgram("hillshade");s.activeTexture.set(l.TEXTURE0),l.bindTexture(l.TEXTURE_2D,c.colorAttachment.get());var h=function(e,r,n){var a=n.paint.get("hillshade-shadow-color"),i=n.paint.get("hillshade-highlight-color"),o=n.paint.get("hillshade-accent-color"),s=n.paint.get("hillshade-illumination-direction")*(Math.PI/180);"viewport"===n.paint.get("hillshade-illumination-anchor")&&(s-=e.transform.angle);var l,c,u,h=!e.options.moving;return{u_matrix:e.transform.calculatePosMatrix(r.tileID.toUnwrapped(),h),u_image:0,u_latrange:(l=r.tileID,c=Math.pow(2,l.canonical.z),u=l.canonical.y,[new t.MercatorCoordinate(0,u/c).toLngLat().lat,new t.MercatorCoordinate(0,(u+1)/c).toLngLat().lat]),u_light:[n.paint.get("hillshade-exaggeration"),s],u_shadow:a,u_highlight:i,u_accent:o}}(e,r,n);u.draw(s,l.TRIANGLES,a,i,o,Et.disabled,h,n.id,e.rasterBoundsBuffer,e.quadTriangleIndexBuffer,e.rasterBoundsSegments)}}function on(e,r,n,a,i,o,s){var l=e.context,c=l.gl,u=r.dem;if(u&&u.data){var h=u.dim,f=u.stride,p=u.getPixels();if(l.activeTexture.set(c.TEXTURE1),l.pixelStoreUnpackPremultiplyAlpha.set(!1),r.demTexture=r.demTexture||e.getTileTexture(f),r.demTexture){var d=r.demTexture;d.update(p,{premultiply:!1}),d.bind(c.NEAREST,c.CLAMP_TO_EDGE)}else r.demTexture=new t.Texture(l,p,c.RGBA,{premultiply:!1}),r.demTexture.bind(c.NEAREST,c.CLAMP_TO_EDGE);l.activeTexture.set(c.TEXTURE0);var g=r.fbo;if(!g){var m=new t.Texture(l,{width:h,height:h,data:null},c.RGBA);m.bind(c.LINEAR,c.CLAMP_TO_EDGE),(g=r.fbo=l.createFramebuffer(h,h,!0)).colorAttachment.set(m.texture)}l.bindFramebuffer.set(g.framebuffer),l.viewport.set([0,0,h,h]),e.useProgram("hillshadePrepare").draw(l,c.TRIANGLES,i,o,s,Et.disabled,function(e,r,n){var a=r.stride,i=t.create();return t.ortho(i,0,t.EXTENT,-t.EXTENT,0,0,1),t.translate(i,i,[0,-t.EXTENT,0]),{u_matrix:i,u_image:1,u_dimension:[a,a],u_zoom:e.overscaledZ,u_maxzoom:n,u_unpack:r.getUnpackVector()}}(r.tileID,u,a),n.id,e.rasterBoundsBuffer,e.quadTriangleIndexBuffer,e.rasterBoundsSegments),r.needsHillshadePrepare=!1}}function sn(e,r,n,a,i){var o=a.paint.get("raster-fade-duration");if(o>0){var s=t.browser.now(),l=(s-e.timeAdded)/o,c=r?(s-r.timeAdded)/o:-1,u=n.getSource(),h=i.coveringZoomLevel({tileSize:u.tileSize,roundZoom:u.roundZoom}),f=!r||Math.abs(r.tileID.overscaledZ-h)>Math.abs(e.tileID.overscaledZ-h),p=f&&e.refreshedUponExpiration?1:t.clamp(f?l:1-c,0,1);return e.refreshedUponExpiration&&l>=1&&(e.refreshedUponExpiration=!1),r?{opacity:1,mix:1-p}:{opacity:p,mix:0}}return{opacity:1,mix:0}}var ln=new t.Color(1,0,0,1),cn=new t.Color(0,1,0,1),un=new t.Color(0,0,1,1),hn=new t.Color(1,0,1,1),fn=new t.Color(0,1,1,1);function pn(t,e,r,n){gn(t,0,e+r/2,t.transform.width,r,n)}function dn(t,e,r,n){gn(t,e-r/2,0,r,t.transform.height,n)}function gn(e,r,n,a,i,o){var s=e.context,l=s.gl;l.enable(l.SCISSOR_TEST),l.scissor(r*t.browser.devicePixelRatio,n*t.browser.devicePixelRatio,a*t.browser.devicePixelRatio,i*t.browser.devicePixelRatio),s.clear({color:o}),l.disable(l.SCISSOR_TEST)}function mn(e,r,n){var a=e.context,i=a.gl,o=n.posMatrix,s=e.useProgram("debug"),l=At.disabled,c=Mt.disabled,u=e.colorModeForRenderPass();a.activeTexture.set(i.TEXTURE0),e.emptyTexture.bind(i.LINEAR,i.CLAMP_TO_EDGE),s.draw(a,i.LINE_STRIP,l,c,u,Et.disabled,Pr(o,t.Color.red),"$debug",e.debugBuffer,e.tileBorderIndexBuffer,e.debugSegments);var h=r.getTileByID(n.key).latestRawTileData,f=Math.floor((h&&h.byteLength||0)/1024),p=r.getTile(n).tileSize,d=512/Math.min(p,512)*(n.overscaledZ/e.transform.zoom)*.5,g=n.canonical.toString();n.overscaledZ!==n.canonical.z&&(g+=" => "+n.overscaledZ),function(t,e){t.initDebugOverlayCanvas();var r=t.debugOverlayCanvas,n=t.context.gl,a=t.debugOverlayCanvas.getContext("2d");a.clearRect(0,0,r.width,r.height),a.shadowColor="white",a.shadowBlur=2,a.lineWidth=1.5,a.strokeStyle="white",a.textBaseline="top",a.font="bold 36px Open Sans, sans-serif",a.fillText(e,5,5),a.strokeText(e,5,5),t.debugOverlayTexture.update(r),t.debugOverlayTexture.bind(n.LINEAR,n.CLAMP_TO_EDGE)}(e,g+" "+f+"kb"),s.draw(a,i.TRIANGLES,l,c,St.alphaBlended,Et.disabled,Pr(o,t.Color.transparent,d),"$debug",e.debugBuffer,e.quadTriangleIndexBuffer,e.debugSegments)}var vn={symbol:function(e,r,n,a,i){if("translucent"===e.renderPass){var o=Mt.disabled,s=e.colorModeForRenderPass();n.layout.get("text-variable-anchor")&&function(e,r,n,a,i,o,s){for(var l=r.transform,c="map"===i,u="map"===o,h=0,f=e;h<f.length;h+=1){var p=f[h],d=a.getTile(p),g=d.getBucket(n);if(g&&g.text&&g.text.segments.get().length){var m=t.evaluateSizeForZoom(g.textSizeData,l.zoom),v=fe(d,1,r.transform.zoom),y=Kt(p.posMatrix,u,c,r.transform,v),x="none"!==n.layout.get("icon-text-fit")&&g.hasIconData();if(m){var b=Math.pow(2,l.zoom-d.tileID.overscaledZ);Qr(g,c,u,s,t.symbolSize,l,y,p.posMatrix,b,m,x)}}}}(a,e,n,r,n.layout.get("text-rotation-alignment"),n.layout.get("text-pitch-alignment"),i),0!==n.paint.get("icon-opacity").constantOr(1)&&tn(e,r,n,a,!1,n.paint.get("icon-translate"),n.paint.get("icon-translate-anchor"),n.layout.get("icon-rotation-alignment"),n.layout.get("icon-pitch-alignment"),n.layout.get("icon-keep-upright"),o,s),0!==n.paint.get("text-opacity").constantOr(1)&&tn(e,r,n,a,!0,n.paint.get("text-translate"),n.paint.get("text-translate-anchor"),n.layout.get("text-rotation-alignment"),n.layout.get("text-pitch-alignment"),n.layout.get("text-keep-upright"),o,s),r.map.showCollisionBoxes&&(Xr(e,r,n,a,n.paint.get("text-translate"),n.paint.get("text-translate-anchor"),!0),Xr(e,r,n,a,n.paint.get("icon-translate"),n.paint.get("icon-translate-anchor"),!1))}},circle:function(e,r,n,a){if("translucent"===e.renderPass){var i=n.paint.get("circle-opacity"),o=n.paint.get("circle-stroke-width"),s=n.paint.get("circle-stroke-opacity"),l=void 0!==n.layout.get("circle-sort-key").constantOr(1);if(0!==i.constantOr(1)||0!==o.constantOr(1)&&0!==s.constantOr(1)){for(var c=e.context,u=c.gl,h=e.depthModeForSublayer(0,At.ReadOnly),f=Mt.disabled,p=e.colorModeForRenderPass(),d=[],g=0;g<a.length;g++){var m=a[g],v=r.getTile(m),y=v.getBucket(n);if(y){var x=y.programConfigurations.get(n.id),b={programConfiguration:x,program:e.useProgram("circle",x),layoutVertexBuffer:y.layoutVertexBuffer,indexBuffer:y.indexBuffer,uniformValues:Er(e,m,v,n)};if(l)for(var _=0,w=y.segments.get();_<w.length;_+=1){var T=w[_];d.push({segments:new t.SegmentVector([T]),sortKey:T.sortKey,state:b})}else d.push({segments:y.segments,sortKey:0,state:b})}}l&&d.sort((function(t,e){return t.sortKey-e.sortKey}));for(var k=0,A=d;k<A.length;k+=1){var M=A[k],S=M.state;S.program.draw(c,u.TRIANGLES,h,f,p,Et.disabled,S.uniformValues,n.id,S.layoutVertexBuffer,S.indexBuffer,M.segments,n.paint,e.transform.zoom,S.programConfiguration)}}}},heatmap:function(e,r,n,a){if(0!==n.paint.get("heatmap-opacity"))if("offscreen"===e.renderPass){var i=e.context,o=i.gl,s=Mt.disabled,l=new St([o.ONE,o.ONE],t.Color.transparent,[!0,!0,!0,!0]);!function(t,e,r){var n=t.gl;t.activeTexture.set(n.TEXTURE1),t.viewport.set([0,0,e.width/4,e.height/4]);var a=r.heatmapFbo;if(a)n.bindTexture(n.TEXTURE_2D,a.colorAttachment.get()),t.bindFramebuffer.set(a.framebuffer);else{var i=n.createTexture();n.bindTexture(n.TEXTURE_2D,i),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MIN_FILTER,n.LINEAR),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MAG_FILTER,n.LINEAR),a=r.heatmapFbo=t.createFramebuffer(e.width/4,e.height/4,!1),function(t,e,r,n){var a=t.gl;a.texImage2D(a.TEXTURE_2D,0,a.RGBA,e.width/4,e.height/4,0,a.RGBA,t.extRenderToTextureHalfFloat?t.extTextureHalfFloat.HALF_FLOAT_OES:a.UNSIGNED_BYTE,null),n.colorAttachment.set(r)}(t,e,i,a)}}(i,e,n),i.clear({color:t.Color.transparent});for(var c=0;c<a.length;c++){var u=a[c];if(!r.hasRenderableParent(u)){var h=r.getTile(u),f=h.getBucket(n);if(f){var p=f.programConfigurations.get(n.id);e.useProgram("heatmap",p).draw(i,o.TRIANGLES,At.disabled,s,l,Et.disabled,zr(u.posMatrix,h,e.transform.zoom,n.paint.get("heatmap-intensity")),n.id,f.layoutVertexBuffer,f.indexBuffer,f.segments,n.paint,e.transform.zoom,p)}}}i.viewport.set([0,0,e.width,e.height])}else"translucent"===e.renderPass&&(e.context.setColorMode(e.colorModeForRenderPass()),function(e,r){var n=e.context,a=n.gl,i=r.heatmapFbo;if(i){n.activeTexture.set(a.TEXTURE0),a.bindTexture(a.TEXTURE_2D,i.colorAttachment.get()),n.activeTexture.set(a.TEXTURE1);var o=r.colorRampTexture;o||(o=r.colorRampTexture=new t.Texture(n,r.colorRamp,a.RGBA)),o.bind(a.LINEAR,a.CLAMP_TO_EDGE),e.useProgram("heatmapTexture").draw(n,a.TRIANGLES,At.disabled,Mt.disabled,e.colorModeForRenderPass(),Et.disabled,function(e,r,n,a){var i=t.create();t.ortho(i,0,e.width,e.height,0,0,1);var o=e.context.gl;return{u_matrix:i,u_world:[o.drawingBufferWidth,o.drawingBufferHeight],u_image:0,u_color_ramp:1,u_opacity:r.paint.get("heatmap-opacity")}}(e,r),r.id,e.viewportBuffer,e.quadTriangleIndexBuffer,e.viewportSegments,r.paint,e.transform.zoom)}}(e,n))},line:function(e,r,n,a){if("translucent"===e.renderPass){var i=n.paint.get("line-opacity"),o=n.paint.get("line-width");if(0!==i.constantOr(1)&&0!==o.constantOr(1)){var s=e.depthModeForSublayer(0,At.ReadOnly),l=e.colorModeForRenderPass(),c=n.paint.get("line-dasharray"),u=n.paint.get("line-pattern"),h=u.constantOr(1),f=n.paint.get("line-gradient"),p=n.getCrossfadeParameters(),d=h?"linePattern":c?"lineSDF":f?"lineGradient":"line",g=e.context,m=g.gl,v=!0;if(f){g.activeTexture.set(m.TEXTURE0);var y=n.gradientTexture;if(!n.gradient)return;y||(y=n.gradientTexture=new t.Texture(g,n.gradient,m.RGBA)),y.bind(m.LINEAR,m.CLAMP_TO_EDGE)}for(var x=0,b=a;x<b.length;x+=1){var _=b[x],w=r.getTile(_);if(!h||w.patternsLoaded()){var T=w.getBucket(n);if(T){var k=T.programConfigurations.get(n.id),A=e.context.program.get(),M=e.useProgram(d,k),S=v||M.program!==A,E=u.constantOr(null);if(E&&w.imageAtlas){var C=w.imageAtlas,L=C.patternPositions[E.to.toString()],P=C.patternPositions[E.from.toString()];L&&P&&k.setConstantPatternPositions(L,P)}var I=h?Rr(e,w,n,p):c?Fr(e,w,n,c,p):f?Dr(e,w,n):Or(e,w,n);h?(g.activeTexture.set(m.TEXTURE0),w.imageAtlasTexture.bind(m.LINEAR,m.CLAMP_TO_EDGE),k.updatePaintBuffers(p)):c&&(S||e.lineAtlas.dirty)&&(g.activeTexture.set(m.TEXTURE0),e.lineAtlas.bind(g)),M.draw(g,m.TRIANGLES,s,e.stencilModeForClipping(_),l,Et.disabled,I,n.id,T.layoutVertexBuffer,T.indexBuffer,T.segments,n.paint,e.transform.zoom,k),v=!1}}}}}},fill:function(e,r,n,a){var i=n.paint.get("fill-color"),o=n.paint.get("fill-opacity");if(0!==o.constantOr(1)){var s=e.colorModeForRenderPass(),l=n.paint.get("fill-pattern"),c=e.opaquePassEnabledForLayer()&&!l.constantOr(1)&&1===i.constantOr(t.Color.transparent).a&&1===o.constantOr(0)?"opaque":"translucent";if(e.renderPass===c){var u=e.depthModeForSublayer(1,"opaque"===e.renderPass?At.ReadWrite:At.ReadOnly);rn(e,r,n,a,u,s,!1)}if("translucent"===e.renderPass&&n.paint.get("fill-antialias")){var h=e.depthModeForSublayer(n.getPaintProperty("fill-outline-color")?2:0,At.ReadOnly);rn(e,r,n,a,h,s,!0)}}},"fill-extrusion":function(t,e,r,n){var a=r.paint.get("fill-extrusion-opacity");if(0!==a&&"translucent"===t.renderPass){var i=new At(t.context.gl.LEQUAL,At.ReadWrite,t.depthRangeFor3D);if(1!==a||r.paint.get("fill-extrusion-pattern").constantOr(1))nn(t,e,r,n,i,Mt.disabled,St.disabled),nn(t,e,r,n,i,t.stencilModeFor3D(),t.colorModeForRenderPass());else{var o=t.colorModeForRenderPass();nn(t,e,r,n,i,Mt.disabled,o)}}},hillshade:function(t,e,r,n){if("offscreen"===t.renderPass||"translucent"===t.renderPass){for(var a=t.context,i=e.getSource().maxzoom,o=t.depthModeForSublayer(0,At.ReadOnly),s=t.colorModeForRenderPass(),l="translucent"===t.renderPass?t.stencilConfigForOverlap(n):[{},n],c=l[0],u=0,h=l[1];u<h.length;u+=1){var f=h[u],p=e.getTile(f);p.needsHillshadePrepare&&"offscreen"===t.renderPass?on(t,p,r,i,o,Mt.disabled,s):"translucent"===t.renderPass&&an(t,p,r,o,c[f.overscaledZ],s)}a.viewport.set([0,0,t.width,t.height])}},raster:function(t,e,r,n){if("translucent"===t.renderPass&&0!==r.paint.get("raster-opacity")&&n.length)for(var a=t.context,i=a.gl,o=e.getSource(),s=t.useProgram("raster"),l=t.colorModeForRenderPass(),c=o instanceof I?[{},n]:t.stencilConfigForOverlap(n),u=c[0],h=c[1],f=h[h.length-1].overscaledZ,p=!t.options.moving,d=0,g=h;d<g.length;d+=1){var m=g[d],v=t.depthModeForSublayer(m.overscaledZ-f,1===r.paint.get("raster-opacity")?At.ReadWrite:At.ReadOnly,i.LESS),y=e.getTile(m),x=t.transform.calculatePosMatrix(m.toUnwrapped(),p);y.registerFadeDuration(r.paint.get("raster-fade-duration"));var b=e.findLoadedParent(m,0),_=sn(y,b,e,r,t.transform),w=void 0,T=void 0,k="nearest"===r.paint.get("raster-resampling")?i.NEAREST:i.LINEAR;a.activeTexture.set(i.TEXTURE0),y.texture.bind(k,i.CLAMP_TO_EDGE,i.LINEAR_MIPMAP_NEAREST),a.activeTexture.set(i.TEXTURE1),b?(b.texture.bind(k,i.CLAMP_TO_EDGE,i.LINEAR_MIPMAP_NEAREST),w=Math.pow(2,b.tileID.overscaledZ-y.tileID.overscaledZ),T=[y.tileID.canonical.x*w%1,y.tileID.canonical.y*w%1]):y.texture.bind(k,i.CLAMP_TO_EDGE,i.LINEAR_MIPMAP_NEAREST);var A=jr(x,T||[0,0],w||1,_,r);o instanceof I?s.draw(a,i.TRIANGLES,v,Mt.disabled,l,Et.disabled,A,r.id,o.boundsBuffer,t.quadTriangleIndexBuffer,o.boundsSegments):s.draw(a,i.TRIANGLES,v,u[m.overscaledZ],l,Et.disabled,A,r.id,t.rasterBoundsBuffer,t.quadTriangleIndexBuffer,t.rasterBoundsSegments)}},background:function(t,e,r){var n=r.paint.get("background-color"),a=r.paint.get("background-opacity");if(0!==a){var i=t.context,o=i.gl,s=t.transform,l=s.tileSize,c=r.paint.get("background-pattern");if(!t.isPatternMissing(c)){var u=!c&&1===n.a&&1===a&&t.opaquePassEnabledForLayer()?"opaque":"translucent";if(t.renderPass===u){var h=Mt.disabled,f=t.depthModeForSublayer(0,"opaque"===u?At.ReadWrite:At.ReadOnly),p=t.colorModeForRenderPass(),d=t.useProgram(c?"backgroundPattern":"background"),g=s.coveringTiles({tileSize:l});c&&(i.activeTexture.set(o.TEXTURE0),t.imageManager.bind(t.context));for(var m=r.getCrossfadeParameters(),v=0,y=g;v<y.length;v+=1){var x=y[v],b=t.transform.calculatePosMatrix(x.toUnwrapped()),_=c?Wr(b,a,t,c,{tileID:x,tileSize:l},m):Yr(b,a,n);d.draw(i,o.TRIANGLES,f,h,p,Et.disabled,_,r.id,t.tileExtentBuffer,t.quadTriangleIndexBuffer,t.tileExtentSegments)}}}}},debug:function(t,e,r){for(var n=0;n<r.length;n++)mn(t,e,r[n])},custom:function(t,e,r){var n=t.context,a=r.implementation;if("offscreen"===t.renderPass){var i=a.prerender;i&&(t.setCustomLayerDefaults(),n.setColorMode(t.colorModeForRenderPass()),i.call(a,n.gl,t.transform.customLayerMatrix()),n.setDirty(),t.setBaseState())}else if("translucent"===t.renderPass){t.setCustomLayerDefaults(),n.setColorMode(t.colorModeForRenderPass()),n.setStencilMode(Mt.disabled);var o="3d"===a.renderingMode?new At(t.context.gl.LEQUAL,At.ReadWrite,t.depthRangeFor3D):t.depthModeForSublayer(0,At.ReadOnly);n.setDepthMode(o),a.render(n.gl,t.transform.customLayerMatrix()),n.setDirty(),t.setBaseState(),n.bindFramebuffer.set(null)}}},yn=function(t,e){this.context=new Ct(t),this.transform=e,this._tileTextures={},this.setup(),this.numSublayers=Lt.maxUnderzooming+Lt.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new Be,this.gpuTimers={}};yn.prototype.resize=function(e,r){if(this.width=e*t.browser.devicePixelRatio,this.height=r*t.browser.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(var n=0,a=this.style._order;n<a.length;n+=1)this.style._layers[a[n]].resize()},yn.prototype.setup=function(){var e=this.context,r=new t.StructArrayLayout2i4;r.emplaceBack(0,0),r.emplaceBack(t.EXTENT,0),r.emplaceBack(0,t.EXTENT),r.emplaceBack(t.EXTENT,t.EXTENT),this.tileExtentBuffer=e.createVertexBuffer(r,He.members),this.tileExtentSegments=t.SegmentVector.simpleSegment(0,0,4,2);var n=new t.StructArrayLayout2i4;n.emplaceBack(0,0),n.emplaceBack(t.EXTENT,0),n.emplaceBack(0,t.EXTENT),n.emplaceBack(t.EXTENT,t.EXTENT),this.debugBuffer=e.createVertexBuffer(n,He.members),this.debugSegments=t.SegmentVector.simpleSegment(0,0,4,5);var a=new t.StructArrayLayout4i8;a.emplaceBack(0,0,0,0),a.emplaceBack(t.EXTENT,0,t.EXTENT,0),a.emplaceBack(0,t.EXTENT,0,t.EXTENT),a.emplaceBack(t.EXTENT,t.EXTENT,t.EXTENT,t.EXTENT),this.rasterBoundsBuffer=e.createVertexBuffer(a,P.members),this.rasterBoundsSegments=t.SegmentVector.simpleSegment(0,0,4,2);var i=new t.StructArrayLayout2i4;i.emplaceBack(0,0),i.emplaceBack(1,0),i.emplaceBack(0,1),i.emplaceBack(1,1),this.viewportBuffer=e.createVertexBuffer(i,He.members),this.viewportSegments=t.SegmentVector.simpleSegment(0,0,4,2);var o=new t.StructArrayLayout1ui2;o.emplaceBack(0),o.emplaceBack(1),o.emplaceBack(3),o.emplaceBack(2),o.emplaceBack(0),this.tileBorderIndexBuffer=e.createIndexBuffer(o);var s=new t.StructArrayLayout3ui6;s.emplaceBack(0,1,2),s.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=e.createIndexBuffer(s),this.emptyTexture=new t.Texture(e,{width:1,height:1,data:new Uint8Array([0,0,0,0])},e.gl.RGBA);var l=this.context.gl;this.stencilClearMode=new Mt({func:l.ALWAYS,mask:0},0,255,l.ZERO,l.ZERO,l.ZERO)},yn.prototype.clearStencil=function(){var e=this.context,r=e.gl;this.nextStencilID=1,this.currentStencilSource=void 0;var n=t.create();t.ortho(n,0,this.width,this.height,0,0,1),t.scale(n,n,[r.drawingBufferWidth,r.drawingBufferHeight,0]),this.useProgram("clippingMask").draw(e,r.TRIANGLES,At.disabled,this.stencilClearMode,St.disabled,Et.disabled,Ir(n),"$clipping",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)},yn.prototype._renderTileClippingMasks=function(t,e){if(this.currentStencilSource!==t.source&&t.isTileClipped()&&e&&e.length){this.currentStencilSource=t.source;var r=this.context,n=r.gl;this.nextStencilID+e.length>256&&this.clearStencil(),r.setColorMode(St.disabled),r.setDepthMode(At.disabled);var a=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(var i=0,o=e;i<o.length;i+=1){var s=o[i],l=this._tileClippingMaskIDs[s.key]=this.nextStencilID++;a.draw(r,n.TRIANGLES,At.disabled,new Mt({func:n.ALWAYS,mask:0},l,255,n.KEEP,n.KEEP,n.REPLACE),St.disabled,Et.disabled,Ir(s.posMatrix),"$clipping",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments)}}},yn.prototype.stencilModeFor3D=function(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();var t=this.nextStencilID++,e=this.context.gl;return new Mt({func:e.NOTEQUAL,mask:255},t,255,e.KEEP,e.KEEP,e.REPLACE)},yn.prototype.stencilModeForClipping=function(t){var e=this.context.gl;return new Mt({func:e.EQUAL,mask:255},this._tileClippingMaskIDs[t.key],0,e.KEEP,e.KEEP,e.REPLACE)},yn.prototype.stencilConfigForOverlap=function(t){var e,r=this.context.gl,n=t.sort((function(t,e){return e.overscaledZ-t.overscaledZ})),a=n[n.length-1].overscaledZ,i=n[0].overscaledZ-a+1;if(i>1){this.currentStencilSource=void 0,this.nextStencilID+i>256&&this.clearStencil();for(var o={},s=0;s<i;s++)o[s+a]=new Mt({func:r.GEQUAL,mask:255},s+this.nextStencilID,255,r.KEEP,r.KEEP,r.REPLACE);return this.nextStencilID+=i,[o,n]}return[(e={},e[a]=Mt.disabled,e),n]},yn.prototype.colorModeForRenderPass=function(){var e=this.context.gl;return this._showOverdrawInspector?new St([e.CONSTANT_COLOR,e.ONE],new t.Color(1/8,1/8,1/8,0),[!0,!0,!0,!0]):"opaque"===this.renderPass?St.unblended:St.alphaBlended},yn.prototype.depthModeForSublayer=function(t,e,r){if(!this.opaquePassEnabledForLayer())return At.disabled;var n=1-((1+this.currentLayer)*this.numSublayers+t)*this.depthEpsilon;return new At(r||this.context.gl.LEQUAL,e,[n,n])},yn.prototype.opaquePassEnabledForLayer=function(){return this.currentLayer<this.opaquePassCutoff},yn.prototype.render=function(e,r){var n=this;this.style=e,this.options=r,this.lineAtlas=e.lineAtlas,this.imageManager=e.imageManager,this.glyphManager=e.glyphManager,this.symbolFadeChange=e.placement.symbolFadeChange(t.browser.now()),this.imageManager.beginFrame();var a=this.style._order,i=this.style.sourceCaches;for(var o in i){var s=i[o];s.used&&s.prepare(this.context)}var l,c,u={},h={},f={};for(var p in i){var d=i[p];u[p]=d.getVisibleCoordinates(),h[p]=u[p].slice().reverse(),f[p]=d.getVisibleCoordinates(!0).reverse()}this.opaquePassCutoff=1/0;for(var g=0;g<a.length;g++)if(this.style._layers[a[g]].is3D()){this.opaquePassCutoff=g;break}this.renderPass="offscreen";for(var m=0,v=a;m<v.length;m+=1){var y=this.style._layers[v[m]];if(y.hasOffscreenPass()&&!y.isHidden(this.transform.zoom)){var x=h[y.source];("custom"===y.type||x.length)&&this.renderLayer(this,i[y.source],y,x)}}for(this.context.bindFramebuffer.set(null),this.context.clear({color:r.showOverdrawInspector?t.Color.black:t.Color.transparent,depth:1}),this.clearStencil(),this._showOverdrawInspector=r.showOverdrawInspector,this.depthRangeFor3D=[0,1-(e._order.length+2)*this.numSublayers*this.depthEpsilon],this.renderPass="opaque",this.currentLayer=a.length-1;this.currentLayer>=0;this.currentLayer--){var b=this.style._layers[a[this.currentLayer]],_=i[b.source],w=u[b.source];this._renderTileClippingMasks(b,w),this.renderLayer(this,_,b,w)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer<a.length;this.currentLayer++){var T=this.style._layers[a[this.currentLayer]],k=i[T.source],A=("symbol"===T.type?f:h)[T.source];this._renderTileClippingMasks(T,u[T.source]),this.renderLayer(this,k,T,A)}this.options.showTileBoundaries&&(t.values(this.style._layers).forEach((function(t){t.source&&!t.isHidden(n.transform.zoom)&&(t.source!==(c&&c.id)&&(c=n.style.sourceCaches[t.source]),(!l||l.getSource().maxzoom<c.getSource().maxzoom)&&(l=c))})),l&&vn.debug(this,l,l.getVisibleCoordinates())),this.options.showPadding&&function(t){var e=t.transform.padding;pn(t,t.transform.height-(e.top||0),3,ln),pn(t,e.bottom||0,3,cn),dn(t,e.left||0,3,un),dn(t,t.transform.width-(e.right||0),3,hn);var r=t.transform.centerPoint;!function(t,e,r,n){gn(t,e-1,r-10,2,20,n),gn(t,e-10,r-1,20,2,n)}(t,r.x,t.transform.height-r.y,fn)}(this),this.context.setDefault()},yn.prototype.renderLayer=function(t,e,r,n){r.isHidden(this.transform.zoom)||("background"===r.type||"custom"===r.type||n.length)&&(this.id=r.id,this.gpuTimingStart(r),vn[r.type](t,e,r,n,this.style.placement.variableOffsets),this.gpuTimingEnd())},yn.prototype.gpuTimingStart=function(t){if(this.options.gpuTiming){var e=this.context.extTimerQuery,r=this.gpuTimers[t.id];r||(r=this.gpuTimers[t.id]={calls:0,cpuTime:0,query:e.createQueryEXT()}),r.calls++,e.beginQueryEXT(e.TIME_ELAPSED_EXT,r.query)}},yn.prototype.gpuTimingEnd=function(){if(this.options.gpuTiming){var t=this.context.extTimerQuery;t.endQueryEXT(t.TIME_ELAPSED_EXT)}},yn.prototype.collectGpuTimers=function(){var t=this.gpuTimers;return this.gpuTimers={},t},yn.prototype.queryGpuTimers=function(t){var e={};for(var r in t){var n=t[r],a=this.context.extTimerQuery,i=a.getQueryObjectEXT(n.query,a.QUERY_RESULT_EXT)/1e6;a.deleteQueryEXT(n.query),e[r]=i}return e},yn.prototype.translatePosMatrix=function(e,r,n,a,i){if(!n[0]&&!n[1])return e;var o=i?"map"===a?this.transform.angle:0:"viewport"===a?-this.transform.angle:0;if(o){var s=Math.sin(o),l=Math.cos(o);n=[n[0]*l-n[1]*s,n[0]*s+n[1]*l]}var c=[i?n[0]:fe(r,n[0],this.transform.zoom),i?n[1]:fe(r,n[1],this.transform.zoom),0],u=new Float32Array(16);return t.translate(u,e,c),u},yn.prototype.saveTileTexture=function(t){var e=this._tileTextures[t.size[0]];e?e.push(t):this._tileTextures[t.size[0]]=[t]},yn.prototype.getTileTexture=function(t){var e=this._tileTextures[t];return e&&e.length>0?e.pop():null},yn.prototype.isPatternMissing=function(t){if(!t)return!1;if(!t.from||!t.to)return!0;var e=this.imageManager.getPattern(t.from.toString()),r=this.imageManager.getPattern(t.to.toString());return!e||!r},yn.prototype.useProgram=function(t,e){this.cache=this.cache||{};var r=""+t+(e?e.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"");return this.cache[r]||(this.cache[r]=new br(this.context,yr[t],e,Zr[t],this._showOverdrawInspector)),this.cache[r]},yn.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()},yn.prototype.setBaseState=function(){var t=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(t.FUNC_ADD)},yn.prototype.initDebugOverlayCanvas=function(){null==this.debugOverlayCanvas&&(this.debugOverlayCanvas=t.window.document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512,this.debugOverlayTexture=new t.Texture(this.context,this.debugOverlayCanvas,this.context.gl.RGBA))},yn.prototype.destroy=function(){this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy()};var xn=function(t,e){this.points=t,this.planes=e};xn.fromInvProjectionMatrix=function(e,r,n){var a=Math.pow(2,n),i=[[-1,1,-1,1],[1,1,-1,1],[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((function(r){return t.transformMat4([],r,e)})).map((function(e){return t.scale$1([],e,1/e[3]/r*a)})),o=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map((function(e){var r=t.sub([],i[e[0]],i[e[1]]),n=t.sub([],i[e[2]],i[e[1]]),a=t.normalize([],t.cross([],r,n)),o=-t.dot(a,i[e[1]]);return a.concat(o)}));return new xn(i,o)};var bn=function(e,r){this.min=e,this.max=r,this.center=t.scale$2([],t.add([],this.min,this.max),.5)};bn.prototype.quadrant=function(e){for(var r=[e%2==0,e<2],n=t.clone$2(this.min),a=t.clone$2(this.max),i=0;i<r.length;i++)n[i]=r[i]?this.min[i]:this.center[i],a[i]=r[i]?this.center[i]:this.max[i];return a[2]=this.max[2],new bn(n,a)},bn.prototype.distanceX=function(t){return Math.max(Math.min(this.max[0],t[0]),this.min[0])-t[0]},bn.prototype.distanceY=function(t){return Math.max(Math.min(this.max[1],t[1]),this.min[1])-t[1]},bn.prototype.intersects=function(e){for(var r=[[this.min[0],this.min[1],0,1],[this.max[0],this.min[1],0,1],[this.max[0],this.max[1],0,1],[this.min[0],this.max[1],0,1]],n=!0,a=0;a<e.planes.length;a++){for(var i=e.planes[a],o=0,s=0;s<r.length;s++)o+=t.dot$1(i,r[s])>=0;if(0===o)return 0;o!==r.length&&(n=!1)}if(n)return 2;for(var l=0;l<3;l++){for(var c=Number.MAX_VALUE,u=-Number.MAX_VALUE,h=0;h<e.points.length;h++){var f=e.points[h][l]-this.min[l];c=Math.min(c,f),u=Math.max(u,f)}if(u<0||c>this.max[l]-this.min[l])return 0}return 1};var _n=function(t,e,r,n){if(void 0===t&&(t=0),void 0===e&&(e=0),void 0===r&&(r=0),void 0===n&&(n=0),isNaN(t)||t<0||isNaN(e)||e<0||isNaN(r)||r<0||isNaN(n)||n<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=t,this.bottom=e,this.left=r,this.right=n};_n.prototype.interpolate=function(e,r,n){return null!=r.top&&null!=e.top&&(this.top=t.number(e.top,r.top,n)),null!=r.bottom&&null!=e.bottom&&(this.bottom=t.number(e.bottom,r.bottom,n)),null!=r.left&&null!=e.left&&(this.left=t.number(e.left,r.left,n)),null!=r.right&&null!=e.right&&(this.right=t.number(e.right,r.right,n)),this},_n.prototype.getCenter=function(e,r){var n=t.clamp((this.left+e-this.right)/2,0,e),a=t.clamp((this.top+r-this.bottom)/2,0,r);return new t.Point(n,a)},_n.prototype.equals=function(t){return this.top===t.top&&this.bottom===t.bottom&&this.left===t.left&&this.right===t.right},_n.prototype.clone=function(){return new _n(this.top,this.bottom,this.left,this.right)},_n.prototype.toJSON=function(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}};var wn=function(e,r,n,a,i){this.tileSize=512,this.maxValidLatitude=85.051129,this._renderWorldCopies=void 0===i||i,this._minZoom=e||0,this._maxZoom=r||22,this._minPitch=null==n?0:n,this._maxPitch=null==a?60:a,this.setMaxBounds(),this.width=0,this.height=0,this._center=new t.LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new _n,this._posMatrixCache={},this._alignedPosMatrixCache={}},Tn={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}};wn.prototype.clone=function(){var t=new wn(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return t.tileSize=this.tileSize,t.latRange=this.latRange,t.width=this.width,t.height=this.height,t._center=this._center,t.zoom=this.zoom,t.angle=this.angle,t._fov=this._fov,t._pitch=this._pitch,t._unmodified=this._unmodified,t._edgeInsets=this._edgeInsets.clone(),t._calcMatrices(),t},Tn.minZoom.get=function(){return this._minZoom},Tn.minZoom.set=function(t){this._minZoom!==t&&(this._minZoom=t,this.zoom=Math.max(this.zoom,t))},Tn.maxZoom.get=function(){return this._maxZoom},Tn.maxZoom.set=function(t){this._maxZoom!==t&&(this._maxZoom=t,this.zoom=Math.min(this.zoom,t))},Tn.minPitch.get=function(){return this._minPitch},Tn.minPitch.set=function(t){this._minPitch!==t&&(this._minPitch=t,this.pitch=Math.max(this.pitch,t))},Tn.maxPitch.get=function(){return this._maxPitch},Tn.maxPitch.set=function(t){this._maxPitch!==t&&(this._maxPitch=t,this.pitch=Math.min(this.pitch,t))},Tn.renderWorldCopies.get=function(){return this._renderWorldCopies},Tn.renderWorldCopies.set=function(t){void 0===t?t=!0:null===t&&(t=!1),this._renderWorldCopies=t},Tn.worldSize.get=function(){return this.tileSize*this.scale},Tn.centerOffset.get=function(){return this.centerPoint._sub(this.size._div(2))},Tn.size.get=function(){return new t.Point(this.width,this.height)},Tn.bearing.get=function(){return-this.angle/Math.PI*180},Tn.bearing.set=function(e){var r=-t.wrap(e,-180,180)*Math.PI/180;this.angle!==r&&(this._unmodified=!1,this.angle=r,this._calcMatrices(),this.rotationMatrix=t.create$2(),t.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},Tn.pitch.get=function(){return this._pitch/Math.PI*180},Tn.pitch.set=function(e){var r=t.clamp(e,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==r&&(this._unmodified=!1,this._pitch=r,this._calcMatrices())},Tn.fov.get=function(){return this._fov/Math.PI*180},Tn.fov.set=function(t){t=Math.max(.01,Math.min(60,t)),this._fov!==t&&(this._unmodified=!1,this._fov=t/180*Math.PI,this._calcMatrices())},Tn.zoom.get=function(){return this._zoom},Tn.zoom.set=function(t){var e=Math.min(Math.max(t,this.minZoom),this.maxZoom);this._zoom!==e&&(this._unmodified=!1,this._zoom=e,this.scale=this.zoomScale(e),this.tileZoom=Math.floor(e),this.zoomFraction=e-this.tileZoom,this._constrain(),this._calcMatrices())},Tn.center.get=function(){return this._center},Tn.center.set=function(t){t.lat===this._center.lat&&t.lng===this._center.lng||(this._unmodified=!1,this._center=t,this._constrain(),this._calcMatrices())},Tn.padding.get=function(){return this._edgeInsets.toJSON()},Tn.padding.set=function(t){this._edgeInsets.equals(t)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,t,1),this._calcMatrices())},Tn.centerPoint.get=function(){return this._edgeInsets.getCenter(this.width,this.height)},wn.prototype.isPaddingEqual=function(t){return this._edgeInsets.equals(t)},wn.prototype.interpolatePadding=function(t,e,r){this._unmodified=!1,this._edgeInsets.interpolate(t,e,r),this._constrain(),this._calcMatrices()},wn.prototype.coveringZoomLevel=function(t){var e=(t.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/t.tileSize));return Math.max(0,e)},wn.prototype.getVisibleUnwrappedCoordinates=function(e){var r=[new t.UnwrappedTileID(0,e)];if(this._renderWorldCopies)for(var n=this.pointCoordinate(new t.Point(0,0)),a=this.pointCoordinate(new t.Point(this.width,0)),i=this.pointCoordinate(new t.Point(this.width,this.height)),o=this.pointCoordinate(new t.Point(0,this.height)),s=Math.floor(Math.min(n.x,a.x,i.x,o.x)),l=Math.floor(Math.max(n.x,a.x,i.x,o.x)),c=s-1;c<=l+1;c++)0!==c&&r.push(new t.UnwrappedTileID(c,e));return r},wn.prototype.coveringTiles=function(e){var r=this.coveringZoomLevel(e),n=r;if(void 0!==e.minzoom&&r<e.minzoom)return[];void 0!==e.maxzoom&&r>e.maxzoom&&(r=e.maxzoom);var a=t.MercatorCoordinate.fromLngLat(this.center),i=Math.pow(2,r),o=[i*a.x,i*a.y,0],s=xn.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,r),l=e.minzoom||0;this.pitch<=60&&this._edgeInsets.top<.1&&(l=r);var c=function(t){return{aabb:new bn([t*i,0,0],[(t+1)*i,i,0]),zoom:0,x:0,y:0,wrap:t,fullyVisible:!1}},u=[],h=[],f=r,p=e.reparseOverscaled?n:r;if(this._renderWorldCopies)for(var d=1;d<=3;d++)u.push(c(-d)),u.push(c(d));for(u.push(c(0));u.length>0;){var g=u.pop(),m=g.x,v=g.y,y=g.fullyVisible;if(!y){var x=g.aabb.intersects(s);if(0===x)continue;y=2===x}var b=g.aabb.distanceX(o),_=g.aabb.distanceY(o),w=Math.max(Math.abs(b),Math.abs(_));if(g.zoom===f||w>3+(1<<f-g.zoom)-2&&g.zoom>=l)h.push({tileID:new t.OverscaledTileID(g.zoom===f?p:g.zoom,g.wrap,g.zoom,m,v),distanceSq:t.sqrLen([o[0]-.5-m,o[1]-.5-v])});else for(var T=0;T<4;T++){var k=(m<<1)+T%2,A=(v<<1)+(T>>1);u.push({aabb:g.aabb.quadrant(T),zoom:g.zoom+1,x:k,y:A,wrap:g.wrap,fullyVisible:y})}}return h.sort((function(t,e){return t.distanceSq-e.distanceSq})).map((function(t){return t.tileID}))},wn.prototype.resize=function(t,e){this.width=t,this.height=e,this.pixelsToGLUnits=[2/t,-2/e],this._constrain(),this._calcMatrices()},Tn.unmodified.get=function(){return this._unmodified},wn.prototype.zoomScale=function(t){return Math.pow(2,t)},wn.prototype.scaleZoom=function(t){return Math.log(t)/Math.LN2},wn.prototype.project=function(e){var r=t.clamp(e.lat,-this.maxValidLatitude,this.maxValidLatitude);return new t.Point(t.mercatorXfromLng(e.lng)*this.worldSize,t.mercatorYfromLat(r)*this.worldSize)},wn.prototype.unproject=function(e){return new t.MercatorCoordinate(e.x/this.worldSize,e.y/this.worldSize).toLngLat()},Tn.point.get=function(){return this.project(this.center)},wn.prototype.setLocationAtPoint=function(e,r){var n=this.pointCoordinate(r),a=this.pointCoordinate(this.centerPoint),i=this.locationCoordinate(e),o=new t.MercatorCoordinate(i.x-(n.x-a.x),i.y-(n.y-a.y));this.center=this.coordinateLocation(o),this._renderWorldCopies&&(this.center=this.center.wrap())},wn.prototype.locationPoint=function(t){return this.coordinatePoint(this.locationCoordinate(t))},wn.prototype.pointLocation=function(t){return this.coordinateLocation(this.pointCoordinate(t))},wn.prototype.locationCoordinate=function(e){return t.MercatorCoordinate.fromLngLat(e)},wn.prototype.coordinateLocation=function(t){return t.toLngLat()},wn.prototype.pointCoordinate=function(e){var r=[e.x,e.y,0,1],n=[e.x,e.y,1,1];t.transformMat4(r,r,this.pixelMatrixInverse),t.transformMat4(n,n,this.pixelMatrixInverse);var a=r[3],i=n[3],o=r[1]/a,s=n[1]/i,l=r[2]/a,c=n[2]/i,u=l===c?0:(0-l)/(c-l);return new t.MercatorCoordinate(t.number(r[0]/a,n[0]/i,u)/this.worldSize,t.number(o,s,u)/this.worldSize)},wn.prototype.coordinatePoint=function(e){var r=[e.x*this.worldSize,e.y*this.worldSize,0,1];return t.transformMat4(r,r,this.pixelMatrix),new t.Point(r[0]/r[3],r[1]/r[3])},wn.prototype.getBounds=function(){return(new t.LngLatBounds).extend(this.pointLocation(new t.Point(0,0))).extend(this.pointLocation(new t.Point(this.width,0))).extend(this.pointLocation(new t.Point(this.width,this.height))).extend(this.pointLocation(new t.Point(0,this.height)))},wn.prototype.getMaxBounds=function(){return this.latRange&&2===this.latRange.length&&this.lngRange&&2===this.lngRange.length?new t.LngLatBounds([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null},wn.prototype.setMaxBounds=function(t){t?(this.lngRange=[t.getWest(),t.getEast()],this.latRange=[t.getSouth(),t.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-this.maxValidLatitude,this.maxValidLatitude])},wn.prototype.calculatePosMatrix=function(e,r){void 0===r&&(r=!1);var n=e.key,a=r?this._alignedPosMatrixCache:this._posMatrixCache;if(a[n])return a[n];var i=e.canonical,o=this.worldSize/this.zoomScale(i.z),s=i.x+Math.pow(2,i.z)*e.wrap,l=t.identity(new Float64Array(16));return t.translate(l,l,[s*o,i.y*o,0]),t.scale(l,l,[o/t.EXTENT,o/t.EXTENT,1]),t.multiply(l,r?this.alignedProjMatrix:this.projMatrix,l),a[n]=new Float32Array(l),a[n]},wn.prototype.customLayerMatrix=function(){return this.mercatorMatrix.slice()},wn.prototype._constrain=function(){if(this.center&&this.width&&this.height&&!this._constraining){this._constraining=!0;var e,r,n,a,i=-90,o=90,s=-180,l=180,c=this.size,u=this._unmodified;if(this.latRange){var h=this.latRange;i=t.mercatorYfromLat(h[1])*this.worldSize,e=(o=t.mercatorYfromLat(h[0])*this.worldSize)-i<c.y?c.y/(o-i):0}if(this.lngRange){var f=this.lngRange;s=t.mercatorXfromLng(f[0])*this.worldSize,r=(l=t.mercatorXfromLng(f[1])*this.worldSize)-s<c.x?c.x/(l-s):0}var p=this.point,d=Math.max(r||0,e||0);if(d)return this.center=this.unproject(new t.Point(r?(l+s)/2:p.x,e?(o+i)/2:p.y)),this.zoom+=this.scaleZoom(d),this._unmodified=u,void(this._constraining=!1);if(this.latRange){var g=p.y,m=c.y/2;g-m<i&&(a=i+m),g+m>o&&(a=o-m)}if(this.lngRange){var v=p.x,y=c.x/2;v-y<s&&(n=s+y),v+y>l&&(n=l-y)}void 0===n&&void 0===a||(this.center=this.unproject(new t.Point(void 0!==n?n:p.x,void 0!==a?a:p.y))),this._unmodified=u,this._constraining=!1}},wn.prototype._calcMatrices=function(){if(this.height){var e=this.centerOffset;this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height;var r=Math.PI/2+this._pitch,n=this._fov*(.5+e.y/this.height),a=Math.sin(n)*this.cameraToCenterDistance/Math.sin(t.clamp(Math.PI-r-n,.01,Math.PI-.01)),i=this.point,o=i.x,s=i.y,l=1.01*(Math.cos(Math.PI/2-this._pitch)*a+this.cameraToCenterDistance),c=this.height/50,u=new Float64Array(16);t.perspective(u,this._fov,this.width/this.height,c,l),u[8]=2*-e.x/this.width,u[9]=2*e.y/this.height,t.scale(u,u,[1,-1,1]),t.translate(u,u,[0,0,-this.cameraToCenterDistance]),t.rotateX(u,u,this._pitch),t.rotateZ(u,u,this.angle),t.translate(u,u,[-o,-s,0]),this.mercatorMatrix=t.scale([],u,[this.worldSize,this.worldSize,this.worldSize]),t.scale(u,u,[1,1,t.mercatorZfromAltitude(1,this.center.lat)*this.worldSize,1]),this.projMatrix=u,this.invProjMatrix=t.invert([],this.projMatrix);var h=this.width%2/2,f=this.height%2/2,p=Math.cos(this.angle),d=Math.sin(this.angle),g=o-Math.round(o)+p*h+d*f,m=s-Math.round(s)+p*f+d*h,v=new Float64Array(u);if(t.translate(v,v,[g>.5?g-1:g,m>.5?m-1:m,0]),this.alignedProjMatrix=v,u=t.create(),t.scale(u,u,[this.width/2,-this.height/2,1]),t.translate(u,u,[1,-1,0]),this.labelPlaneMatrix=u,u=t.create(),t.scale(u,u,[1,-1,1]),t.translate(u,u,[-1,-1,0]),t.scale(u,u,[2/this.width,2/this.height,1]),this.glCoordMatrix=u,this.pixelMatrix=t.multiply(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),!(u=t.invert(new Float64Array(16),this.pixelMatrix)))throw new Error("failed to invert matrix");this.pixelMatrixInverse=u,this._posMatrixCache={},this._alignedPosMatrixCache={}}},wn.prototype.maxPitchScaleFactor=function(){if(!this.pixelMatrixInverse)return 1;var e=this.pointCoordinate(new t.Point(0,0)),r=[e.x*this.worldSize,e.y*this.worldSize,0,1];return t.transformMat4(r,r,this.pixelMatrix)[3]/this.cameraToCenterDistance},wn.prototype.getCameraPoint=function(){var e=Math.tan(this._pitch)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new t.Point(0,e))},wn.prototype.getCameraQueryGeometry=function(e){var r=this.getCameraPoint();if(1===e.length)return[e[0],r];for(var n=r.x,a=r.y,i=r.x,o=r.y,s=0,l=e;s<l.length;s+=1){var c=l[s];n=Math.min(n,c.x),a=Math.min(a,c.y),i=Math.max(i,c.x),o=Math.max(o,c.y)}return[new t.Point(n,a),new t.Point(i,a),new t.Point(i,o),new t.Point(n,o),new t.Point(n,a)]},Object.defineProperties(wn.prototype,Tn);var kn=function(e){var r,n,a,i;this._hashName=e&&encodeURIComponent(e),t.bindAll(["_getCurrentHash","_onHashChange","_updateHash"],this),this._updateHash=(r=this._updateHashUnthrottled.bind(this),n=!1,a=null,i=function(){a=null,n&&(r(),a=setTimeout(i,300),n=!1)},function(){return n=!0,a||i(),a})};kn.prototype.addTo=function(e){return this._map=e,t.window.addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this},kn.prototype.remove=function(){return t.window.removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),delete this._map,this},kn.prototype.getHashString=function(e){var r=this._map.getCenter(),n=Math.round(100*this._map.getZoom())/100,a=Math.ceil((n*Math.LN2+Math.log(512/360/.5))/Math.LN10),i=Math.pow(10,a),o=Math.round(r.lng*i)/i,s=Math.round(r.lat*i)/i,l=this._map.getBearing(),c=this._map.getPitch(),u="";if(u+=e?"/"+o+"/"+s+"/"+n:n+"/"+s+"/"+o,(l||c)&&(u+="/"+Math.round(10*l)/10),c&&(u+="/"+Math.round(c)),this._hashName){var h=this._hashName,f=!1,p=t.window.location.hash.slice(1).split("&").map((function(t){var e=t.split("=")[0];return e===h?(f=!0,e+"="+u):t})).filter((function(t){return t}));return f||p.push(h+"="+u),"#"+p.join("&")}return"#"+u},kn.prototype._getCurrentHash=function(){var e,r=this,n=t.window.location.hash.replace("#","");return this._hashName?(n.split("&").map((function(t){return t.split("=")})).forEach((function(t){t[0]===r._hashName&&(e=t)})),(e&&e[1]||"").split("/")):n.split("/")},kn.prototype._onHashChange=function(){var t=this._getCurrentHash();if(t.length>=3&&!t.some((function(t){return isNaN(t)}))){var e=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(t[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+t[2],+t[1]],zoom:+t[0],bearing:e,pitch:+(t[4]||0)}),!0}return!1},kn.prototype._updateHashUnthrottled=function(){var e=this.getHashString();try{t.window.history.replaceState(t.window.history.state,"",e)}catch(t){}};var An={linearity:.3,easing:t.bezier(0,0,.3,1)},Mn=t.extend({deceleration:2500,maxSpeed:1400},An),Sn=t.extend({deceleration:20,maxSpeed:1400},An),En=t.extend({deceleration:1e3,maxSpeed:360},An),Cn=t.extend({deceleration:1e3,maxSpeed:90},An),Ln=function(t){this._map=t,this.clear()};function Pn(t,e){(!t.duration||t.duration<e.duration)&&(t.duration=e.duration,t.easing=e.easing)}function In(e,r,n){var a=n.maxSpeed,i=n.linearity,o=n.deceleration,s=t.clamp(e*i/(r/1e3),-a,a),l=Math.abs(s)/(o*i);return{easing:n.easing,duration:1e3*l,amount:s*(l/2)}}Ln.prototype.clear=function(){this._inertiaBuffer=[]},Ln.prototype.record=function(e){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:t.browser.now(),settings:e})},Ln.prototype._drainInertiaBuffer=function(){for(var e=this._inertiaBuffer,r=t.browser.now();e.length>0&&r-e[0].time>160;)e.shift()},Ln.prototype._onMoveEnd=function(e){if(this._drainInertiaBuffer(),!(this._inertiaBuffer.length<2)){for(var r={zoom:0,bearing:0,pitch:0,pan:new t.Point(0,0),pinchAround:void 0,around:void 0},n=0,a=this._inertiaBuffer;n<a.length;n+=1){var i=a[n].settings;r.zoom+=i.zoomDelta||0,r.bearing+=i.bearingDelta||0,r.pitch+=i.pitchDelta||0,i.panDelta&&r.pan._add(i.panDelta),i.around&&(r.around=i.around),i.pinchAround&&(r.pinchAround=i.pinchAround)}var o=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,s={};if(r.pan.mag()){var l=In(r.pan.mag(),o,t.extend({},Mn,e||{}));s.offset=r.pan.mult(l.amount/r.pan.mag()),s.center=this._map.transform.center,Pn(s,l)}if(r.zoom){var c=In(r.zoom,o,Sn);s.zoom=this._map.transform.zoom+c.amount,Pn(s,c)}if(r.bearing){var u=In(r.bearing,o,En);s.bearing=this._map.transform.bearing+t.clamp(u.amount,-179,179),Pn(s,u)}if(r.pitch){var h=In(r.pitch,o,Cn);s.pitch=this._map.transform.pitch+h.amount,Pn(s,h)}if(s.zoom||s.bearing){var f=void 0===r.pinchAround?r.around:r.pinchAround;s.around=f?this._map.unproject(f):this._map.getCenter()}return this.clear(),t.extend(s,{noMoveStart:!0})}};var zn=function(e){function n(n,a,i,o){void 0===o&&(o={});var s=r.mousePos(a.getCanvasContainer(),i),l=a.unproject(s);e.call(this,n,t.extend({point:s,lngLat:l,originalEvent:i},o)),this._defaultPrevented=!1,this.target=a}e&&(n.__proto__=e),(n.prototype=Object.create(e&&e.prototype)).constructor=n;var a={defaultPrevented:{configurable:!0}};return n.prototype.preventDefault=function(){this._defaultPrevented=!0},a.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(n.prototype,a),n}(t.Event),On=function(e){function n(n,a,i){var o="touchend"===n?i.changedTouches:i.touches,s=r.touchPos(a.getCanvasContainer(),o),l=s.map((function(t){return a.unproject(t)})),c=s.reduce((function(t,e,r,n){return t.add(e.div(n.length))}),new t.Point(0,0)),u=a.unproject(c);e.call(this,n,{points:s,point:c,lngLats:l,lngLat:u,originalEvent:i}),this._defaultPrevented=!1}e&&(n.__proto__=e),(n.prototype=Object.create(e&&e.prototype)).constructor=n;var a={defaultPrevented:{configurable:!0}};return n.prototype.preventDefault=function(){this._defaultPrevented=!0},a.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(n.prototype,a),n}(t.Event),Dn=function(t){function e(e,r,n){t.call(this,e,{originalEvent:n}),this._defaultPrevented=!1}t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e;var r={defaultPrevented:{configurable:!0}};return e.prototype.preventDefault=function(){this._defaultPrevented=!0},r.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(e.prototype,r),e}(t.Event),Rn=function(t,e){this._map=t,this._clickTolerance=e.clickTolerance};Rn.prototype.reset=function(){delete this._mousedownPos},Rn.prototype.wheel=function(t){return this._firePreventable(new Dn(t.type,this._map,t))},Rn.prototype.mousedown=function(t,e){return this._mousedownPos=e,this._firePreventable(new zn(t.type,this._map,t))},Rn.prototype.mouseup=function(t){this._map.fire(new zn(t.type,this._map,t))},Rn.prototype.click=function(t,e){this._mousedownPos&&this._mousedownPos.dist(e)>=this._clickTolerance||this._map.fire(new zn(t.type,this._map,t))},Rn.prototype.dblclick=function(t){return this._firePreventable(new zn(t.type,this._map,t))},Rn.prototype.mouseover=function(t){this._map.fire(new zn(t.type,this._map,t))},Rn.prototype.mouseout=function(t){this._map.fire(new zn(t.type,this._map,t))},Rn.prototype.touchstart=function(t){return this._firePreventable(new On(t.type,this._map,t))},Rn.prototype.touchmove=function(t){this._map.fire(new On(t.type,this._map,t))},Rn.prototype.touchend=function(t){this._map.fire(new On(t.type,this._map,t))},Rn.prototype.touchcancel=function(t){this._map.fire(new On(t.type,this._map,t))},Rn.prototype._firePreventable=function(t){if(this._map.fire(t),t.defaultPrevented)return{}},Rn.prototype.isEnabled=function(){return!0},Rn.prototype.isActive=function(){return!1},Rn.prototype.enable=function(){},Rn.prototype.disable=function(){};var Fn=function(t){this._map=t};Fn.prototype.reset=function(){this._delayContextMenu=!1,delete this._contextMenuEvent},Fn.prototype.mousemove=function(t){this._map.fire(new zn(t.type,this._map,t))},Fn.prototype.mousedown=function(){this._delayContextMenu=!0},Fn.prototype.mouseup=function(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new zn("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)},Fn.prototype.contextmenu=function(t){this._delayContextMenu?this._contextMenuEvent=t:this._map.fire(new zn(t.type,this._map,t)),this._map.listens("contextmenu")&&t.preventDefault()},Fn.prototype.isEnabled=function(){return!0},Fn.prototype.isActive=function(){return!1},Fn.prototype.enable=function(){},Fn.prototype.disable=function(){};var Bn=function(t,e){this._map=t,this._el=t.getCanvasContainer(),this._container=t.getContainer(),this._clickTolerance=e.clickTolerance||1};function Nn(t,e){for(var r={},n=0;n<t.length;n++)r[t[n].identifier]=e[n];return r}Bn.prototype.isEnabled=function(){return!!this._enabled},Bn.prototype.isActive=function(){return!!this._active},Bn.prototype.enable=function(){this.isEnabled()||(this._enabled=!0)},Bn.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},Bn.prototype.mousedown=function(t,e){this.isEnabled()&&t.shiftKey&&0===t.button&&(r.disableDrag(),this._startPos=this._lastPos=e,this._active=!0)},Bn.prototype.mousemoveWindow=function(t,e){if(this._active){var n=e;if(!(this._lastPos.equals(n)||!this._box&&n.dist(this._startPos)<this._clickTolerance)){var a=this._startPos;this._lastPos=n,this._box||(this._box=r.create("div","mapboxgl-boxzoom",this._container),this._container.classList.add("mapboxgl-crosshair"),this._fireEvent("boxzoomstart",t));var i=Math.min(a.x,n.x),o=Math.max(a.x,n.x),s=Math.min(a.y,n.y),l=Math.max(a.y,n.y);r.setTransform(this._box,"translate("+i+"px,"+s+"px)"),this._box.style.width=o-i+"px",this._box.style.height=l-s+"px"}}},Bn.prototype.mouseupWindow=function(e,n){var a=this;if(this._active&&0===e.button){var i=this._startPos,o=n;if(this.reset(),r.suppressClick(),i.x!==o.x||i.y!==o.y)return this._map.fire(new t.Event("boxzoomend",{originalEvent:e})),{cameraAnimation:function(t){return t.fitScreenCoordinates(i,o,a._map.getBearing(),{linear:!0})}};this._fireEvent("boxzoomcancel",e)}},Bn.prototype.keydown=function(t){this._active&&27===t.keyCode&&(this.reset(),this._fireEvent("boxzoomcancel",t))},Bn.prototype.reset=function(){this._active=!1,this._container.classList.remove("mapboxgl-crosshair"),this._box&&(r.remove(this._box),this._box=null),r.enableDrag(),delete this._startPos,delete this._lastPos},Bn.prototype._fireEvent=function(e,r){return this._map.fire(new t.Event(e,{originalEvent:r}))};var jn=function(t){this.reset(),this.numTouches=t.numTouches};jn.prototype.reset=function(){delete this.centroid,delete this.startTime,delete this.touches,this.aborted=!1},jn.prototype.touchstart=function(e,r,n){(this.centroid||n.length>this.numTouches)&&(this.aborted=!0),this.aborted||(void 0===this.startTime&&(this.startTime=e.timeStamp),n.length===this.numTouches&&(this.centroid=function(e){for(var r=new t.Point(0,0),n=0,a=e;n<a.length;n+=1)r._add(a[n]);return r.div(e.length)}(r),this.touches=Nn(n,r)))},jn.prototype.touchmove=function(t,e,r){if(!this.aborted&&this.centroid){var n=Nn(r,e);for(var a in this.touches){var i=n[a];(!i||i.dist(this.touches[a])>30)&&(this.aborted=!0)}}},jn.prototype.touchend=function(t,e,r){if((!this.centroid||t.timeStamp-this.startTime>500)&&(this.aborted=!0),0===r.length){var n=!this.aborted&&this.centroid;if(this.reset(),n)return n}};var Vn=function(t){this.singleTap=new jn(t),this.numTaps=t.numTaps,this.reset()};Vn.prototype.reset=function(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()},Vn.prototype.touchstart=function(t,e,r){this.singleTap.touchstart(t,e,r)},Vn.prototype.touchmove=function(t,e,r){this.singleTap.touchmove(t,e,r)},Vn.prototype.touchend=function(t,e,r){var n=this.singleTap.touchend(t,e,r);if(n){var a=t.timeStamp-this.lastTime<500,i=!this.lastTap||this.lastTap.dist(n)<30;if(a&&i||this.reset(),this.count++,this.lastTime=t.timeStamp,this.lastTap=n,this.count===this.numTaps)return this.reset(),n}};var Un=function(){this._zoomIn=new Vn({numTouches:1,numTaps:2}),this._zoomOut=new Vn({numTouches:2,numTaps:1}),this.reset()};Un.prototype.reset=function(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()},Un.prototype.touchstart=function(t,e,r){this._zoomIn.touchstart(t,e,r),this._zoomOut.touchstart(t,e,r)},Un.prototype.touchmove=function(t,e,r){this._zoomIn.touchmove(t,e,r),this._zoomOut.touchmove(t,e,r)},Un.prototype.touchend=function(t,e,r){var n=this,a=this._zoomIn.touchend(t,e,r),i=this._zoomOut.touchend(t,e,r);return a?(this._active=!0,t.preventDefault(),setTimeout((function(){return n.reset()}),0),{cameraAnimation:function(e){return e.easeTo({duration:300,zoom:e.getZoom()+1,around:e.unproject(a)},{originalEvent:t})}}):i?(this._active=!0,t.preventDefault(),setTimeout((function(){return n.reset()}),0),{cameraAnimation:function(e){return e.easeTo({duration:300,zoom:e.getZoom()-1,around:e.unproject(i)},{originalEvent:t})}}):void 0},Un.prototype.touchcancel=function(){this.reset()},Un.prototype.enable=function(){this._enabled=!0},Un.prototype.disable=function(){this._enabled=!1,this.reset()},Un.prototype.isEnabled=function(){return this._enabled},Un.prototype.isActive=function(){return this._active};var qn=function(t){this.reset(),this._clickTolerance=t.clickTolerance||1};qn.prototype.reset=function(){this._active=!1,this._moved=!1,delete this._lastPoint,delete this._eventButton},qn.prototype._correctButton=function(t,e){return!1},qn.prototype._move=function(t,e){return{}},qn.prototype.mousedown=function(t,e){if(!this._lastPoint){var n=r.mouseButton(t);this._correctButton(t,n)&&(this._lastPoint=e,this._eventButton=n)}},qn.prototype.mousemoveWindow=function(t,e){var r=this._lastPoint;if(r&&(t.preventDefault(),this._moved||!(e.dist(r)<this._clickTolerance)))return this._moved=!0,this._lastPoint=e,this._move(r,e)},qn.prototype.mouseupWindow=function(t){r.mouseButton(t)===this._eventButton&&(this._moved&&r.suppressClick(),this.reset())},qn.prototype.enable=function(){this._enabled=!0},qn.prototype.disable=function(){this._enabled=!1,this.reset()},qn.prototype.isEnabled=function(){return this._enabled},qn.prototype.isActive=function(){return this._active};var Hn=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.mousedown=function(e,r){t.prototype.mousedown.call(this,e,r),this._lastPoint&&(this._active=!0)},e.prototype._correctButton=function(t,e){return 0===e&&!t.ctrlKey},e.prototype._move=function(t,e){return{around:e,panDelta:e.sub(t)}},e}(qn),Gn=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._correctButton=function(t,e){return 0===e&&t.ctrlKey||2===e},e.prototype._move=function(t,e){var r=.8*(e.x-t.x);if(r)return this._active=!0,{bearingDelta:r}},e.prototype.contextmenu=function(t){t.preventDefault()},e}(qn),Yn=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype._correctButton=function(t,e){return 0===e&&t.ctrlKey||2===e},e.prototype._move=function(t,e){var r=-.5*(e.y-t.y);if(r)return this._active=!0,{pitchDelta:r}},e.prototype.contextmenu=function(t){t.preventDefault()},e}(qn),Wn=function(t){this._minTouches=1,this._clickTolerance=t.clickTolerance||1,this.reset()};Wn.prototype.reset=function(){this._active=!1,this._touches={},this._sum=new t.Point(0,0)},Wn.prototype.touchstart=function(t,e,r){return this._calculateTransform(t,e,r)},Wn.prototype.touchmove=function(t,e,r){if(this._active)return t.preventDefault(),this._calculateTransform(t,e,r)},Wn.prototype.touchend=function(t,e,r){this._calculateTransform(t,e,r),this._active&&r.length<this._minTouches&&this.reset()},Wn.prototype.touchcancel=function(){this.reset()},Wn.prototype._calculateTransform=function(e,r,n){n.length>0&&(this._active=!0);var a=Nn(n,r),i=new t.Point(0,0),o=new t.Point(0,0),s=0;for(var l in a){var c=a[l],u=this._touches[l];u&&(i._add(c),o._add(c.sub(u)),s++,a[l]=c)}if(this._touches=a,!(s<this._minTouches)&&o.mag()){var h=o.div(s);if(this._sum._add(h),!(this._sum.mag()<this._clickTolerance))return{around:i.div(s),panDelta:h}}},Wn.prototype.enable=function(){this._enabled=!0},Wn.prototype.disable=function(){this._enabled=!1,this.reset()},Wn.prototype.isEnabled=function(){return this._enabled},Wn.prototype.isActive=function(){return this._active};var Zn=function(){this.reset()};function Xn(t,e,r){for(var n=0;n<t.length;n++)if(t[n].identifier===r)return e[n]}function Jn(t,e){return Math.log(t/e)/Math.LN2}Zn.prototype.reset=function(){this._active=!1,delete this._firstTwoTouches},Zn.prototype._start=function(t){},Zn.prototype._move=function(t,e,r){return{}},Zn.prototype.touchstart=function(t,e,r){this._firstTwoTouches||r.length<2||(this._firstTwoTouches=[r[0].identifier,r[1].identifier],this._start([e[0],e[1]]))},Zn.prototype.touchmove=function(t,e,r){if(this._firstTwoTouches){t.preventDefault();var n=this._firstTwoTouches,a=n[1],i=Xn(r,e,n[0]),o=Xn(r,e,a);if(i&&o){var s=this._aroundCenter?null:i.add(o).div(2);return this._move([i,o],s,t)}}},Zn.prototype.touchend=function(t,e,n){if(this._firstTwoTouches){var a=this._firstTwoTouches,i=a[1],o=Xn(n,e,a[0]),s=Xn(n,e,i);o&&s||(this._active&&r.suppressClick(),this.reset())}},Zn.prototype.touchcancel=function(){this.reset()},Zn.prototype.enable=function(t){this._enabled=!0,this._aroundCenter=!!t&&"center"===t.around},Zn.prototype.disable=function(){this._enabled=!1,this.reset()},Zn.prototype.isEnabled=function(){return this._enabled},Zn.prototype.isActive=function(){return this._active};var Kn=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.reset=function(){t.prototype.reset.call(this),delete this._distance,delete this._startDistance},e.prototype._start=function(t){this._startDistance=this._distance=t[0].dist(t[1])},e.prototype._move=function(t,e){var r=this._distance;if(this._distance=t[0].dist(t[1]),this._active||!(Math.abs(Jn(this._distance,this._startDistance))<.1))return this._active=!0,{zoomDelta:Jn(this._distance,r),pinchAround:e}},e}(Zn);function Qn(t,e){return 180*t.angleWith(e)/Math.PI}var $n=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.reset=function(){t.prototype.reset.call(this),delete this._minDiameter,delete this._startVector,delete this._vector},e.prototype._start=function(t){this._startVector=this._vector=t[0].sub(t[1]),this._minDiameter=t[0].dist(t[1])},e.prototype._move=function(t,e){var r=this._vector;if(this._vector=t[0].sub(t[1]),this._active||!this._isBelowThreshold(this._vector))return this._active=!0,{bearingDelta:Qn(this._vector,r),pinchAround:e}},e.prototype._isBelowThreshold=function(t){this._minDiameter=Math.min(this._minDiameter,t.mag());var e=25/(Math.PI*this._minDiameter)*360,r=Qn(t,this._startVector);return Math.abs(r)<e},e}(Zn);function ta(t){return Math.abs(t.y)>Math.abs(t.x)}var ea=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.reset=function(){t.prototype.reset.call(this),this._valid=void 0,delete this._firstMove,delete this._lastPoints},e.prototype._start=function(t){this._lastPoints=t,ta(t[0].sub(t[1]))&&(this._valid=!1)},e.prototype._move=function(t,e,r){var n=t[0].sub(this._lastPoints[0]),a=t[1].sub(this._lastPoints[1]);if(this._valid=this.gestureBeginsVertically(n,a,r.timeStamp),this._valid)return this._lastPoints=t,this._active=!0,{pitchDelta:(n.y+a.y)/2*-.5}},e.prototype.gestureBeginsVertically=function(t,e,r){if(void 0!==this._valid)return this._valid;var n=t.mag()>=2,a=e.mag()>=2;if(n||a){if(!n||!a)return void 0===this._firstMove&&(this._firstMove=r),r-this._firstMove<100&&void 0;var i=t.y>0==e.y>0;return ta(t)&&ta(e)&&i}},e}(Zn),ra={panStep:100,bearingStep:15,pitchStep:10},na=function(){var t=ra;this._panStep=t.panStep,this._bearingStep=t.bearingStep,this._pitchStep=t.pitchStep};function aa(t){return t*(2-t)}na.prototype.reset=function(){this._active=!1},na.prototype.keydown=function(t){var e=this;if(!(t.altKey||t.ctrlKey||t.metaKey)){var r=0,n=0,a=0,i=0,o=0;switch(t.keyCode){case 61:case 107:case 171:case 187:r=1;break;case 189:case 109:case 173:r=-1;break;case 37:t.shiftKey?n=-1:(t.preventDefault(),i=-1);break;case 39:t.shiftKey?n=1:(t.preventDefault(),i=1);break;case 38:t.shiftKey?a=1:(t.preventDefault(),o=-1);break;case 40:t.shiftKey?a=-1:(t.preventDefault(),o=1);break;default:return}return{cameraAnimation:function(s){var l=s.getZoom();s.easeTo({duration:300,easeId:"keyboardHandler",easing:aa,zoom:r?Math.round(l)+r*(t.shiftKey?2:1):l,bearing:s.getBearing()+n*e._bearingStep,pitch:s.getPitch()+a*e._pitchStep,offset:[-i*e._panStep,-o*e._panStep],center:s.getCenter()},{originalEvent:t})}}}},na.prototype.enable=function(){this._enabled=!0},na.prototype.disable=function(){this._enabled=!1,this.reset()},na.prototype.isEnabled=function(){return this._enabled},na.prototype.isActive=function(){return this._active};var ia=function(e,r){this._map=e,this._el=e.getCanvasContainer(),this._handler=r,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=1/450,t.bindAll(["_onWheel","_onTimeout","_onScrollFrame","_onScrollFinished"],this)};ia.prototype.setZoomRate=function(t){this._defaultZoomRate=t},ia.prototype.setWheelZoomRate=function(t){this._wheelZoomRate=t},ia.prototype.isEnabled=function(){return!!this._enabled},ia.prototype.isActive=function(){return!!this._active||void 0!==this._finishTimeout},ia.prototype.isZooming=function(){return!!this._zooming},ia.prototype.enable=function(t){this.isEnabled()||(this._enabled=!0,this._aroundCenter=t&&"center"===t.around)},ia.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},ia.prototype.wheel=function(e){if(this.isEnabled()){var r=e.deltaMode===t.window.WheelEvent.DOM_DELTA_LINE?40*e.deltaY:e.deltaY,n=t.browser.now(),a=n-(this._lastWheelEventTime||0);this._lastWheelEventTime=n,0!==r&&r%4.000244140625==0?this._type="wheel":0!==r&&Math.abs(r)<4?this._type="trackpad":a>400?(this._type=null,this._lastValue=r,this._timeout=setTimeout(this._onTimeout,40,e)):this._type||(this._type=Math.abs(a*r)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,r+=this._lastValue)),e.shiftKey&&r&&(r/=4),this._type&&(this._lastWheelEvent=e,this._delta-=r,this._active||this._start(e)),e.preventDefault()}},ia.prototype._onTimeout=function(t){this._type="wheel",this._delta-=this._lastValue,this._active||this._start(t)},ia.prototype._start=function(e){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 n=r.mousePos(this._el,e);this._around=t.LngLat.convert(this._aroundCenter?this._map.getCenter():this._map.unproject(n)),this._aroundPoint=this._map.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame())}},ia.prototype.renderFrame=function(){return this._onScrollFrame()},ia.prototype._onScrollFrame=function(){var e=this;if(this._frameId&&(this._frameId=null,this.isActive())){var r=this._map.transform;if(0!==this._delta){var n="wheel"===this._type&&Math.abs(this._delta)>4.000244140625?this._wheelZoomRate:this._defaultZoomRate,a=2/(1+Math.exp(-Math.abs(this._delta*n)));this._delta<0&&0!==a&&(a=1/a);var i="number"==typeof this._targetZoom?r.zoomScale(this._targetZoom):r.scale;this._targetZoom=Math.min(r.maxZoom,Math.max(r.minZoom,r.scaleZoom(i*a))),"wheel"===this._type&&(this._startZoom=r.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}var o,s="number"==typeof this._targetZoom?this._targetZoom:r.zoom,l=this._startZoom,c=this._easing,u=!1;if("wheel"===this._type&&l&&c){var h=Math.min((t.browser.now()-this._lastWheelEventTime)/200,1),f=c(h);o=t.number(l,s,f),h<1?this._frameId||(this._frameId=!0):u=!0}else o=s,u=!0;return this._active=!0,u&&(this._active=!1,this._finishTimeout=setTimeout((function(){e._zooming=!1,e._handler._triggerRenderFrame(),delete e._targetZoom,delete e._finishTimeout}),200)),{noInertia:!0,needsRenderFrame:!u,zoomDelta:o-r.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}},ia.prototype._smoothOutEasing=function(e){var r=t.ease;if(this._prevEase){var n=this._prevEase,a=(t.browser.now()-n.start)/n.duration,i=n.easing(a+.01)-n.easing(a),o=.27/Math.sqrt(i*i+1e-4)*.01,s=Math.sqrt(.0729-o*o);r=t.bezier(o,s,.25,1)}return this._prevEase={start:t.browser.now(),duration:e,easing:r},r},ia.prototype.reset=function(){this._active=!1};var oa=function(t,e){this._clickZoom=t,this._tapZoom=e};oa.prototype.enable=function(){this._clickZoom.enable(),this._tapZoom.enable()},oa.prototype.disable=function(){this._clickZoom.disable(),this._tapZoom.disable()},oa.prototype.isEnabled=function(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()},oa.prototype.isActive=function(){return this._clickZoom.isActive()||this._tapZoom.isActive()};var sa=function(){this.reset()};sa.prototype.reset=function(){this._active=!1},sa.prototype.dblclick=function(t,e){return t.preventDefault(),{cameraAnimation:function(r){r.easeTo({duration:300,zoom:r.getZoom()+(t.shiftKey?-1:1),around:r.unproject(e)},{originalEvent:t})}}},sa.prototype.enable=function(){this._enabled=!0},sa.prototype.disable=function(){this._enabled=!1,this.reset()},sa.prototype.isEnabled=function(){return this._enabled},sa.prototype.isActive=function(){return this._active};var la=function(){this._tap=new Vn({numTouches:1,numTaps:1}),this.reset()};la.prototype.reset=function(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,this._tap.reset()},la.prototype.touchstart=function(t,e,r){this._swipePoint||(this._tapTime&&t.timeStamp-this._tapTime>500&&this.reset(),this._tapTime?r.length>0&&(this._swipePoint=e[0],this._swipeTouch=r[0].identifier):this._tap.touchstart(t,e,r))},la.prototype.touchmove=function(t,e,r){if(this._tapTime){if(this._swipePoint){if(r[0].identifier!==this._swipeTouch)return;var n=e[0],a=n.y-this._swipePoint.y;return this._swipePoint=n,t.preventDefault(),this._active=!0,{zoomDelta:a/128}}}else this._tap.touchmove(t,e,r)},la.prototype.touchend=function(t,e,r){this._tapTime?this._swipePoint&&0===r.length&&this.reset():this._tap.touchend(t,e,r)&&(this._tapTime=t.timeStamp)},la.prototype.touchcancel=function(){this.reset()},la.prototype.enable=function(){this._enabled=!0},la.prototype.disable=function(){this._enabled=!1,this.reset()},la.prototype.isEnabled=function(){return this._enabled},la.prototype.isActive=function(){return this._active};var ca=function(t,e,r){this._el=t,this._mousePan=e,this._touchPan=r};ca.prototype.enable=function(t){this._inertiaOptions=t||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("mapboxgl-touch-drag-pan")},ca.prototype.disable=function(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("mapboxgl-touch-drag-pan")},ca.prototype.isEnabled=function(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()},ca.prototype.isActive=function(){return this._mousePan.isActive()||this._touchPan.isActive()};var ua=function(t,e,r){this._pitchWithRotate=t.pitchWithRotate,this._mouseRotate=e,this._mousePitch=r};ua.prototype.enable=function(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()},ua.prototype.disable=function(){this._mouseRotate.disable(),this._mousePitch.disable()},ua.prototype.isEnabled=function(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())},ua.prototype.isActive=function(){return this._mouseRotate.isActive()||this._mousePitch.isActive()};var ha=function(t,e,r,n){this._el=t,this._touchZoom=e,this._touchRotate=r,this._tapDragZoom=n,this._rotationDisabled=!1,this._enabled=!0};ha.prototype.enable=function(t){this._touchZoom.enable(t),this._rotationDisabled||this._touchRotate.enable(t),this._tapDragZoom.enable(),this._el.classList.add("mapboxgl-touch-zoom-rotate")},ha.prototype.disable=function(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("mapboxgl-touch-zoom-rotate")},ha.prototype.isEnabled=function(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()},ha.prototype.isActive=function(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()},ha.prototype.disableRotation=function(){this._rotationDisabled=!0,this._touchRotate.disable()},ha.prototype.enableRotation=function(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()};var fa=function(t){return t.zoom||t.drag||t.pitch||t.rotate},pa=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e}(t.Event);function da(t){return t.panDelta&&t.panDelta.mag()||t.zoomDelta||t.bearingDelta||t.pitchDelta}var ga=function(e,n){this._map=e,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Ln(e),this._bearingSnap=n.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(n),t.bindAll(["handleEvent","handleWindowEvent"],this);var a=this._el;this._listeners=[[a,"touchstart",{passive:!1}],[a,"touchmove",{passive:!1}],[a,"touchend",void 0],[a,"touchcancel",void 0],[a,"mousedown",void 0],[a,"mousemove",void 0],[a,"mouseup",void 0],[t.window.document,"mousemove",{capture:!0}],[t.window.document,"mouseup",void 0],[a,"mouseover",void 0],[a,"mouseout",void 0],[a,"dblclick",void 0],[a,"click",void 0],[a,"keydown",{capture:!1}],[a,"keyup",void 0],[a,"wheel",{passive:!1}],[a,"contextmenu",void 0],[t.window,"blur",void 0]];for(var i=0,o=this._listeners;i<o.length;i+=1){var s=o[i],l=s[0];r.addEventListener(l,s[1],l===t.window.document?this.handleWindowEvent:this.handleEvent,s[2])}};ga.prototype.destroy=function(){for(var e=0,n=this._listeners;e<n.length;e+=1){var a=n[e],i=a[0];r.removeEventListener(i,a[1],i===t.window.document?this.handleWindowEvent:this.handleEvent,a[2])}},ga.prototype._addDefaultHandlers=function(t){var e=this._map,r=e.getCanvasContainer();this._add("mapEvent",new Rn(e,t));var n=e.boxZoom=new Bn(e,t);this._add("boxZoom",n);var a=new Un,i=new sa;e.doubleClickZoom=new oa(i,a),this._add("tapZoom",a),this._add("clickZoom",i);var o=new la;this._add("tapDragZoom",o);var s=e.touchPitch=new ea;this._add("touchPitch",s);var l=new Gn(t),c=new Yn(t);e.dragRotate=new ua(t,l,c),this._add("mouseRotate",l,["mousePitch"]),this._add("mousePitch",c,["mouseRotate"]);var u=new Hn(t),h=new Wn(t);e.dragPan=new ca(r,u,h),this._add("mousePan",u),this._add("touchPan",h,["touchZoom","touchRotate"]);var f=new $n,p=new Kn;e.touchZoomRotate=new ha(r,p,f,o),this._add("touchRotate",f,["touchPan","touchZoom"]),this._add("touchZoom",p,["touchPan","touchRotate"]);var d=e.scrollZoom=new ia(e,this);this._add("scrollZoom",d,["mousePan"]);var g=e.keyboard=new na;this._add("keyboard",g),this._add("blockableMapEvent",new Fn(e));for(var m=0,v=["boxZoom","doubleClickZoom","tapDragZoom","touchPitch","dragRotate","dragPan","touchZoomRotate","scrollZoom","keyboard"];m<v.length;m+=1){var y=v[m];t.interactive&&t[y]&&e[y].enable(t[y])}},ga.prototype._add=function(t,e,r){this._handlers.push({handlerName:t,handler:e,allowed:r}),this._handlersById[t]=e},ga.prototype.stop=function(){if(!this._updatingCamera){for(var t=0,e=this._handlers;t<e.length;t+=1)e[t].handler.reset();this._inertia.clear(),this._fireEvents({},{}),this._changes=[]}},ga.prototype.isActive=function(){for(var t=0,e=this._handlers;t<e.length;t+=1)if(e[t].handler.isActive())return!0;return!1},ga.prototype.isZooming=function(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()},ga.prototype.isRotating=function(){return!!this._eventsInProgress.rotate},ga.prototype.isMoving=function(){return Boolean(fa(this._eventsInProgress))||this.isZooming()},ga.prototype._blockedByActive=function(t,e,r){for(var n in t)if(n!==r&&(!e||e.indexOf(n)<0))return!0;return!1},ga.prototype.handleWindowEvent=function(t){this.handleEvent(t,t.type+"Window")},ga.prototype._getMapTouches=function(t){for(var e=[],r=0,n=t;r<n.length;r+=1){var a=n[r];this._el.contains(a.target)&&e.push(a)}return e},ga.prototype.handleEvent=function(t,e){if("blur"!==t.type){this._updatingCamera=!0;for(var n="renderFrame"===t.type?void 0:t,a={needsRenderFrame:!1},i={},o={},s=t.touches?this._getMapTouches(t.touches):void 0,l=s?r.touchPos(this._el,s):r.mousePos(this._el,t),c=0,u=this._handlers;c<u.length;c+=1){var h=u[c],f=h.handlerName,p=h.handler,d=h.allowed;if(p.isEnabled()){var g=void 0;this._blockedByActive(o,d,f)?p.reset():p[e||t.type]&&(g=p[e||t.type](t,l,s),this.mergeHandlerResult(a,i,g,f,n),g&&g.needsRenderFrame&&this._triggerRenderFrame()),(g||p.isActive())&&(o[f]=p)}}var m={};for(var v in this._previousActiveHandlers)o[v]||(m[v]=n);this._previousActiveHandlers=o,(Object.keys(m).length||da(a))&&(this._changes.push([a,i,m]),this._triggerRenderFrame()),(Object.keys(o).length||da(a))&&this._map._stop(!0),this._updatingCamera=!1;var y=a.cameraAnimation;y&&(this._inertia.clear(),this._fireEvents({},{}),this._changes=[],y(this._map))}else this.stop()},ga.prototype.mergeHandlerResult=function(e,r,n,a,i){if(n){t.extend(e,n);var o={handlerName:a,originalEvent:n.originalEvent||i};void 0!==n.zoomDelta&&(r.zoom=o),void 0!==n.panDelta&&(r.drag=o),void 0!==n.pitchDelta&&(r.pitch=o),void 0!==n.bearingDelta&&(r.rotate=o)}},ga.prototype._applyChanges=function(){for(var e={},r={},n={},a=0,i=this._changes;a<i.length;a+=1){var o=i[a],s=o[0],l=o[1],c=o[2];s.panDelta&&(e.panDelta=(e.panDelta||new t.Point(0,0))._add(s.panDelta)),s.zoomDelta&&(e.zoomDelta=(e.zoomDelta||0)+s.zoomDelta),s.bearingDelta&&(e.bearingDelta=(e.bearingDelta||0)+s.bearingDelta),s.pitchDelta&&(e.pitchDelta=(e.pitchDelta||0)+s.pitchDelta),void 0!==s.around&&(e.around=s.around),void 0!==s.pinchAround&&(e.pinchAround=s.pinchAround),s.noInertia&&(e.noInertia=s.noInertia),t.extend(r,l),t.extend(n,c)}this._updateMapTransform(e,r,n),this._changes=[]},ga.prototype._updateMapTransform=function(t,e,r){var n=this._map,a=n.transform;if(!da(t))return this._fireEvents(e,r);var i=t.panDelta,o=t.zoomDelta,s=t.bearingDelta,l=t.pitchDelta,c=t.around,u=t.pinchAround;void 0!==u&&(c=u),n._stop(!0),c=c||n.transform.centerPoint;var h=a.pointLocation(i?c.sub(i):c);s&&(a.bearing+=s),l&&(a.pitch+=l),o&&(a.zoom+=o),a.setLocationAtPoint(h,c),this._map._update(),t.noInertia||this._inertia.record(t),this._fireEvents(e,r)},ga.prototype._fireEvents=function(e,r){var n=this,a=fa(this._eventsInProgress),i=fa(e),o={};for(var s in e)this._eventsInProgress[s]||(o[s+"start"]=e[s].originalEvent),this._eventsInProgress[s]=e[s];for(var l in!a&&i&&this._fireEvent("movestart",i.originalEvent),o)this._fireEvent(l,o[l]);for(var c in e.rotate&&(this._bearingChanged=!0),i&&this._fireEvent("move",i.originalEvent),e)this._fireEvent(c,e[c].originalEvent);var u,h={};for(var f in this._eventsInProgress){var p=this._eventsInProgress[f],d=p.handlerName,g=p.originalEvent;this._handlersById[d].isActive()||(delete this._eventsInProgress[f],h[f+"end"]=u=r[d]||g)}for(var m in h)this._fireEvent(m,h[m]);var v=fa(this._eventsInProgress);if((a||i)&&!v){this._updatingCamera=!0;var y=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),x=function(t){return 0!==t&&-n._bearingSnap<t&&t<n._bearingSnap};y?(x(y.bearing||this._map.getBearing())&&(y.bearing=0),this._map.easeTo(y,{originalEvent:u})):(this._map.fire(new t.Event("moveend",{originalEvent:u})),x(this._map.getBearing())&&this._map.resetNorth()),this._bearingChanged=!1,this._updatingCamera=!1}},ga.prototype._fireEvent=function(e,r){this._map.fire(new t.Event(e,r?{originalEvent:r}:{}))},ga.prototype._triggerRenderFrame=function(){var t=this;void 0===this._frameId&&(this._frameId=this._map._requestRenderFrame((function(e){delete t._frameId,t.handleEvent(new pa("renderFrame",{timeStamp:e})),t._applyChanges()})))};var ma=function(e){function r(r,n){e.call(this),this._moving=!1,this._zooming=!1,this.transform=r,this._bearingSnap=n.bearingSnap,t.bindAll(["_renderFrameCallback"],this)}return e&&(r.__proto__=e),(r.prototype=Object.create(e&&e.prototype)).constructor=r,r.prototype.getCenter=function(){return new t.LngLat(this.transform.center.lng,this.transform.center.lat)},r.prototype.setCenter=function(t,e){return this.jumpTo({center:t},e)},r.prototype.panBy=function(e,r,n){return e=t.Point.convert(e).mult(-1),this.panTo(this.transform.center,t.extend({offset:e},r),n)},r.prototype.panTo=function(e,r,n){return this.easeTo(t.extend({center:e},r),n)},r.prototype.getZoom=function(){return this.transform.zoom},r.prototype.setZoom=function(t,e){return this.jumpTo({zoom:t},e),this},r.prototype.zoomTo=function(e,r,n){return this.easeTo(t.extend({zoom:e},r),n)},r.prototype.zoomIn=function(t,e){return this.zoomTo(this.getZoom()+1,t,e),this},r.prototype.zoomOut=function(t,e){return this.zoomTo(this.getZoom()-1,t,e),this},r.prototype.getBearing=function(){return this.transform.bearing},r.prototype.setBearing=function(t,e){return this.jumpTo({bearing:t},e),this},r.prototype.getPadding=function(){return this.transform.padding},r.prototype.setPadding=function(t,e){return this.jumpTo({padding:t},e),this},r.prototype.rotateTo=function(e,r,n){return this.easeTo(t.extend({bearing:e},r),n)},r.prototype.resetNorth=function(e,r){return this.rotateTo(0,t.extend({duration:1e3},e),r),this},r.prototype.resetNorthPitch=function(e,r){return this.easeTo(t.extend({bearing:0,pitch:0,duration:1e3},e),r),this},r.prototype.snapToNorth=function(t,e){return Math.abs(this.getBearing())<this._bearingSnap?this.resetNorth(t,e):this},r.prototype.getPitch=function(){return this.transform.pitch},r.prototype.setPitch=function(t,e){return this.jumpTo({pitch:t},e),this},r.prototype.cameraForBounds=function(e,r){return e=t.LngLatBounds.convert(e),this._cameraForBoxAndBearing(e.getNorthWest(),e.getSouthEast(),0,r)},r.prototype._cameraForBoxAndBearing=function(e,r,n,a){var i={top:0,bottom:0,right:0,left:0};if("number"==typeof(a=t.extend({padding:i,offset:[0,0],maxZoom:this.transform.maxZoom},a)).padding){var o=a.padding;a.padding={top:o,bottom:o,right:o,left:o}}a.padding=t.extend(i,a.padding);var s=this.transform,l=s.padding,c=s.project(t.LngLat.convert(e)),u=s.project(t.LngLat.convert(r)),h=c.rotate(-n*Math.PI/180),f=u.rotate(-n*Math.PI/180),p=new t.Point(Math.max(h.x,f.x),Math.max(h.y,f.y)),d=new t.Point(Math.min(h.x,f.x),Math.min(h.y,f.y)),g=p.sub(d),m=(s.width-(l.left+l.right+a.padding.left+a.padding.right))/g.x,v=(s.height-(l.top+l.bottom+a.padding.top+a.padding.bottom))/g.y;if(!(v<0||m<0)){var y=Math.min(s.scaleZoom(s.scale*Math.min(m,v)),a.maxZoom),x=t.Point.convert(a.offset),b=new t.Point(x.x+(a.padding.left-a.padding.right)/2,x.y+(a.padding.top-a.padding.bottom)/2).mult(s.scale/s.zoomScale(y));return{center:s.unproject(c.add(u).div(2).sub(b)),zoom:y,bearing:n}}t.warnOnce("Map cannot fit within canvas with the given bounds, padding, and/or offset.")},r.prototype.fitBounds=function(t,e,r){return this._fitInternal(this.cameraForBounds(t,e),e,r)},r.prototype.fitScreenCoordinates=function(e,r,n,a,i){return this._fitInternal(this._cameraForBoxAndBearing(this.transform.pointLocation(t.Point.convert(e)),this.transform.pointLocation(t.Point.convert(r)),n,a),a,i)},r.prototype._fitInternal=function(e,r,n){return e?(delete(r=t.extend(e,r)).padding,r.linear?this.easeTo(r,n):this.flyTo(r,n)):this},r.prototype.jumpTo=function(e,r){this.stop();var n=this.transform,a=!1,i=!1,o=!1;return"zoom"in e&&n.zoom!==+e.zoom&&(a=!0,n.zoom=+e.zoom),void 0!==e.center&&(n.center=t.LngLat.convert(e.center)),"bearing"in e&&n.bearing!==+e.bearing&&(i=!0,n.bearing=+e.bearing),"pitch"in e&&n.pitch!==+e.pitch&&(o=!0,n.pitch=+e.pitch),null==e.padding||n.isPaddingEqual(e.padding)||(n.padding=e.padding),this.fire(new t.Event("movestart",r)).fire(new t.Event("move",r)),a&&this.fire(new t.Event("zoomstart",r)).fire(new t.Event("zoom",r)).fire(new t.Event("zoomend",r)),i&&this.fire(new t.Event("rotatestart",r)).fire(new t.Event("rotate",r)).fire(new t.Event("rotateend",r)),o&&this.fire(new t.Event("pitchstart",r)).fire(new t.Event("pitch",r)).fire(new t.Event("pitchend",r)),this.fire(new t.Event("moveend",r))},r.prototype.easeTo=function(e,r){var n=this;this._stop(!1,e.easeId),(!1===(e=t.extend({offset:[0,0],duration:500,easing:t.ease},e)).animate||!e.essential&&t.browser.prefersReducedMotion)&&(e.duration=0);var a=this.transform,i=this.getZoom(),o=this.getBearing(),s=this.getPitch(),l=this.getPadding(),c="zoom"in e?+e.zoom:i,u="bearing"in e?this._normalizeBearing(e.bearing,o):o,h="pitch"in e?+e.pitch:s,f="padding"in e?e.padding:a.padding,p=t.Point.convert(e.offset),d=a.centerPoint.add(p),g=a.pointLocation(d),m=t.LngLat.convert(e.center||g);this._normalizeCenter(m);var v,y,x=a.project(g),b=a.project(m).sub(x),_=a.zoomScale(c-i);e.around&&(v=t.LngLat.convert(e.around),y=a.locationPoint(v));var w={moving:this._moving,zooming:this._zooming,rotating:this._rotating,pitching:this._pitching};return this._zooming=this._zooming||c!==i,this._rotating=this._rotating||o!==u,this._pitching=this._pitching||h!==s,this._padding=!a.isPaddingEqual(f),this._easeId=e.easeId,this._prepareEase(r,e.noMoveStart,w),clearTimeout(this._easeEndTimeoutID),this._ease((function(e){if(n._zooming&&(a.zoom=t.number(i,c,e)),n._rotating&&(a.bearing=t.number(o,u,e)),n._pitching&&(a.pitch=t.number(s,h,e)),n._padding&&(a.interpolatePadding(l,f,e),d=a.centerPoint.add(p)),v)a.setLocationAtPoint(v,y);else{var g=a.zoomScale(a.zoom-i),m=c>i?Math.min(2,_):Math.max(.5,_),w=Math.pow(m,1-e),T=a.unproject(x.add(b.mult(e*w)).mult(g));a.setLocationAtPoint(a.renderWorldCopies?T.wrap():T,d)}n._fireMoveEvents(r)}),(function(t){n._afterEase(r,t)}),e),this},r.prototype._prepareEase=function(e,r,n){void 0===n&&(n={}),this._moving=!0,r||n.moving||this.fire(new t.Event("movestart",e)),this._zooming&&!n.zooming&&this.fire(new t.Event("zoomstart",e)),this._rotating&&!n.rotating&&this.fire(new t.Event("rotatestart",e)),this._pitching&&!n.pitching&&this.fire(new t.Event("pitchstart",e))},r.prototype._fireMoveEvents=function(e){this.fire(new t.Event("move",e)),this._zooming&&this.fire(new t.Event("zoom",e)),this._rotating&&this.fire(new t.Event("rotate",e)),this._pitching&&this.fire(new t.Event("pitch",e))},r.prototype._afterEase=function(e,r){if(!this._easeId||!r||this._easeId!==r){delete this._easeId;var n=this._zooming,a=this._rotating,i=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,n&&this.fire(new t.Event("zoomend",e)),a&&this.fire(new t.Event("rotateend",e)),i&&this.fire(new t.Event("pitchend",e)),this.fire(new t.Event("moveend",e))}},r.prototype.flyTo=function(e,r){var n=this;if(!e.essential&&t.browser.prefersReducedMotion){var a=t.pick(e,["center","zoom","bearing","pitch","around"]);return this.jumpTo(a,r)}this.stop(),e=t.extend({offset:[0,0],speed:1.2,curve:1.42,easing:t.ease},e);var i=this.transform,o=this.getZoom(),s=this.getBearing(),l=this.getPitch(),c=this.getPadding(),u="zoom"in e?t.clamp(+e.zoom,i.minZoom,i.maxZoom):o,h="bearing"in e?this._normalizeBearing(e.bearing,s):s,f="pitch"in e?+e.pitch:l,p="padding"in e?e.padding:i.padding,d=i.zoomScale(u-o),g=t.Point.convert(e.offset),m=i.centerPoint.add(g),v=i.pointLocation(m),y=t.LngLat.convert(e.center||v);this._normalizeCenter(y);var x=i.project(v),b=i.project(y).sub(x),_=e.curve,w=Math.max(i.width,i.height),T=w/d,k=b.mag();if("minZoom"in e){var A=t.clamp(Math.min(e.minZoom,o,u),i.minZoom,i.maxZoom),M=w/i.zoomScale(A-o);_=Math.sqrt(M/k*2)}var S=_*_;function E(t){var e=(T*T-w*w+(t?-1:1)*S*S*k*k)/(2*(t?T:w)*S*k);return Math.log(Math.sqrt(e*e+1)-e)}function C(t){return(Math.exp(t)-Math.exp(-t))/2}function L(t){return(Math.exp(t)+Math.exp(-t))/2}var P=E(0),I=function(t){return L(P)/L(P+_*t)},z=function(t){return w*((L(P)*(C(e=P+_*t)/L(e))-C(P))/S)/k;var e},O=(E(1)-P)/_;if(Math.abs(k)<1e-6||!isFinite(O)){if(Math.abs(w-T)<1e-6)return this.easeTo(e,r);var D=T<w?-1:1;O=Math.abs(Math.log(T/w))/_,z=function(){return 0},I=function(t){return Math.exp(D*_*t)}}return e.duration="duration"in e?+e.duration:1e3*O/("screenSpeed"in e?+e.screenSpeed/_:+e.speed),e.maxDuration&&e.duration>e.maxDuration&&(e.duration=0),this._zooming=!0,this._rotating=s!==h,this._pitching=f!==l,this._padding=!i.isPaddingEqual(p),this._prepareEase(r,!1),this._ease((function(e){var a=e*O,d=1/I(a);i.zoom=1===e?u:o+i.scaleZoom(d),n._rotating&&(i.bearing=t.number(s,h,e)),n._pitching&&(i.pitch=t.number(l,f,e)),n._padding&&(i.interpolatePadding(c,p,e),m=i.centerPoint.add(g));var v=1===e?y:i.unproject(x.add(b.mult(z(a))).mult(d));i.setLocationAtPoint(i.renderWorldCopies?v.wrap():v,m),n._fireMoveEvents(r)}),(function(){return n._afterEase(r)}),e),this},r.prototype.isEasing=function(){return!!this._easeFrameId},r.prototype.stop=function(){return this._stop()},r.prototype._stop=function(t,e){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){var r=this._onEaseEnd;delete this._onEaseEnd,r.call(this,e)}if(!t){var n=this.handlers;n&&n.stop()}return this},r.prototype._ease=function(e,r,n){!1===n.animate||0===n.duration?(e(1),r()):(this._easeStart=t.browser.now(),this._easeOptions=n,this._onEaseFrame=e,this._onEaseEnd=r,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))},r.prototype._renderFrameCallback=function(){var e=Math.min((t.browser.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(e)),e<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},r.prototype._normalizeBearing=function(e,r){e=t.wrap(e,-180,180);var n=Math.abs(e-r);return Math.abs(e-360-r)<n&&(e-=360),Math.abs(e+360-r)<n&&(e+=360),e},r.prototype._normalizeCenter=function(t){var e=this.transform;if(e.renderWorldCopies&&!e.lngRange){var r=t.lng-e.center.lng;t.lng+=r>180?-360:r<-180?360:0}},r}(t.Evented),va=function(e){void 0===e&&(e={}),this.options=e,t.bindAll(["_updateEditLink","_updateData","_updateCompact"],this)};va.prototype.getDefaultPosition=function(){return"bottom-right"},va.prototype.onAdd=function(t){var e=this.options&&this.options.compact;return this._map=t,this._container=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),this._innerContainer=r.create("div","mapboxgl-ctrl-attrib-inner",this._container),e&&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),void 0===e&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container},va.prototype.onRemove=function(){r.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},va.prototype._updateEditLink=function(){var e=this._editLink;e||(e=this._editLink=this._container.querySelector(".mapbox-improve-map"));var r=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:this._map._requestManager._customAccessToken||t.config.ACCESS_TOKEN}];if(e){var n=r.reduce((function(t,e,n){return e.value&&(t+=e.key+"="+e.value+(n<r.length-1?"&":"")),t}),"?");e.href=t.config.FEEDBACK_URL+"/"+n+(this._map._hash?this._map._hash.getHashString(!0):""),e.rel="noopener nofollow"}},va.prototype._updateData=function(t){!t||"metadata"!==t.sourceDataType&&"style"!==t.dataType||(this._updateAttributions(),this._updateEditLink())},va.prototype._updateAttributions=function(){if(this._map.style){var t=[];if(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?t=t.concat(this.options.customAttribution.map((function(t){return"string"!=typeof t?"":t}))):"string"==typeof this.options.customAttribution&&t.push(this.options.customAttribution)),this._map.style.stylesheet){var e=this._map.style.stylesheet;this.styleOwner=e.owner,this.styleId=e.id}var r=this._map.style.sourceCaches;for(var n in r){var a=r[n];if(a.used){var i=a.getSource();i.attribution&&t.indexOf(i.attribution)<0&&t.push(i.attribution)}}t.sort((function(t,e){return t.length-e.length}));var o=(t=t.filter((function(e,r){for(var n=r+1;n<t.length;n++)if(t[n].indexOf(e)>=0)return!1;return!0}))).join(" | ");o!==this._attribHTML&&(this._attribHTML=o,t.length?(this._innerContainer.innerHTML=o,this._container.classList.remove("mapboxgl-attrib-empty")):this._container.classList.add("mapboxgl-attrib-empty"),this._editLink=null)}},va.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add("mapboxgl-compact"):this._container.classList.remove("mapboxgl-compact")};var ya=function(){t.bindAll(["_updateLogo"],this),t.bindAll(["_updateCompact"],this)};ya.prototype.onAdd=function(t){this._map=t,this._container=r.create("div","mapboxgl-ctrl");var e=r.create("a","mapboxgl-ctrl-logo");return e.target="_blank",e.rel="noopener nofollow",e.href="https://www.mapbox.com/",e.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),e.setAttribute("rel","noopener nofollow"),this._container.appendChild(e),this._container.style.display="none",this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._map.on("resize",this._updateCompact),this._updateCompact(),this._container},ya.prototype.onRemove=function(){r.remove(this._container),this._map.off("sourcedata",this._updateLogo),this._map.off("resize",this._updateCompact)},ya.prototype.getDefaultPosition=function(){return"bottom-left"},ya.prototype._updateLogo=function(t){t&&"metadata"!==t.sourceDataType||(this._container.style.display=this._logoRequired()?"block":"none")},ya.prototype._logoRequired=function(){if(this._map.style){var t=this._map.style.sourceCaches;for(var e in t)if(t[e].getSource().mapbox_logo)return!0;return!1}},ya.prototype._updateCompact=function(){var t=this._container.children;if(t.length){var e=t[0];this._map.getCanvasContainer().offsetWidth<250?e.classList.add("mapboxgl-compact"):e.classList.remove("mapboxgl-compact")}};var xa=function(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1};xa.prototype.add=function(t){var e=++this._id;return this._queue.push({callback:t,id:e,cancelled:!1}),e},xa.prototype.remove=function(t){for(var e=this._currentlyRunning,r=0,n=e?this._queue.concat(e):this._queue;r<n.length;r+=1){var a=n[r];if(a.id===t)return void(a.cancelled=!0)}},xa.prototype.run=function(t){void 0===t&&(t=0);var e=this._currentlyRunning=this._queue;this._queue=[];for(var r=0,n=e;r<n.length;r+=1){var a=n[r];if(!a.cancelled&&(a.callback(t),this._cleared))break}this._cleared=!1,this._currentlyRunning=!1},xa.prototype.clear=function(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]};var ba={"FullscreenControl.Enter":"Enter fullscreen","FullscreenControl.Exit":"Exit fullscreen","GeolocateControl.FindMyLocation":"Find my location","GeolocateControl.LocationNotAvailable":"Location not available","LogoControl.Title":"Mapbox logo","NavigationControl.ResetBearing":"Reset bearing to north","NavigationControl.ZoomIn":"Zoom in","NavigationControl.ZoomOut":"Zoom out","ScaleControl.Feet":"ft","ScaleControl.Meters":"m","ScaleControl.Kilometers":"km","ScaleControl.Miles":"mi","ScaleControl.NauticalMiles":"nm"},_a=t.window.HTMLImageElement,wa=t.window.HTMLElement,Ta=t.window.ImageBitmap,ka={center:[0,0],zoom:0,bearing:0,pitch:0,minZoom:-2,maxZoom:22,minPitch:0,maxPitch:60,interactive:!0,scrollZoom:!0,boxZoom:!0,dragRotate:!0,dragPan:!0,keyboard:!0,doubleClickZoom:!0,touchZoomRotate:!0,touchPitch:!0,bearingSnap:7,clickTolerance:3,pitchWithRotate:!0,hash:!1,attributionControl:!0,failIfMajorPerformanceCaveat:!1,preserveDrawingBuffer:!1,trackResize:!0,renderWorldCopies:!0,refreshExpiredTiles:!0,maxTileCacheSize:null,localIdeographFontFamily:"sans-serif",transformRequest:null,accessToken:null,fadeDuration:300,crossSourceCollisions:!0},Aa=function(n){function a(e){var r=this;if(null!=(e=t.extend({},ka,e)).minZoom&&null!=e.maxZoom&&e.minZoom>e.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(null!=e.minPitch&&null!=e.maxPitch&&e.minPitch>e.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(null!=e.minPitch&&e.minPitch<0)throw new Error("minPitch must be greater than or equal to 0");if(null!=e.maxPitch&&e.maxPitch>60)throw new Error("maxPitch must be less than or equal to 60");var a=new wn(e.minZoom,e.maxZoom,e.minPitch,e.maxPitch,e.renderWorldCopies);if(n.call(this,a,e),this._interactive=e.interactive,this._maxTileCacheSize=e.maxTileCacheSize,this._failIfMajorPerformanceCaveat=e.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=e.preserveDrawingBuffer,this._antialias=e.antialias,this._trackResize=e.trackResize,this._bearingSnap=e.bearingSnap,this._refreshExpiredTiles=e.refreshExpiredTiles,this._fadeDuration=e.fadeDuration,this._crossSourceCollisions=e.crossSourceCollisions,this._crossFadingFactor=1,this._collectResourceTiming=e.collectResourceTiming,this._renderTaskQueue=new xa,this._controls=[],this._mapId=t.uniqueId(),this._locale=t.extend({},ba,e.locale),this._requestManager=new t.RequestManager(e.transformRequest,e.accessToken),"string"==typeof e.container){if(this._container=t.window.document.getElementById(e.container),!this._container)throw new Error("Container '"+e.container+"' not found.")}else{if(!(e.container instanceof wa))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=e.container}if(e.maxBounds&&this.setMaxBounds(e.maxBounds),t.bindAll(["_onWindowOnline","_onWindowResize","_contextLost","_contextRestored"],this),this._setupContainer(),this._setupPainter(),void 0===this.painter)throw new Error("Failed to initialize WebGL.");this.on("move",(function(){return r._update(!1)})),this.on("moveend",(function(){return r._update(!1)})),this.on("zoom",(function(){return r._update(!0)})),void 0!==t.window&&(t.window.addEventListener("online",this._onWindowOnline,!1),t.window.addEventListener("resize",this._onWindowResize,!1)),this.handlers=new ga(this,e),this._hash=e.hash&&new kn("string"==typeof e.hash&&e.hash||void 0).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:e.center,zoom:e.zoom,bearing:e.bearing,pitch:e.pitch}),e.bounds&&(this.resize(),this.fitBounds(e.bounds,t.extend({},e.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=e.localIdeographFontFamily,e.style&&this.setStyle(e.style,{localIdeographFontFamily:e.localIdeographFontFamily}),e.attributionControl&&this.addControl(new va({customAttribution:e.customAttribution})),this.addControl(new ya,e.logoPosition),this.on("style.load",(function(){r.transform.unmodified&&r.jumpTo(r.style.stylesheet)})),this.on("data",(function(e){r._update("style"===e.dataType),r.fire(new t.Event(e.dataType+"data",e))})),this.on("dataloading",(function(e){r.fire(new t.Event(e.dataType+"dataloading",e))}))}n&&(a.__proto__=n),(a.prototype=Object.create(n&&n.prototype)).constructor=a;var i={showTileBoundaries:{configurable:!0},showPadding:{configurable:!0},showCollisionBoxes:{configurable:!0},showOverdrawInspector:{configurable:!0},repaint:{configurable:!0},vertices:{configurable:!0},version:{configurable:!0}};return a.prototype._getMapId=function(){return this._mapId},a.prototype.addControl=function(e,r){if(void 0===r&&e.getDefaultPosition&&(r=e.getDefaultPosition()),void 0===r&&(r="top-right"),!e||!e.onAdd)return this.fire(new t.ErrorEvent(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));var n=e.onAdd(this);this._controls.push(e);var a=this._controlPositions[r];return-1!==r.indexOf("bottom")?a.insertBefore(n,a.firstChild):a.appendChild(n),this},a.prototype.removeControl=function(e){if(!e||!e.onRemove)return this.fire(new t.ErrorEvent(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));var r=this._controls.indexOf(e);return r>-1&&this._controls.splice(r,1),e.onRemove(this),this},a.prototype.resize=function(e){var r=this._containerDimensions(),n=r[0],a=r[1];this._resizeCanvas(n,a),this.transform.resize(n,a),this.painter.resize(n,a);var i=!this._moving;return i&&(this.stop(),this.fire(new t.Event("movestart",e)).fire(new t.Event("move",e))),this.fire(new t.Event("resize",e)),i&&this.fire(new t.Event("moveend",e)),this},a.prototype.getBounds=function(){return this.transform.getBounds()},a.prototype.getMaxBounds=function(){return this.transform.getMaxBounds()},a.prototype.setMaxBounds=function(e){return this.transform.setMaxBounds(t.LngLatBounds.convert(e)),this._update()},a.prototype.setMinZoom=function(t){if((t=null==t?-2:t)>=-2&&t<=this.transform.maxZoom)return this.transform.minZoom=t,this._update(),this.getZoom()<t&&this.setZoom(t),this;throw new Error("minZoom must be between -2 and the current maxZoom, inclusive")},a.prototype.getMinZoom=function(){return this.transform.minZoom},a.prototype.setMaxZoom=function(t){if((t=null==t?22:t)>=this.transform.minZoom)return this.transform.maxZoom=t,this._update(),this.getZoom()>t&&this.setZoom(t),this;throw new Error("maxZoom must be greater than the current minZoom")},a.prototype.getMaxZoom=function(){return this.transform.maxZoom},a.prototype.setMinPitch=function(t){if((t=null==t?0:t)<0)throw new Error("minPitch must be greater than or equal to 0");if(t>=0&&t<=this.transform.maxPitch)return this.transform.minPitch=t,this._update(),this.getPitch()<t&&this.setPitch(t),this;throw new Error("minPitch must be between 0 and the current maxPitch, inclusive")},a.prototype.getMinPitch=function(){return this.transform.minPitch},a.prototype.setMaxPitch=function(t){if((t=null==t?60:t)>60)throw new Error("maxPitch must be less than or equal to 60");if(t>=this.transform.minPitch)return this.transform.maxPitch=t,this._update(),this.getPitch()>t&&this.setPitch(t),this;throw new Error("maxPitch must be greater than the current minPitch")},a.prototype.getMaxPitch=function(){return this.transform.maxPitch},a.prototype.getRenderWorldCopies=function(){return this.transform.renderWorldCopies},a.prototype.setRenderWorldCopies=function(t){return this.transform.renderWorldCopies=t,this._update()},a.prototype.project=function(e){return this.transform.locationPoint(t.LngLat.convert(e))},a.prototype.unproject=function(e){return this.transform.pointLocation(t.Point.convert(e))},a.prototype.isMoving=function(){return this._moving||this.handlers.isMoving()},a.prototype.isZooming=function(){return this._zooming||this.handlers.isZooming()},a.prototype.isRotating=function(){return this._rotating||this.handlers.isRotating()},a.prototype._createDelegatedListener=function(t,e,r){var n,a=this;if("mouseenter"===t||"mouseover"===t){var i=!1;return{layer:e,listener:r,delegates:{mousemove:function(n){var o=a.getLayer(e)?a.queryRenderedFeatures(n.point,{layers:[e]}):[];o.length?i||(i=!0,r.call(a,new zn(t,a,n.originalEvent,{features:o}))):i=!1},mouseout:function(){i=!1}}}}if("mouseleave"===t||"mouseout"===t){var o=!1;return{layer:e,listener:r,delegates:{mousemove:function(n){(a.getLayer(e)?a.queryRenderedFeatures(n.point,{layers:[e]}):[]).length?o=!0:o&&(o=!1,r.call(a,new zn(t,a,n.originalEvent)))},mouseout:function(e){o&&(o=!1,r.call(a,new zn(t,a,e.originalEvent)))}}}}return{layer:e,listener:r,delegates:(n={},n[t]=function(t){var n=a.getLayer(e)?a.queryRenderedFeatures(t.point,{layers:[e]}):[];n.length&&(t.features=n,r.call(a,t),delete t.features)},n)}},a.prototype.on=function(t,e,r){if(void 0===r)return n.prototype.on.call(this,t,e);var a=this._createDelegatedListener(t,e,r);for(var i in this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[t]=this._delegatedListeners[t]||[],this._delegatedListeners[t].push(a),a.delegates)this.on(i,a.delegates[i]);return this},a.prototype.once=function(t,e,r){if(void 0===r)return n.prototype.once.call(this,t,e);var a=this._createDelegatedListener(t,e,r);for(var i in a.delegates)this.once(i,a.delegates[i]);return this},a.prototype.off=function(t,e,r){var a=this;return void 0===r?n.prototype.off.call(this,t,e):(this._delegatedListeners&&this._delegatedListeners[t]&&function(n){for(var i=n[t],o=0;o<i.length;o++){var s=i[o];if(s.layer===e&&s.listener===r){for(var l in s.delegates)a.off(l,s.delegates[l]);return i.splice(o,1),a}}}(this._delegatedListeners),this)},a.prototype.queryRenderedFeatures=function(e,r){if(!this.style)return[];var n;if(void 0!==r||void 0===e||e instanceof t.Point||Array.isArray(e)||(r=e,e=void 0),r=r||{},(e=e||[[0,0],[this.transform.width,this.transform.height]])instanceof t.Point||"number"==typeof e[0])n=[t.Point.convert(e)];else{var a=t.Point.convert(e[0]),i=t.Point.convert(e[1]);n=[a,new t.Point(i.x,a.y),i,new t.Point(a.x,i.y),a]}return this.style.queryRenderedFeatures(n,r,this.transform)},a.prototype.querySourceFeatures=function(t,e){return this.style.querySourceFeatures(t,e)},a.prototype.setStyle=function(e,r){return!1!==(r=t.extend({},{localIdeographFontFamily:this._localIdeographFontFamily},r)).diff&&r.localIdeographFontFamily===this._localIdeographFontFamily&&this.style&&e?(this._diffStyle(e,r),this):(this._localIdeographFontFamily=r.localIdeographFontFamily,this._updateStyle(e,r))},a.prototype._getUIString=function(t){var e=this._locale[t];if(null==e)throw new Error("Missing UI string '"+t+"'");return e},a.prototype._updateStyle=function(t,e){return this.style&&(this.style.setEventedParent(null),this.style._remove()),t?(this.style=new qe(this,e||{}),this.style.setEventedParent(this,{style:this.style}),"string"==typeof t?this.style.loadURL(t):this.style.loadJSON(t),this):(delete this.style,this)},a.prototype._lazyInitEmptyStyle=function(){this.style||(this.style=new qe(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())},a.prototype._diffStyle=function(e,r){var n=this;if("string"==typeof e){var a=this._requestManager.normalizeStyleURL(e),i=this._requestManager.transformRequest(a,t.ResourceType.Style);t.getJSON(i,(function(e,a){e?n.fire(new t.ErrorEvent(e)):a&&n._updateDiff(a,r)}))}else"object"==typeof e&&this._updateDiff(e,r)},a.prototype._updateDiff=function(e,r){try{this.style.setState(e)&&this._update(!0)}catch(n){t.warnOnce("Unable to perform style diff: "+(n.message||n.error||n)+". Rebuilding the style from scratch."),this._updateStyle(e,r)}},a.prototype.getStyle=function(){if(this.style)return this.style.serialize()},a.prototype.isStyleLoaded=function(){return this.style?this.style.loaded():t.warnOnce("There is no style added to the map.")},a.prototype.addSource=function(t,e){return this._lazyInitEmptyStyle(),this.style.addSource(t,e),this._update(!0)},a.prototype.isSourceLoaded=function(e){var r=this.style&&this.style.sourceCaches[e];if(void 0!==r)return r.loaded();this.fire(new t.ErrorEvent(new Error("There is no source with ID '"+e+"'")))},a.prototype.areTilesLoaded=function(){var t=this.style&&this.style.sourceCaches;for(var e in t){var r=t[e]._tiles;for(var n in r){var a=r[n];if("loaded"!==a.state&&"errored"!==a.state)return!1}}return!0},a.prototype.addSourceType=function(t,e,r){return this._lazyInitEmptyStyle(),this.style.addSourceType(t,e,r)},a.prototype.removeSource=function(t){return this.style.removeSource(t),this._update(!0)},a.prototype.getSource=function(t){return this.style.getSource(t)},a.prototype.addImage=function(e,r,n){void 0===n&&(n={});var a=n.pixelRatio;void 0===a&&(a=1);var i=n.sdf;void 0===i&&(i=!1);var o=n.stretchX,s=n.stretchY,l=n.content;if(this._lazyInitEmptyStyle(),r instanceof _a||Ta&&r instanceof Ta){var c=t.browser.getImageData(r);this.style.addImage(e,{data:new t.RGBAImage({width:c.width,height:c.height},c.data),pixelRatio:a,stretchX:o,stretchY:s,content:l,sdf:i,version:0})}else{if(void 0===r.width||void 0===r.height)return this.fire(new t.ErrorEvent(new Error("Invalid arguments to map.addImage(). The second argument must be anHTMLImageElement,ImageData,ImageBitmap, or object withwidth,height, anddataproperties with the same format asImageData")));var u=r;this.style.addImage(e,{data:new t.RGBAImage({width:r.width,height:r.height},new Uint8Array(r.data)),pixelRatio:a,stretchX:o,stretchY:s,content:l,sdf:i,version:0,userImage:u}),u.onAdd&&u.onAdd(this,e)}},a.prototype.updateImage=function(e,r){var n=this.style.getImage(e);if(!n)return this.fire(new t.ErrorEvent(new Error("The map has no image with that id. If you are adding a new image usemap.addImage(…)instead.")));var a=r instanceof _a||Ta&&r instanceof Ta?t.browser.getImageData(r):r,i=a.width,o=a.height,s=a.data;return void 0===i||void 0===o?this.fire(new t.ErrorEvent(new Error("Invalid arguments to map.updateImage(). The second argument must be anHTMLImageElement,ImageData,ImageBitmap, or object withwidth,height, anddataproperties with the same format asImageData`“))):i!==n.data.width||o!==n.data.height?this.fire(new t.ErrorEvent(new Error(“The width and height of the updated image must be that same as the previous version of the image”))):(n.data.replace(s,!(r instanceof _a||Ta&&r instanceof Ta)),void this.style.updateImage(e,n))},a.prototype.hasImage=function(e){return e?!!this.style.getImage(e):(this.fire(new t.ErrorEvent(new Error(“Missing required image id”))),!1)},a.prototype.removeImage=function(t){this.style.removeImage(t)},a.prototype.loadImage=function(e,r){t.getImage(this._requestManager.transformRequest(e,t.ResourceType.Image),r)},a.prototype.listImages=function(){return this.style.listImages()},a.prototype.addLayer=function(t,e){return this._lazyInitEmptyStyle(),this.style.addLayer(t,e),this._update(!0)},a.prototype.moveLayer=function(t,e){return this.style.moveLayer(t,e),this._update(!0)},a.prototype.removeLayer=function(t){return this.style.removeLayer(t),this._update(!0)},a.prototype.getLayer=function(t){return this.style.getLayer(t)},a.prototype.setLayerZoomRange=function(t,e,r){return this.style.setLayerZoomRange(t,e,r),this._update(!0)},a.prototype.setFilter=function(t,e,r){return void 0===r&&(r={}),this.style.setFilter(t,e,r),this._update(!0)},a.prototype.getFilter=function(t){return this.style.getFilter(t)},a.prototype.setPaintProperty=function(t,e,r,n){return void 0===n&&(n={}),this.style.setPaintProperty(t,e,r,n),this._update(!0)},a.prototype.getPaintProperty=function(t,e){return this.style.getPaintProperty(t,e)},a.prototype.setLayoutProperty=function(t,e,r,n){return void 0===n&&(n={}),this.style.setLayoutProperty(t,e,r,n),this._update(!0)},a.prototype.getLayoutProperty=function(t,e){return this.style.getLayoutProperty(t,e)},a.prototype.setLight=function(t,e){return void 0===e&&(e={}),this._lazyInitEmptyStyle(),this.style.setLight(t,e),this._update(!0)},a.prototype.getLight=function(){return this.style.getLight()},a.prototype.setFeatureState=function(t,e){return this.style.setFeatureState(t,e),this._update()},a.prototype.removeFeatureState=function(t,e){return this.style.removeFeatureState(t,e),this._update()},a.prototype.getFeatureState=function(t){return this.style.getFeatureState(t)},a.prototype.getContainer=function(){return this._container},a.prototype.getCanvasContainer=function(){return this._canvasContainer},a.prototype.getCanvas=function(){return this._canvas},a.prototype._containerDimensions=function(){var t=0,e=0;return this._container&&(t=this._container.clientWidth||400,e=this._container.clientHeight||300),[t,e]},a.prototype._detectMissingCSS=function(){“rgb(250, 128, 114)”!==t.window.getComputedStyle(this._missingCSSCanary).getPropertyValue(“background-color”)&&t.warnOnce(“This page appears to be missing CSS declarations for Mapbox GL JS, which may cause the map to display incorrectly. Please ensure your page includes mapbox-gl.css, as described in https://www.mapbox.com/mapbox-gl-js/api/.")},a.prototype._setupContainer=function(){var t=this._container;t.classList.add(“mapboxgl-map”),(this._missingCSSCanary=r.create(“div”,“mapboxgl-canary”,t)).style.visibility=“hidden”,this._detectMissingCSS();var e=this._canvasContainer=r.create(“div”,“mapboxgl-canvas-container”,t);this._interactive&&e.classList.add(“mapboxgl-interactive”),this._canvas=r.create(“canvas”,“mapboxgl-canvas”,e),this._canvas.addEventListener(“webglcontextlost”,this._contextLost,!1),this._canvas.addEventListener(“webglcontextrestored”,this._contextRestored,!1),this._canvas.setAttribute(“tabindex”,“0”),this._canvas.setAttribute(“aria-label”,“Map”);var n=this._containerDimensions();this._resizeCanvas(n[0],n[1]);var a=this._controlContainer=r.create(“div”,“mapboxgl-control-container”,t),i=this._controlPositions={};[“top-left”,“top-right”,“bottom-left”,“bottom-right”].forEach((function(t){i[t]=r.create(“div”,“mapboxgl-ctrl-”+t,a)}))},a.prototype._resizeCanvas=function(e,r){var n=t.browser.devicePixelRatio||1;this._canvas.width=n*e,this._canvas.height=nr,this._canvas.style.width=e+“px”,this._canvas.style.height=r+“px”},a.prototype._setupPainter=function(){var r=t.extend({},e.webGLContextAttributes,{failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1}),n=this._canvas.getContext(“webgl”,r)||this._canvas.getContext(“experimental-webgl”,r);n?(this.painter=new yn(n,this.transform),t.webpSupported.testSupport(n)):this.fire(new t.ErrorEvent(new Error(“Failed to initialize WebGL”)))},a.prototype._contextLost=function(e){e.preventDefault(),this._frame&&(this._frame.cancel(),this._frame=null),this.fire(new t.Event(“webglcontextlost”,{originalEvent:e}))},a.prototype._contextRestored=function(e){this._setupPainter(),this.resize(),this._update(),this.fire(new t.Event(“webglcontextrestored”,{originalEvent:e}))},a.prototype.loaded=function(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()},a.prototype._update=function(t){return this.style?(this._styleDirty=this._styleDirty||t,this._sourcesDirty=!0,this.triggerRepaint(),this):this},a.prototype._requestRenderFrame=function(t){return this._update(),this._renderTaskQueue.add(t)},a.prototype._cancelRenderFrame=function(t){this._renderTaskQueue.remove(t)},a.prototype._render=function(e){var r,n=this,a=0,i=this.painter.context.extTimerQuery;if(this.listens(“gpu-timing-frame”)&&(r=i.createQueryEXT(),i.beginQueryEXT(i.TIME_ELAPSED_EXT,r),a=t.browser.now()),this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(e),!this._removed){var o=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;var s=this.transform.zoom,l=t.browser.now();this.style.zoomHistory.update(s,l);var c=new t.EvaluationParameters(s,{now:l,fadeDuration:this._fadeDuration,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),u=c.crossFadingFactor();1===u&&u===this._crossFadingFactor||(o=!0,this._crossFadingFactor=u),this.style.update©}if(this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,this._fadeDuration,this._crossSourceCollisions),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:this._fadeDuration,showPadding:this.showPadding,gpuTiming:!!this.listens(“gpu-timing-layer”)}),this.fire(new t.Event(“render”)),this.loaded()&&!this._loaded&&(this._loaded=!0,this.fire(new t.Event(“load”))),this.style&&(this.style.hasTransitions()||o)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles(),this.listens(“gpu-timing-frame”)){var h=t.browser.now()-a;i.endQueryEXT(i.TIME_ELAPSED_EXT,r),setTimeout((function(){var e=i.getQueryObjectEXT(r,i.QUERY_RESULT_EXT)/1e6;i.deleteQueryEXT®,n.fire(new t.Event(“gpu-timing-frame”,{cpuTime:h,gpuTime:e}))}),50)}if(this.listens(“gpu-timing-layer”)){var f=this.painter.collectGpuTimers();setTimeout((function(){var e=n.painter.queryGpuTimers(f);n.fire(new t.Event(“gpu-timing-layer”,{layerTimes:e}))}),50)}return this._sourcesDirty||this._styleDirty||this._placementDirty||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&(this._fullyLoaded||(this._fullyLoaded=!0),this.fire(new t.Event(“idle”))),this}},a.prototype.remove=function(){this._hash&&this._hash.remove();for(var e=0,r=this._controls;e<r.length;e+=1)r[e].onRemove(this);this._controls=[],this._frame&&(this._frame.cancel(),this._frame=null),this._renderTaskQueue.clear(),this.painter.destroy(),this.handlers.destroy(),delete this.handlers,this.setStyle(null),void 0!==t.window&&(t.window.removeEventListener(“resize”,this._onWindowResize,!1),t.window.removeEventListener(“online”,this._onWindowOnline,!1));var n=this.painter.context.gl.getExtension(“WEBGL_lose_context”);n&&n.loseContext(),Ma(this._canvasContainer),Ma(this._controlContainer),Ma(this._missingCSSCanary),this._container.classList.remove(“mapboxgl-map”),this._removed=!0,this.fire(new t.Event(“remove”))},a.prototype.triggerRepaint=function(){var e=this;this.style&&!this._frame&&(this._frame=t.browser.frame((function(t){e._frame=null,e._render(t)})))},a.prototype._onWindowOnline=function(){this._update()},a.prototype._onWindowResize=function(t){this._trackResize&&this.resize({originalEvent:t})._update()},i.showTileBoundaries.get=function(){return!!this._showTileBoundaries},i.showTileBoundaries.set=function(t){this._showTileBoundaries!==t&&(this._showTileBoundaries=t,this._update())},i.showPadding.get=function(){return!!this._showPadding},i.showPadding.set=function(t){this._showPadding!==t&&(this._showPadding=t,this._update())},i.showCollisionBoxes.get=function(){return!!this._showCollisionBoxes},i.showCollisionBoxes.set=function(t){this._showCollisionBoxes!==t&&(this._showCollisionBoxes=t,t?this.style._generateCollisionBoxes():this._update())},i.showOverdrawInspector.get=function(){return!!this._showOverdrawInspector},i.showOverdrawInspector.set=function(t){this._showOverdrawInspector!==t&&(this._showOverdrawInspector=t,this._update())},i.repaint.get=function(){return!!this._repaint},i.repaint.set=function(t){this._repaint!==t&&(this._repaint=t,this.triggerRepaint())},i.vertices.get=function(){return!!this._vertices},i.vertices.set=function(t){this._vertices=t,this._update()},a.prototype._setCacheLimits=function(e,r){t.setCacheLimits(e,r)},i.version.get=function(){return t.version},Object.defineProperties(a.prototype,i),a}(ma);function Ma(t){t.parentNode&&t.parentNode.removeChild(t)}var Sa={showCompass:!0,showZoom:!0,visualizePitch:!1},Ea=function(e){var n=this;this.options=t.extend({},Sa,e),this._container=r.create(“div”,“mapboxgl-ctrl mapboxgl-ctrl-group”),this._container.addEventListener(“contextmenu”,(function(t){return t.preventDefault()})),this.options.showZoom&&(t.bindAll([”_setButtonTitle”,”_updateZoomButtons”],this),this._zoomInButton=this._createButton(“mapboxgl-ctrl-zoom-in”,(function(t){return n._map.zoomIn({},{originalEvent:t})})),r.create(“span”,“mapboxgl-ctrl-icon”,this._zoomInButton).setAttribute(“aria-hidden”,!0),this._zoomOutButton=this._createButton(“mapboxgl-ctrl-zoom-out”,(function(t){return n._map.zoomOut({},{originalEvent:t})})),r.create(“span”,“mapboxgl-ctrl-icon”,this._zoomOutButton).setAttribute(“aria-hidden”,!0)),this.options.showCompass&&(t.bindAll([”_rotateCompassArrow”],this),this._compass=this._createButton(“mapboxgl-ctrl-compass”,(function(t){n.options.visualizePitch?n._map.resetNorthPitch({},{originalEvent:t}):n._map.resetNorth({},{originalEvent:t})})),this._compassIcon=r.create(“span”,“mapboxgl-ctrl-icon”,this._compass),this._compassIcon.setAttribute(“aria-hidden”,!0))};Ea.prototype._updateZoomButtons=function(){var t=this._map.getZoom();this._zoomInButton.disabled=t===this._map.getMaxZoom(),this._zoomOutButton.disabled=t===this._map.getMinZoom()},Ea.prototype._rotateCompassArrow=function(){var t=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=t},Ea.prototype.onAdd=function(t){return this._map=t,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 Ca(this._map,this._compass,this.options.visualizePitch)),this._container},Ea.prototype.onRemove=function(){r.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},Ea.prototype._createButton=function(t,e){var n=r.create(“button”,t,this._container);return n.type=“button”,n.addEventListener(“click”,e),n},Ea.prototype._setButtonTitle=function(t,e){var r=this._map._getUIString(“NavigationControl.”+e);t.title=r,t.setAttribute(“aria-label”,r)};var Ca=function(e,n,a){void 0===a&&(a=!1),this._clickTolerance=10,this.element=n,this.mouseRotate=new Gn({clickTolerance:e.dragRotate._mouseRotate._clickTolerance}),this.map=e,a&&(this.mousePitch=new Yn({clickTolerance:e.dragRotate._mousePitch._clickTolerance})),t.bindAll([“mousedown”,“mousemove”,“mouseup”,“touchstart”,“touchmove”,“touchend”,“reset”],this),r.addEventListener(n,“mousedown”,this.mousedown),r.addEventListener(n,“touchstart”,this.touchstart,{passive:!1}),r.addEventListener(n,“touchmove”,this.touchmove),r.addEventListener(n,“touchend”,this.touchend),r.addEventListener(n,“touchcancel”,this.reset)};function La(e,r,n){if(e=new t.LngLat(e.lng,e.lat),r){var a=new t.LngLat(e.lng-360,e.lat),i=new t.LngLat(e.lng+360,e.lat),o=n.locationPoint(e).distSqr®;n.locationPoint(a).distSqr®180;){var s=n.locationPoint(e);if(s.x>=0&&s.y>=0&&s.x<=n.width&&s.y<=n.height)break;e.lng>n.center.lng?e.lng-=360:e.lng+=360}return e}Ca.prototype.down=function(t,e){this.mouseRotate.mousedown(t,e),this.mousePitch&&this.mousePitch.mousedown(t,e),r.disableDrag()},Ca.prototype.move=function(t,e){var r=this.map,n=this.mouseRotate.mousemoveWindow(t,e);if(n&&n.bearingDelta&&r.setBearing(r.getBearing()+n.bearingDelta),this.mousePitch){var a=this.mousePitch.mousemoveWindow(t,e);a&&a.pitchDelta&&r.setPitch(r.getPitch()+a.pitchDelta)}},Ca.prototype.off=function(){var t=this.element;r.removeEventListener(t,“mousedown”,this.mousedown),r.removeEventListener(t,“touchstart”,this.touchstart,{passive:!1}),r.removeEventListener(t,“touchmove”,this.touchmove),r.removeEventListener(t,“touchend”,this.touchend),r.removeEventListener(t,“touchcancel”,this.reset),this.offTemp()},Ca.prototype.offTemp=function(){r.enableDrag(),r.removeEventListener(t.window,“mousemove”,this.mousemove),r.removeEventListener(t.window,“mouseup”,this.mouseup)},Ca.prototype.mousedown=function(e){this.down(t.extend({},e,{ctrlKey:!0,preventDefault:function(){return e.preventDefault()}}),r.mousePos(this.element,e)),r.addEventListener(t.window,“mousemove”,this.mousemove),r.addEventListener(t.window,“mouseup”,this.mouseup)},Ca.prototype.mousemove=function(t){this.move(t,r.mousePos(this.element,t))},Ca.prototype.mouseup=function(t){this.mouseRotate.mouseupWindow(t),this.mousePitch&&this.mousePitch.mouseupWindow(t),this.offTemp()},Ca.prototype.touchstart=function(t){1!==t.targetTouches.length?this.reset():(this._startPos=this._lastPos=r.touchPos(this.element,t.targetTouches)[0],this.down({type:“mousedown”,button:0,ctrlKey:!0,preventDefault:function(){return t.preventDefault()}},this._startPos))},Ca.prototype.touchmove=function(t){1!==t.targetTouches.length?this.reset():(this._lastPos=r.touchPos(this.element,t.targetTouches)[0],this.move({preventDefault:function(){return t.preventDefault()}},this._lastPos))},Ca.prototype.touchend=function(t){0===t.targetTouches.length&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)e.getEast()||r.latitudee.getNorth())},n.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”)}},n.prototype._onSuccess=function(e){if(this._map){if(this._isOutOfMapMaxBounds(e))return this._setErrorState(),this.fire(new t.Event(“outofmaxbounds”,e)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=e,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”)}this.options.showUserLocation&&“OFF”!==this._watchState&&this._updateMarker(e),this.options.trackUserLocation&&“ACTIVE_LOCK”!==this._watchState||this._updateCamera(e),this.options.showUserLocation&&this._dotElement.classList.remove(“mapboxgl-user-location-dot-stale”),this.fire(new t.Event(“geolocate”,e)),this._finish()}},n.prototype._updateCamera=function(e){var r=new t.LngLat(e.coords.longitude,e.coords.latitude),n=e.coords.accuracy,a=this._map.getBearing(),i=t.extend({bearing:a},this.options.fitBoundsOptions);this._map.fitBounds(r.toBounds(n),i,{geolocateSource:!0})},n.prototype._updateMarker=function(e){if(e){var r=new t.LngLat(e.coords.longitude,e.coords.latitude);this._accuracyCircleMarker.setLngLat®.addTo(this._map),this._userLocationDotMarker.setLngLat®.addTo(this._map),this._accuracy=e.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},n.prototype._updateCircleRadius=function(){var t=this._map._container.clientHeight/2,e=this._map.unproject([0,t]),r=this._map.unproject([1,t]),n=e.distanceTo®,a=Math.ceil(2*this._accuracy/n);this._circleElement.style.width=a+“px”,this._circleElement.style.height=a+“px”},n.prototype._onZoom=function(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},n.prototype._onError=function(e){if(this._map){if(this.options.trackUserLocation)if(1===e.code){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 r=this._map._getUIString(“GeolocateControl.LocationNotAvailable”);this._geolocateButton.title=r,this._geolocateButton.setAttribute(“aria-label”,r),void 0!==this._geolocationWatchID&&this._clearWatch()}else{if(3===e.code&&Fa)return;this._setErrorState()}“OFF”!==this._watchState&&this.options.showUserLocation&&this._dotElement.classList.add(“mapboxgl-user-location-dot-stale”),this.fire(new t.Event(“error”,e)),this._finish()}},n.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},n.prototype._setupUI=function(e){var n=this;if(this._container.addEventListener(“contextmenu”,(function(t){return t.preventDefault()})),this._geolocateButton=r.create(“button”,“mapboxgl-ctrl-geolocate”,this._container),r.create(“span”,“mapboxgl-ctrl-icon”,this._geolocateButton).setAttribute(“aria-hidden”,!0),this._geolocateButton.type=“button”,!1===e){t.warnOnce(“Geolocation support is not available so the GeolocateControl will be disabled.”);var a=this._map._getUIString(“GeolocateControl.LocationNotAvailable”);this._geolocateButton.disabled=!0,this._geolocateButton.title=a,this._geolocateButton.setAttribute(“aria-label”,a)}else{var i=this._map._getUIString(“GeolocateControl.FindMyLocation”);this._geolocateButton.title=i,this._geolocateButton.setAttribute(“aria-label”,i)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute(“aria-pressed”,“false”),this._watchState=“OFF”),this.options.showUserLocation&&(this._dotElement=r.create(“div”,“mapboxgl-user-location-dot”),this._userLocationDotMarker=new Oa(this._dotElement),this._circleElement=r.create(“div”,“mapboxgl-user-location-accuracy-circle”),this._accuracyCircleMarker=new Oa({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(e){e.geolocateSource||“ACTIVE_LOCK”!==n._watchState||e.originalEvent&&“resize”===e.originalEvent.type||(n._watchState=“BACKGROUND”,n._geolocateButton.classList.add(“mapboxgl-ctrl-geolocate-background”),n._geolocateButton.classList.remove(“mapboxgl-ctrl-geolocate-active”),n.fire(new t.Event(“trackuserlocationend”)))}))},n.prototype.trigger=function(){if(!this._setup)return t.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 t.Event(“trackuserlocationstart”));break;case”WAITING_ACTIVE”:case”ACTIVE_LOCK”:case”ACTIVE_ERROR”:case”BACKGROUND_ERROR”:Ra–,Fa=!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 t.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 t.Event(“trackuserlocationstart”))}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”)}if(“OFF”===this._watchState&&void 0!==this._geolocationWatchID)this._clearWatch();else if(void 0===this._geolocationWatchID){var e;this._geolocateButton.classList.add(“mapboxgl-ctrl-geolocate-waiting”),this._geolocateButton.setAttribute(“aria-pressed”,“true”),++Ra>1?(e={maximumAge:6e5,timeout:0},Fa=!0):(e=this.options.positionOptions,Fa=!1),this._geolocationWatchID=t.window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,e)}}else t.window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0},n.prototype._clearWatch=function(){t.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)},n}(t.Evented),Na={maxWidth:100,unit:“metric”},ja=function(e){this.options=t.extend({},Na,e),t.bindAll([”_onMove”,“setUnit”],this)};function Va(t,e,r){var n=r&&r.maxWidth||100,a=t._container.clientHeight/2,i=t.unproject([0,a]),o=t.unproject([n,a]),s=i.distanceTo(o);if(r&&“imperial”===r.unit){var l=3.2808s;l>5280?Ua(e,n,l/5280,t._getUIString(“ScaleControl.Miles”)):Ua(e,n,l,t._getUIString(“ScaleControl.Feet”))}else r&&“nautical”===r.unit?Ua(e,n,s/1852,t._getUIString(“ScaleControl.NauticalMiles”)):s>=1e3?Ua(e,n,s/1e3,t._getUIString(“ScaleControl.Kilometers”)):Ua(e,n,s,t._getUIString(“ScaleControl.Meters”))}function Ua(t,e,r,n){var a,i,o,s=(a=r,(i=Math.pow(10,(“”+Math.floor(a)).length-1))(o=(o=a/i)>=10?10:o>=5?5:o>=3?3:o>=2?2:o>=1?1:function(t){var e=Math.pow(10,Math.ceil(-Math.log(t)/Math.LN10));return Math.round(te)/e}(o)));t.style.width=e(s/r)+“px”,t.innerHTML=s+” ”+n}ja.prototype.getDefaultPosition=function(){return”bottom-left”},ja.prototype._onMove=function(){Va(this._map,this._container,this.options)},ja.prototype.onAdd=function(t){return this._map=t,this._container=r.create(“div”,“mapboxgl-ctrl mapboxgl-ctrl-scale”,t.getContainer()),this._map.on(“move”,this._onMove),this._onMove(),this._container},ja.prototype.onRemove=function(){r.remove(this._container),this._map.off(“move”,this._onMove),this._map=void 0},ja.prototype.setUnit=function(t){this.options.unit=t,Va(this._map,this._container,this.options)};var qa=function(e){this._fullscreen=!1,e&&e.container&&(e.container instanceof t.window.HTMLElement?this._container=e.container:t.warnOnce(“Full screen control ‘container’ must be a DOM element.”)),t.bindAll([”_onClickFullscreen”,”_changeIcon”],this),“onfullscreenchange”in t.window.document?this._fullscreenchange=“fullscreenchange”:“onmozfullscreenchange”in t.window.document?this._fullscreenchange=“mozfullscreenchange”:“onwebkitfullscreenchange”in t.window.document?this._fullscreenchange=“webkitfullscreenchange”:“onmsfullscreenchange”in t.window.document&&(this._fullscreenchange=“MSFullscreenChange”)};qa.prototype.onAdd=function(e){return this._map=e,this._container||(this._container=this._map.getContainer()),this._controlContainer=r.create(“div”,“mapboxgl-ctrl mapboxgl-ctrl-group”),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display=“none”,t.warnOnce(“This device does not support fullscreen mode.”)),this._controlContainer},qa.prototype.onRemove=function(){r.remove(this._controlContainer),this._map=null,t.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},qa.prototype._checkFullscreenSupport=function(){return!!(t.window.document.fullscreenEnabled||t.window.document.mozFullScreenEnabled||t.window.document.msFullscreenEnabled||t.window.document.webkitFullscreenEnabled)},qa.prototype._setupUI=function(){var e=this._fullscreenButton=r.create(“button”,“mapboxgl-ctrl-fullscreen”,this._controlContainer);r.create(“span”,“mapboxgl-ctrl-icon”,e).setAttribute(“aria-hidden”,!0),e.type=“button”,this._updateTitle(),this._fullscreenButton.addEventListener(“click”,this._onClickFullscreen),t.window.document.addEventListener(this._fullscreenchange,this._changeIcon)},qa.prototype._updateTitle=function(){var t=this._getTitle();this._fullscreenButton.setAttribute(“aria-label”,t),this._fullscreenButton.title=t},qa.prototype._getTitle=function(){return this._map._getUIString(this._isFullscreen()?“FullscreenControl.Exit”:“FullscreenControl.Enter”)},qa.prototype._isFullscreen=function(){return this._fullscreen},qa.prototype._changeIcon=function(){(t.window.document.fullscreenElement||t.window.document.mozFullScreenElement||t.window.document.webkitFullscreenElement||t.window.document.msFullscreenElement)===this._container!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle(“mapboxgl-ctrl-shrink”),this._fullscreenButton.classList.toggle(“mapboxgl-ctrl-fullscreen”),this._updateTitle())},qa.prototype._onClickFullscreen=function(){this._isFullscreen()?t.window.document.exitFullscreen?t.window.document.exitFullscreen():t.window.document.mozCancelFullScreen?t.window.document.mozCancelFullScreen():t.window.document.msExitFullscreen?t.window.document.msExitFullscreen():t.window.document.webkitCancelFullScreen&&t.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 Ha={closeButton:!0,closeOnClick:!0,className:“”,maxWidth:“240px”},Ga=function(e){function n®{e.call(this),this.options=t.extend(Object.create(Ha),r),t.bindAll([”_update”,”_onClose”,“remove”,”_onMouseMove”,”_onMouseUp”,”_onDrag”],this)}return e&&(n.proto=e),(n.prototype=Object.create(e&&e.prototype)).constructor=n,n.prototype.addTo=function(e){return this._map&&this.remove(),this._map=e,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._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 t.Event(“open”)),this},n.prototype.isOpen=function(){return!!this._map},n.prototype.remove=function(){return this._content&&r.remove(this._content),this._container&&(r.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 t.Event(“close”)),this},n.prototype.getLngLat=function(){return this._lngLat},n.prototype.setLngLat=function(e){return this._lngLat=t.LngLat.convert(e),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},n.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},n.prototype.getElement=function(){return this._container},n.prototype.setText=function(e){return this.setDOMContent(t.window.document.createTextNode(e))},n.prototype.setHTML=function(e){var r,n=t.window.document.createDocumentFragment(),a=t.window.document.createElement(“body”);for(a.innerHTML=e;r=a.firstChild;)n.appendChild®;return this.setDOMContent(n)},n.prototype.getMaxWidth=function(){return this._container&&this._container.style.maxWidth},n.prototype.setMaxWidth=function(t){return this.options.maxWidth=t,this._update(),this},n.prototype.setDOMContent=function(t){return this._createContent(),this._content.appendChild(t),this._update(),this},n.prototype.addClassName=function(t){this._container&&this._container.classList.add(t)},n.prototype.removeClassName=function(t){this._container&&this._container.classList.remove(t)},n.prototype.toggleClassName=function(t){if(this._container)return this._container.classList.toggle(t)},n.prototype._createContent=function(){this._content&&r.remove(this._content),this._content=r.create(“div”,“mapboxgl-popup-content”,this._container),this.options.closeButton&&(this._closeButton=r.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))},n.prototype._onMouseUp=function(t){this._update(t.point)},n.prototype._onMouseMove=function(t){this._update(t.point)},n.prototype._onDrag=function(t){this._update(t.point)},n.prototype._update=function(e){var n=this;if(this._map&&(this._lngLat||this._trackPointer)&&this._content&&(this._container||(this._container=r.create(“div”,“mapboxgl-popup”,this._map.getContainer()),this._tip=r.create(“div”,“mapboxgl-popup-tip”,this._container),this._container.appendChild(this._content),this.options.className&&this.options.className.split(” “).forEach((function(t){return n._container.classList.add(t)})),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=La(this._lngLat,this._pos,this._map.transform)),!this._trackPointer||e)){var a=this._pos=this._trackPointer&&e?e:this._map.project(this._lngLat),i=this.options.anchor,o=function e®{if®{if(“number”==typeof r){var n=Math.round(Math.sqrt(.5*Math.pow(r,2)));return{center:new t.Point(0,0),top:new t.Point(0,r),“top-left”:new t.Point(n,n),“top-right”:new t.Point(-n,n),bottom:new t.Point(0,-r),“bottom-left”:new t.Point(n,-n),“bottom-right”:new t.Point(-n,-n),left:new t.Point(r,0),right:new t.Point(-r,0)}}if(r instanceof t.Point||Array.isArray®){var a=t.Point.convert®;return{center:a,top:a,“top-left”:a,“top-right”:a,bottom:a,“bottom-left”:a,“bottom-right”:a,left:a,right:a}}return{center:t.Point.convert(r.center||[0,0]),top:t.Point.convert(r.top||[0,0]),“top-left”:t.Point.convert(r[“top-left”]||[0,0]),“top-right”:t.Point.convert(r[“top-right”]||[0,0]),bottom:t.Point.convert(r.bottom||[0,0]),“bottom-left”:t.Point.convert(r[“bottom-left”]||[0,0]),“bottom-right”:t.Point.convert(r[“bottom-right”]||[0,0]),left:t.Point.convert(r.left||[0,0]),right:t.Point.convert(r.right||[0,0])}}return e(new t.Point(0,0))}(this.options.offset);if(!i){var s,l=this._container.offsetWidth,c=this._container.offsetHeight;s=a.y+o.bottom.ythis._map.transform.height-c?[“bottom”]:[],a.xthis._map.transform.width-l/2&&s.push(“right”),i=0===s.length?“bottom”:s.join(“-”)}var u=a.add(o[i]).round();r.setTransform(this._container,Pa[i]+” translate(“+u.x+“px,”+u.y+“px)”),Ia(this._container,i,“popup”)}},n.prototype._onClose=function(){this.remove()},n}(t.Evented),Ya={version:t.version,supported:e,setRTLTextPlugin:t.setRTLTextPlugin,getRTLTextPluginStatus:t.getRTLTextPluginStatus,Map:Aa,NavigationControl:Ea,GeolocateControl:Ba,AttributionControl:va,ScaleControl:ja,FullscreenControl:qa,Popup:Ga,Marker:Oa,Style:qe,LngLat:t.LngLat,LngLatBounds:t.LngLatBounds,Point:t.Point,MercatorCoordinate:t.MercatorCoordinate,Evented:t.Evented,config:t.config,prewarm:function(){Bt().acquire(Ot)},clearPrewarmedResources:function(){var t=Rt;t&&(t.isPreloaded()&&1===t.numActive()?(t.release(Ot),Rt=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()”))},get accessToken(){return t.config.ACCESS_TOKEN},set accessToken(e){t.config.ACCESS_TOKEN=e},get baseApiUrl(){return t.config.API_URL},set baseApiUrl(e){t.config.API_URL=e},get workerCount(){return Dt.workerCount},set workerCount(t){Dt.workerCount=t},get maxParallelImageRequests(){return t.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(e){t.config.MAX_PARALLEL_IMAGEREQUESTS=e},clearStorage:function(e){t.clearTileCache(e)},workerUrl:“”};return Ya})),r}))},{}],427:[function(t,e,r){“use strict”;e.exports=function(t){for(var e=1<<t+1,r=new Array(e),n=0;n<e;++n)r[n]=i(t,n);return r};var n=t(“convex-hull”);function a(t,e,r){for(var n=new Array(t),a=0;a<t;++a)n[a]=0,a===e&&(n[a]+=.5),a===r&&(n[a]+=.5);return n}function i(t,e){if(0===e||e===(1<<t+1)-1)return[];for(var r=[],i=[],o=0;o<=t;++o)if(e&1<<o){r.push(a(t,o-1,o-1)),i.push(null);for(var s=0;s<=t;++s)~e&1<<s&&(r.push(a(t,o-1,s-1)),i.push([o,s]))}var l=n®,c=[];t:for(o=0;o<l.length;++o){var u=l[o],h=[];for(s=0;s<u.length;++s){if(!i[u[s]])continue t;h.push(i[u[s]].slice())}c.push(h)}return c}},{“convex-hull”:132}],428:[function(t,e,r){var n=t(“./normalize”),a=t(“gl-mat4/create”),i=t(“gl-mat4/clone”),o=t(“gl-mat4/determinant”),s=t(“gl-mat4/invert”),l=t(“gl-mat4/transpose”),c={length:t(“gl-vec3/length”),normalize:t(“gl-vec3/normalize”),dot:t(“gl-vec3/dot”),cross:t(“gl-vec3/cross”)},u=a(),h=a(),f=[0,0,0,0],p=[[0,0,0],[0,0,0],[0,0,0]],d=[0,0,0];function g(t,e,r,n,a){t[0]=e[0]*n+r[0]*a,t[1]=e[1]*n+r[1]*a,t[2]=e[2]*n+r[2]*a}e.exports=function(t,e,r,a,m,v){if(e||(e=[0,0,0]),r||(r=[0,0,0]),a||(a=[0,0,0]),m||(m=[0,0,0,1]),v||(v=[0,0,0,1]),!n(u,t))return!1;if(i(h,u),h[3]=0,h[7]=0,h[11]=0,h[15]=1,Math.abs(o(h)<1e-8))return!1;var y,x,b,,w,T,k,A=u[3],M=u[7],S=u[11],E=u[12],C=u[13],L=u[14],P=u[15];if(0!==A||0!==M||0!==S){if(f[0]=A,f[1]=M,f[2]=S,f[3]=P,!s(h,h))return!1;l(h,h),y=m,b=h,=(x=f)[0],w=x[1],T=x[2],k=x[3],y[0]=b[0]*+b[4]*w+b[8]*T+b[12]k,y[1]=b[1]+b[5]*w+b[9]*T+b[13]k,y[2]=b[2]+b[6]*w+b[10]*T+b[14]k,y[3]=b[3]_+b[7]*w+b[11]*T+b[15]k}else m[0]=m[1]=m[2]=0,m[3]=1;if(e[0]=E,e[1]=C,e[2]=L,function(t,e){t[0][0]=e[0],t[0][1]=e[1],t[0][2]=e[2],t[1][0]=e[4],t[1][1]=e[5],t[1][2]=e[6],t[2][0]=e[8],t[2][1]=e[9],t[2][2]=e[10]}(p,u),r[0]=c.length(p[0]),c.normalize(p[0],p[0]),a[0]=c.dot(p[0],p[1]),g(p[1],p[1],p[0],1,-a[0]),r[1]=c.length(p[1]),c.normalize(p[1],p[1]),a[0]/=r[1],a[1]=c.dot(p[0],p[2]),g(p[2],p[2],p[0],1,-a[1]),a[2]=c.dot(p[1],p[2]),g(p[2],p[2],p[1],1,-a[2]),r[2]=c.length(p[2]),c.normalize(p[2],p[2]),a[1]/=r[2],a[2]/=r[2],c.cross(d,p[1],p[2]),c.dot(p[0],d)<0)for(var I=0;I<3;I++)r[I]=-1,p[I][0]=-1,p[I][1]=-1,p[I][2]*=-1;return v[0]=.5*Math.sqrt(Math.max(1+p[0][0]-p[1][1]-p[2][2],0)),v[1]=.5*Math.sqrt(Math.max(1-p[0][0]+p[1][1]-p[2][2],0)),v[2]=.5*Math.sqrt(Math.max(1-p[0][0]-p[1][1]+p[2][2],0)),v[3]=.5*Math.sqrt(Math.max(1+p[0][0]+p[1][1]+p[2][2],0)),p[2][1]>p[1][2]&&(v[0]=-v[0]),p[0][2]>p[2][0]&&(v[1]=-v[1]),p[1][0]>p[0][1]&&(v[2]=-v[2]),!0}},{“./normalize”:429,“gl-mat4/clone”:267,“gl-mat4/create”:268,“gl-mat4/determinant”:269,“gl-mat4/invert”:273,“gl-mat4/transpose”:284,“gl-vec3/cross”:334,“gl-vec3/dot”:339,“gl-vec3/length”:349,“gl-vec3/normalize”:356}],429:[function(t,e,r){e.exports=function(t,e){var r=e[15];if(0===r)return!1;for(var n=1/r,a=0;a<16;a++)t[a]=e[a]*n;return!0}},{}],430:[function(t,e,r){var n=t("gl-vec3/lerp"),a=t("mat4-recompose"),i=t("mat4-decompose"),o=t("gl-mat4/determinant"),s=t("quat-slerp"),l=h(),c=h(),u=h();function h(){return{translate:f(),scale:f(1),skew:f(),perspective:[0,0,0,1],quaternion:[0,0,0,1]}}function f(t){return[t||0,t||0,t||0]}e.exports=function(t,e,r,h){if(0===o(e)||0===o(r))return!1;var f=i(e,l.translate,l.scale,l.skew,l.perspective,l.quaternion),p=i(r,c.translate,c.scale,c.skew,c.perspective,c.quaternion);return!(!f||!p)&&(n(u.translate,l.translate,c.translate,h),n(u.skew,l.skew,c.skew,h),n(u.scale,l.scale,c.scale,h),n(u.perspective,l.perspective,c.perspective,h),s(u.quaternion,l.quaternion,c.quaternion,h),a(t,u.translate,u.scale,u.skew,u.perspective,u.quaternion),!0)}},{"gl-mat4/determinant":269,"gl-vec3/lerp":350,"mat4-decompose":428,"mat4-recompose":431,"quat-slerp":481}],431:[function(t,e,r){var n={identity:t("gl-mat4/identity"),translate:t("gl-mat4/translate"),multiply:t("gl-mat4/multiply"),create:t("gl-mat4/create"),scale:t("gl-mat4/scale"),fromRotationTranslation:t("gl-mat4/fromRotationTranslation")},a=(n.create(),n.create());e.exports=function(t,e,r,i,o,s){return n.identity(t),n.fromRotationTranslation(t,s,e),t[3]=o[0],t[7]=o[1],t[11]=o[2],t[15]=o[3],n.identity(a),0!==i[2]&&(a[9]=i[2],n.multiply(t,t,a)),0!==i[1]&&(a[9]=0,a[8]=i[1],n.multiply(t,t,a)),0!==i[0]&&(a[8]=0,a[4]=i[0],n.multiply(t,t,a)),n.scale(t,t,r),t}},{"gl-mat4/create":268,"gl-mat4/fromRotationTranslation":271,"gl-mat4/identity":272,"gl-mat4/multiply":275,"gl-mat4/scale":282,"gl-mat4/translate":283}],432:[function(t,e,r){"use strict";e.exports=Math.log2||function(t){return Math.log(t)*Math.LOG2E}},{}],433:[function(t,e,r){"use strict";var n=t("binary-search-bounds"),a=t("mat4-interpolate"),i=t("gl-mat4/invert"),o=t("gl-mat4/rotateX"),s=t("gl-mat4/rotateY"),l=t("gl-mat4/rotateZ"),c=t("gl-mat4/lookAt"),u=t("gl-mat4/translate"),h=(t("gl-mat4/scale"),t("gl-vec3/normalize")),f=[0,0,0];function p(t){this._components=t.slice(),this._time=[0],this.prevMatrix=t.slice(),this.nextMatrix=t.slice(),this.computedMatrix=t.slice(),this.computedInverse=t.slice(),this.computedEye=[0,0,0],this.computedUp=[0,0,0],this.computedCenter=[0,0,0],this.computedRadius=[0],this._limits=[-1/0,1/0]}e.exports=function(t){return new p((t=t||{}).matrix||[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])};var d=p.prototype;d.recalcMatrix=function(t){var e=this._time,r=n.le(e,t),o=this.computedMatrix;if(!(r<0)){var s=this._components;if(r===e.length-1)for(var l=16*r,c=0;c<16;++c)o[c]=s[l++];else{var u=e[r+1]-e[r],f=(l=16*r,this.prevMatrix),p=!0;for(c=0;c<16;++c)f[c]=s[l++];var d=this.nextMatrix;for(c=0;c<16;++c)d[c]=s[l++],p=p&&f[c]===d[c];if(u<1e-6||p)for(c=0;c<16;++c)o[c]=f[c];else a(o,f,d,(t-e[r])/u)}var g=this.computedUp;g[0]=o[1],g[1]=o[5],g[2]=o[9],h(g,g);var m=this.computedInverse;i(m,o);var v=this.computedEye,y=m[15];v[0]=m[12]/y,v[1]=m[13]/y,v[2]=m[14]/y;var x=this.computedCenter,b=Math.exp(this.computedRadius[0]);for(c=0;c<3;++c)x[c]=v[c]-o[2+4*c]*b}},d.idle=function(t){if(!(t1&&n(t[o[u-2]],t[o[u-1]],c)<=0;)u-=1,o.pop();for(o.push(l),u=s.length;u>1&&n(t[s[u-2]],t[s[u-1]],c)>=0;)u-=1,s.pop();s.push(l)}r=new Array(s.length+o.length-2);for(var h=0,f=(a=0,o.length);a0;–p)r[h++]=s[p];return r};var n=t(“robust-orientation”)[3]},{“robust-orientation”:500}],436:[function(t,e,r){“use strict”;e.exports=function(t,e){e||(e=t,t=window);var r=0,a=0,i=0,o={shift:!1,alt:!1,control:!1,meta:!1},s=!1;function l(t){var e=!1;return”altKey”in t&&(e=e||t.altKey!==o.alt,o.alt=!!t.altKey),“shiftKey”in t&&(e=e||t.shiftKey!==o.shift,o.shift=!!t.shiftKey),“ctrlKey”in t&&(e=e||t.ctrlKey!==o.control,o.control=!!t.ctrlKey),“metaKey”in t&&(e=e||t.metaKey!==o.meta,o.meta=!!t.metaKey),e}function c(t,s){var c=n.x(s),u=n.y(s);“buttons”in s&&(t=0|s.buttons),(t!==r||c!==a||u!==i||l(s))&&(r=0|t,a=c||0,i=u||0,e&&e(r,a,i,o))}function u(t){c(0,t)}function h(){(r||a||i||o.shift||o.alt||o.meta||o.control)&&(a=i=0,r=0,o.shift=o.alt=o.control=o.meta=!1,e&&e(0,0,0,o))}function f(t){l(t)&&e&&e(r,a,i,o)}function p(t){0===n.buttons(t)?c(0,t):c(r,t)}function d(t){c(r|n.buttons(t),t)}function g(t){c(r&~n.buttons(t),t)}function m(){s||(s=!0,t.addEventListener(“mousemove”,p),t.addEventListener(“mousedown”,d),t.addEventListener(“mouseup”,g),t.addEventListener(“mouseleave”,u),t.addEventListener(“mouseenter”,u),t.addEventListener(“mouseout”,u),t.addEventListener(“mouseover”,u),t.addEventListener(“blur”,h),t.addEventListener(“keyup”,f),t.addEventListener(“keydown”,f),t.addEventListener(“keypress”,f),t!==window&&(window.addEventListener(“blur”,h),window.addEventListener(“keyup”,f),window.addEventListener(“keydown”,f),window.addEventListener(“keypress”,f)))}m();var v={element:t};return Object.defineProperties(v,{enabled:{get:function(){return s},set:function(e){e?m():function(){if(!s)return;s=!1,t.removeEventListener(“mousemove”,p),t.removeEventListener(“mousedown”,d),t.removeEventListener(“mouseup”,g),t.removeEventListener(“mouseleave”,u),t.removeEventListener(“mouseenter”,u),t.removeEventListener(“mouseout”,u),t.removeEventListener(“mouseover”,u),t.removeEventListener(“blur”,h),t.removeEventListener(“keyup”,f),t.removeEventListener(“keydown”,f),t.removeEventListener(“keypress”,f),t!==window&&(window.removeEventListener(“blur”,h),window.removeEventListener(“keyup”,f),window.removeEventListener(“keydown”,f),window.removeEventListener(“keypress”,f))}()},enumerable:!0},buttons:{get:function(){return r},enumerable:!0},x:{get:function(){return a},enumerable:!0},y:{get:function(){return i},enumerable:!0},mods:{get:function(){return o},enumerable:!0}}),v};var n=t(“mouse-event”)},{“mouse-event”:438}],437:[function(t,e,r){var n={left:0,top:0};e.exports=function(t,e,r){e=e||t.currentTarget||t.srcElement,Array.isArray®||(r=[0,0]);var a=t.clientX||0,i=t.clientY||0,o=(s=e,s===window||s===document||s===document.body?n:s.getBoundingClientRect());var s;return r[0]=a-o.left,r[1]=i-o.top,r}},{}],438:[function(t,e,r){“use strict”;function n(t){return t.target||t.srcElement||window}r.buttons=function(t){if(“object”==typeof t){if(“buttons”in t)return t.buttons;if(“which”in t){if(2===(e=t.which))return 4;if(3===e)return 2;if(e>0)return 1<=0)return 1< 0”);“function”!=typeof t.vertex&&e(“Must specify vertex creation function”);“function”!=typeof t.cell&&e(“Must specify cell creation function”);“function”!=typeof t.phase&&e(“Must specify phase function”);for(var w=t.getters||[],T=new Array(b),k=0;k=0?T[k]=!0:T[k]=!1;return function(t,e,r,b,,w){var T=w.length,k=.length;if(k<2)throw new Error("ndarray-extract-contour: Dimension must be at least 2");for(var A="extractContour"+_.join("_"),M=[],S=[],E=[],C=0;C0&&z.push(l(C,[L-1])+”*“+s([L-1])),S.push(d(C,[L])+“=(”+z.join(“-”)+“)|0”)}for(C=0;C=0;–C)O.push(s([C]));S.push(“Q=(”+O.join(””)+“)|0”,“P=mallocUint32(Q)”,“V=mallocUint32(Q)”,“X=0”),S.push(g(0)+“=0”);for(L=1;L<1<<k;++L){var D=[],R=[];for(I=0;I<k;++I)L&1<<I&&(0===R.length?D.push(“1”):D.unshift(R.join(””))),R.push(s([I]));var F=“”;D[0].indexOf(s([k-2]))<0&&(F="-");var B=x(k,L,_);S.push(v(B)+"=(-"+D.join("-")+")|0",m(B)+"=("+F+D.join("-")+")|0",g(B)+"=0")}function N(t,e){M.push("for(",p(_[t]),"=",e,";",p(_[t]),"<",s(_[t]),";","++",p(_[t]),"){")}function j(t){for(var e=0;e0;=-1&d)x.push(“V[X+“+v()+“]”);x.push(y(0));for(=0;<T;++)1&n?x.push(o(,l),o(,d)):x.push(o(,d),o(,l));1&n?x.push(c,m):x.push(m,c);for(=0;=0;–e)N(e,0);var r=[];for(e=0;e0){“,p([e]),“=1;”),t(e-1,r|1<<[e]);for(var n=0;n=0?s.push(“0”):e.indexOf(-(l+1))>=0?s.push(“s[“+l+”]-1”):(s.push(“-1”),i.push(“1”),o.push(“s[“+l+”]-2”));var c=“.lo(”+i.join()+“).hi(”+o.join()+“)”;if(0===i.length&&(c=“”),a>0){n.push(“if(1”);for(l=0;l=0||e.indexOf(-(l+1))>=0||n.push(”&&s[“,l,”]>2”);n.push(“){grad”,a,“(src.pick(”,s.join(),“)”,c);for(l=0;l=0||e.indexOf(-(l+1))>=0||n.push(“,dst.pick(”,s.join(),“,”,l,“)”,c);n.push(“);”)}for(l=0;l1){dst.set(“,s.join(),”,“,u,”,0.5(src.get(“,f.join(),”)-src.get(“,p.join(),”)))}else{dst.set(“,s.join(),”,“,u,”,0)};“):n.push(“if(s[“,u,”]>1){diff(“,h,”,src.pick(“,f.join(),”)“,c,”,src.pick(“,p.join(),”)“,c,”);}else{zero(“,h,”);};“);break;case”mirror”:0===a?n.push(“dst.set(”,s.join(),“,”,u,“,0);”):n.push(“zero(”,h,“);”);break;case”wrap”:var d=s.slice(),g=s.slice();e[l]<0?(d[u]="s["+u+"]-2",g[u]="0"):(d[u]="s["+u+"]-1",g[u]="1"),0===a?n.push("if(s[",u,"]>2){dst.set(“,s.join(),”,“,u,”,0.5(src.get(“,d.join(),”)-src.get(“,g.join(),”)))}else{dst.set(“,s.join(),”,“,u,”,0)};“):n.push(“if(s[“,u,”]>2){diff(“,h,”,src.pick(“,d.join(),”)“,c,”,src.pick(“,g.join(),”)“,c,”);}else{zero(“,h,”);};“);break;default:throw new Error(“ndarray-gradient: Invalid boundary condition”)}}a>0&&n.push(“};”)}for(var s=0;s<1<>“,rrshift:“>>>”};!function(){for(var t in s){var e=s[t];r[t]=o({args:[“array”,“array”,“array”],body:{args:[“a”,“b”,“c”],body:“a=b”+e+“c”},funcName:t}),r[t+“eq”]=o({args:[“array”,“array”],body:{args:[“a”,“b”],body:“a”+e+“=b”},rvalue:!0,funcName:t+“eq”}),r[t+“s”]=o({args:[“array”,“array”,“scalar”],body:{args:[“a”,“b”,“s”],body:“a=b”+e+“s”},funcName:t+“s”}),r[t+“seq”]=o({args:[“array”,“scalar”],body:{args:[“a”,“s”],body:“a”+e+“=s”},rvalue:!0,funcName:t+“seq”})}}();var l={not:“!”,bnot:”~“,neg:“-”,recip:“1.0/”};!function(){for(var t in l){var e=l[t];r[t]=o({args:[“array”,“array”],body:{args:[“a”,“b”],body:“a=”+e+“b”},funcName:t}),r[t+“eq”]=o({args:[“array”],body:{args:[“a”],body:“a=”+e+“a”},rvalue:!0,count:2,funcName:t+“eq”})}}();var c={and:”&&“,or:“||”,eq:“===”,neq:“!==”,lt:”<“,gt:“>”,leq:”<=“,geq:“>=”};!function(){for(var t in c){var e=c[t];r[t]=o({args:[“array”,“array”,“array”],body:{args:[“a”,“b”,“c”],body:“a=b”+e+“c”},funcName:t}),r[t+“s”]=o({args:[“array”,“array”,“scalar”],body:{args:[“a”,“b”,“s”],body:“a=b”+e+“s”},funcName:t+“s”}),r[t+“eq”]=o({args:[“array”,“array”],body:{args:[“a”,“b”],body:“a=a”+e+“b”},rvalue:!0,count:2,funcName:t+“eq”}),r[t+“seq”]=o({args:[“array”,“scalar”],body:{args:[“a”,“s”],body:“a=a”+e+“s”},rvalue:!0,count:2,funcName:t+“seq”})}}();var u=[“abs”,“acos”,“asin”,“atan”,“ceil”,“cos”,“exp”,“floor”,“log”,“round”,“sin”,“sqrt”,“tan”];!function(){for(var t=0;tthis_s){this_s=-a}else if(a>this_s){this_s=a}“,localVars:[],thisVars:[“this_s”]},post:{args:[],localVars:[],thisVars:[“this_s”],body:“return this_s”},funcName:“norminf”}),r.norm1=n({args:[“array”],pre:{args:[],localVars:[],thisVars:[“this_s”],body:“this_s=0”},body:{args:[{name:“a”,lvalue:!1,rvalue:!0,count:3}],body:“this_s+=a<0?-a:a",localVars:[],thisVars:["this_s"]},post:{args:[],localVars:[],thisVars:["this_s"],body:"return this_s"},funcName:"norm1"}),r.sup=n({args:["array"],pre:{body:"this_h=-Infinity",args:[],thisVars:["this_h"],localVars:[]},body:{body:"if(_inline_1_arg0_>this_h)this_h=_inline_1arg0”,args:[{name:”_inline_1arg0”,lvalue:!1,rvalue:!0,count:2}],thisVars:[“this_h”],localVars:[]},post:{body:“return this_h”,args:[],thisVars:[“this_h”],localVars:[]}}),r.inf=n({args:[“array”],pre:{body:“this_h=Infinity”,args:[],thisVars:[“this_h”],localVars:[]},body:{body:“if(_inline_1arg0this_v){this_v=_inline_1arg1;for(var _inline_1_k=0;_inline_1_k<_inline_1arg0.length;++_inline_1_k){this_i[_inline_1_k]=_inline_1arg0[_inline_1_k]}}}“,args:[{name:”_inline_1arg0”,lvalue:!1,rvalue:!0,count:2},{name:”_inline_1arg1”,lvalue:!1,rvalue:!0,count:2}],thisVars:[“this_i”,“this_v”],localVars:[”_inline_1_k”]},post:{body:“{return this_i}“,args:[],thisVars:[“this_i”],localVars:[]}}),r.random=o({args:[“array”],pre:{args:[],body:“this_f=Math.random”,thisVars:[“this_f”]},body:{args:[“a”],body:“a=this_f()“,thisVars:[“this_f”]},funcName:“random”}),r.assign=o({args:[“array”,“array”],body:{args:[“a”,“b”],body:“a=b”},funcName:“assign”}),r.assigns=o({args:[“array”,“scalar”],body:{args:[“a”,“b”],body:“a=b”},funcName:“assigns”}),r.equals=n({args:[“array”,“array”],pre:a,body:{args:[{name:“x”,lvalue:!1,rvalue:!0,count:1},{name:“y”,lvalue:!1,rvalue:!0,count:1}],body:“if(x!==y){return false}”,localVars:[],thisVars:[]},post:{args:[],localVars:[],thisVars:[],body:“return true”},funcName:“equals”})},{“cwise-compiler”:148}],444:[function(t,e,r){“use strict”;var n=t(“ndarray”),a=t(“./doConvert.js”);e.exports=function(t,e){for(var r=[],i=t,o=1;Array.isArray(i);)r.push(i.length),o=i.length,i=i[0];return 0===r.length?n():(e||(e=n(new Float64Array(o),r)),a(e,t),e)}},{“./doConvert.js”:445,ndarray:448}],445:[function(t,e,r){e.exports=t(“cwise-compiler”)({args:[“array”,“scalar”,“index”],pre:{body:“{}”,args:[],thisVars:[],localVars:[]},body:{body:“{\nvar _inline_1_v=_inline_1arg1,_inline_1_i\nfor(_inline_1_i=0;_inline_1_i<_inline_1arg2.length-1;++_inline_1_i) {\n_inline_1_v=_inline_1_v[_inline_1arg2[_inline_1_i]]\n}\n_inline_1arg0=_inline_1_v[_inline_1arg2[_inline_1arg2.length-1]]\n}“,args:[{name:”_inline_1arg0”,lvalue:!0,rvalue:!1,count:1},{name:”_inline_1arg1”,lvalue:!1,rvalue:!0,count:1},{name:”_inline_1arg2”,lvalue:!1,rvalue:!0,count:4}],thisVars:[],localVars:[”_inline_1_i”,”_inline_1_v”]},post:{body:“{}”,args:[],thisVars:[],localVars:[]},funcName:“convert”,blockSize:64})},{“cwise-compiler”:148}],446:[function(t,e,r){“use strict”;var n=t(“typedarray-pool”),a=32;function i(t){switch(t){case”uint8”:return[n.mallocUint8,n.freeUint8];case”uint16”:return[n.mallocUint16,n.freeUint16];case”uint32”:return[n.mallocUint32,n.freeUint32];case”int8”:return[n.mallocInt8,n.freeInt8];case”int16”:return[n.mallocInt16,n.freeInt16];case”int32”:return[n.mallocInt32,n.freeInt32];case”float32”:return[n.mallocFloat,n.freeFloat];case”float64”:return[n.mallocDouble,n.freeDouble];default:return null}}function o(t){for(var e=[],r=0;r<t;++r)e.push(“s”+r);for(r=0;r<t;++r)e.push(“n”+r);for(r=1;r<t;++r)e.push(“d”+r);for(r=1;r<t;++r)e.push(“e”+r);for(r=1;r<t;++r)e.push(“f”+r);return e}e.exports=function(t,e){var r=[“‘use strict’”],n=[“ndarraySortWrapper”,t.join(“d”),e].join(“”);r.push([“function “,n,”(“,[“array”].join(“,”),“){”].join(“”));for(var s=[“data=array.data,offset=array.offset|0,shape=array.shape,stride=array.stride”],l=0;l<t.length;++l)s.push([“s”,l,“=stride[“,l,”]|0,n”,l,“=shape[“,l,”]|0”].join(“”));var c=new Array(t.length),u=[];for(l=0;l<t.length;++l){0!==(p=t[l])&&(0===u.length?c[p]=“1”:c[p]=u.join(””),u.push(“n”+p))}var h=-1,f=-1;for(l=0;l0?s.push([“d”,d,“=s”,d,“-d”,h,”*n”,h].join(“”)):s.push([“d”,d,“=s”,d].join(“”)),h=d),0!==(p=t.length-1-l)&&(f>0?s.push([“e”,p,“=s”,p,“-e”,f,”*n”,f,“,f”,p,“=”,c[p],“-f”,f,”*n”,f].join(“”)):s.push([“e”,p,“=s”,p,“,f”,p,“=”,c[p]].join(“”)),f=p)}r.push(“var “+s.join(”,“));var g=[“0”,“n0-1”,“data”,“offset”].concat(o(t.length));r.push([“if(n0<=“,a,”){“,“insertionSort(”,g.join(“,”),“)}else{”,“quickSort(”,g.join(“,”),“)}”].join(“”)),r.push(“}return “+n);var m=new Function(“insertionSort”,“quickSort”,r.join(”\n”)),v=function(t,e){var r=[“‘use strict’”],n=[“ndarrayInsertionSort”,t.join(“d”),e].join(“”),a=[“left”,“right”,“data”,“offset”].concat(o(t.length)),s=i(e),l=[“i,j,cptr,ptr=lefts0+offset”];if(t.length>1){for(var c=[],u=1;u<t.length;++u)l.push(“i”+u),c.push(“n”+u);s?l.push(“scratch=malloc(”+c.join(””)+“)”):l.push(“scratch=new Array(”+c.join(””)+“)”),l.push(“dptr”,“sptr”,“a”,“b”)}else l.push(“scratch”);function h(t){return”generic”===e?[“data.get(”,t,“)”].join(“”):[“data[“,t,”]“].join(”“)}function f(t,r){return”generic”===e?[“data.set(”,t,“,”,r,“)”].join(“”):[“data[“,t,”]=“,r].join(”“)}if(r.push([“function “,n,”(“,a.join(”,“),”){var “,l.join(”,“)].join(”“),“for(i=left+1;i<=right;++i){“,“j=i;ptr+=s0”,“cptr=ptr”),t.length>1){r.push(“dptr=0;sptr=ptr”);for(u=t.length-1;u>=0;–u){0!==(p=t[u])&&r.push([“for(i”,p,“=0;i”,p,”b){break __l}“].join(”“));for(u=t.length-1;u>=1;–u)r.push(“sptr+=e”+u,“dptr+=f”+u,“}”);r.push(“dptr=cptr;sptr=cptr-s0”);for(u=t.length-1;u>=0;–u){0!==(p=t[u])&&r.push([“for(i”,p,“=0;i”,p,”=0;–u){0!==(p=t[u])&&r.push([“for(i”,p,“=0;i”,p,”scratch)){“,f(“cptr”,h(“cptr-s0”)),“cptr-=s0”,“}”,f(“cptr”,“scratch”));return r.push(“}”),t.length>1&&s&&r.push(“free(scratch)”),r.push(“} return “+n),s?new Function(“malloc”,“free”,r.join(”\n”))(s[0],s[1]):new Function(r.join(”\n”))()}(t,e),y=function(t,e,r){var n=[“‘use strict’”],s=[“ndarrayQuickSort”,t.join(“d”),e].join(“”),l=[“left”,“right”,“data”,“offset”].concat(o(t.length)),c=i(e),u=0;n.push([“function “,s,”(“,l.join(”,“),”){“].join(”“));var h=[“sixth=((right-left+1)/6)|0”,“index1=left+sixth”,“index5=right-sixth”,“index3=(left+right)>>1”,“index2=index3-sixth”,“index4=index3+sixth”,“el1=index1”,“el2=index2”,“el3=index3”,“el4=index4”,“el5=index5”,“less=left+1”,“great=right-1”,“pivots_are_equal=true”,“tmp”,“tmp0”,“x”,“y”,“z”,“k”,“ptr0”,“ptr1”,“ptr2”,“comp_pivot1=0”,“comp_pivot2=0”,“comp=0”];if(t.length>1){for(var f=[],p=1;p<t.length;++p)f.push(“n”+p),h.push(“i”+p);for(p=0;p<8;++p)h.push(“b_ptr”+p);h.push(“ptr3”,“ptr4”,“ptr5”,“ptr6”,“ptr7”,“pivot_ptr”,“ptr_shift”,“elementSize=”+f.join(””)),c?h.push(“pivot1=malloc(elementSize)”,“pivot2=malloc(elementSize)”):h.push(“pivot1=new Array(elementSize),pivot2=new Array(elementSize)”)}else h.push(“pivot1”,“pivot2”);function d(t){return[“(offset+”,t,”s0)“].join(”“)}function g(t){return”generic”===e?[“data.get(”,t,“)”].join(“”):[“data[“,t,”]“].join(”“)}function m(t,r){return”generic”===e?[“data.set(”,t,“,”,r,“)”].join(“”):[“data[“,t,”]=“,r].join(”“)}function v(e,r,a){if(1===e.length)n.push(“ptr0=”+d(e[0]));else for(var i=0;i<e.length;++i)n.push([“b_ptr”,i,“=s0”,e[i]].join(“”));r&&n.push(“pivot_ptr=0”),n.push(“ptr_shift=offset”);for(i=t.length-1;i>=0;–i){0!==(o=t[i])&&n.push([“for(i”,o,“=0;i”,o,”1)for(i=0;i1?n.push(“ptr_shift+=d”+o):n.push(“ptr0+=d”+o),n.push(“}”))}}function y(e,r,a,i){if(1===r.length)n.push(“ptr0=”+d(r[0]));else{for(var o=0;o1)for(o=0;o=1;–o)a&&n.push(“pivot_ptr+=f”+o),r.length>1?n.push(“ptr_shift+=e”+o):n.push(“ptr0+=e”+o),n.push(“}”)}function x(){t.length>1&&c&&n.push(“free(pivot1)”,“free(pivot2)”)}function b(e,r){var a=“el”+e,i=“el”+r;if(t.length>1){var o=”l”+ ++u;y(o,[a,i],!1,[“comp=”,g(“ptr0”),“-”,g(“ptr1”),”\n”,“if(comp>0){tmp0=”,a,“;”,a,“=”,i,“;”,i,“=tmp0;break “,o,”}\n”,“if(comp<0){break ",o,"}"].join(""))}else n.push(["if(",g(d(a)),">”,g(d(i)),“){tmp0=”,a,“;”,a,“=”,i,“;”,i,“=tmp0}”].join(“”))}function _(e,r){t.length>1?v([e,r],!1,m(“ptr0”,g(“ptr1”))):n.push(m(d(e),g(d®)))}function w(e,r,a){if(t.length>1){var i=”l”+ ++u;y(i,[r],!0,[e,“=”,g(“ptr0”),“-pivot”,a,”[pivot_ptr]\n”,“if(”,e,“!==0){break “,i,”}“].join(”“))}else n.push([e,“=”,g(d®),“-pivot”,a].join(“”))}function T(e,r){t.length>1?v([e,r],!1,[“tmp=”,g(“ptr0”),”\n”,m(“ptr0”,g(“ptr1”)),”\n”,m(“ptr1”,“tmp”)].join(“”)):n.push([“ptr0=”,d(e),”\n”,“ptr1=”,d®,”\n”,“tmp=”,g(“ptr0”),”\n”,m(“ptr0”,g(“ptr1”)),”\n”,m(“ptr1”,“tmp”)].join(“”))}function k(e,r,a){t.length>1?(v([e,r,a],!1,[“tmp=”,g(“ptr0”),”\n”,m(“ptr0”,g(“ptr1”)),”\n”,m(“ptr1”,g(“ptr2”)),”\n”,m(“ptr2”,“tmp”)].join(“”)),n.push(“++”+r,“–”+a)):n.push([“ptr0=”,d(e),”\n”,“ptr1=”,d®,”\n”,“ptr2=”,d(a),”\n”,“++”,r,”\n”,“–”,a,”\n”,“tmp=”,g(“ptr0”),”\n”,m(“ptr0”,g(“ptr1”)),”\n”,m(“ptr1”,g(“ptr2”)),”\n”,m(“ptr2”,“tmp”)].join(“”))}function A(t,e){T(t,e),n.push(“–”+e)}function M(e,r,a){t.length>1?v([e,r],!0,[m(“ptr0”,g(“ptr1”)),”\n”,m(“ptr1”,[“pivot”,a,”[pivot_ptr]“].join(”“))].join(”“)):n.push(m(d(e),g(d®)),m(d®,“pivot”+a))}function S(e,r){n.push([“if((”,r,“-”,e,“)<=“,a,”){\n”,“insertionSort(”,e,“,”,r,“,data,offset,”,o(t.length).join(“,”),“)\n”,“}else{\n”,s,“(”,e,“,”,r,“,data,offset,”,o(t.length).join(“,”),“)\n”,“}”].join(“”))}function E(e,r,a){t.length>1?(n.push([”__l”,++u,”:while(true){“].join(”“)),v([e],!0,[“if(”,g(“ptr0”),“!==pivot”,r,”[pivot_ptr]){break __l”,u,“}”].join(“”)),n.push(a,“}”)):n.push([“while(”,g(d(e)),“===pivot”,r,“){”,a,“}”].join(“”))}return n.push(“var “+h.join(”,“)),b(1,2),b(4,5),b(1,3),b(2,3),b(1,4),b(3,4),b(2,5),b(2,3),b(4,5),t.length>1?v([“el1”,“el2”,“el3”,“el4”,“el5”,“index1”,“index3”,“index5”],!0,[“pivot1[pivot_ptr]=“,g(“ptr1”),”\n”,“pivot2[pivot_ptr]=“,g(“ptr3”),”\n”,“pivots_are_equal=pivots_are_equal&&(pivot1[pivot_ptr]===pivot2[pivot_ptr])\n”,“x=”,g(“ptr0”),”\n”,“y=”,g(“ptr2”),”\n”,“z=”,g(“ptr4”),”\n”,m(“ptr5”,“x”),”\n”,m(“ptr6”,“y”),”\n”,m(“ptr7”,“z”)].join(“”)):n.push([“pivot1=”,g(d(“el2”)),”\n”,“pivot2=”,g(d(“el4”)),”\n”,“pivots_areequal=pivot1===pivot2\n”,“x=”,g(d(“el1”)),”\n”,“y=”,g(d(“el3”)),”\n”,“z=”,g(d(“el5”)),”\n”,m(d(“index1”),“x”),”\n”,m(d(“index3”),“y”),”\n”,m(d(“index5”),“z”)].join(“”)),(“index2”,“left”),_(“index4”,“right”),n.push(“if(pivots_are_equal){“),n.push(“for(k=less;k<=great;++k){“),w(“comp”,“k”,1),n.push(“if(comp===0){continue}”),n.push(“if(comp<0){"),n.push("if(k!==less){"),T("k","less"),n.push("}"),n.push("++less"),n.push("}else{"),n.push("while(true){"),w("comp","great",1),n.push("if(comp>0){“),n.push(“great–”),n.push(“}else if(comp<0){"),k("k","less","great"),n.push("break"),n.push("}else{"),A("k","great"),n.push("break"),n.push("}"),n.push("}"),n.push("}"),n.push("}"),n.push("}else{"),n.push("for(k=less;k<=great;++k){"),w("comp_pivot1","k",1),n.push("if(comp_pivot1<0){"),n.push("if(k!==less){"),T("k","less"),n.push("}"),n.push("++less"),n.push("}else{"),w("comp_pivot2","k",2),n.push("if(comp_pivot2>0){“),n.push(“while(true){”),w(“comp”,“great”,2),n.push(“if(comp>0){”),n.push(“if(–greatindex5){“),E(“less”,1,“++less”),E(“great”,2,“–great”),n.push(“for(k=less;k<=great;++k){“),w(“comp_pivot1”,“k”,1),n.push(“if(comp_pivot1===0){“),n.push(“if(k!==less){”),T(“k”,“less”),n.push(“}”),n.push(“++less”),n.push(“}else{”),w(“comp_pivot2”,“k”,2),n.push(“if(comp_pivot2===0){“),n.push(“while(true){”),w(“comp”,“great”,2),n.push(“if(comp===0){”),n.push(“if(–great1&&c?new Function(“insertionSort”,“malloc”,“free”,n.join(”\n”))(r,c[0],c[1]):new Function(“insertionSort”,n.join(”\n”))®}(t,e,v);return m(v,y)}},{“typedarray-pool”:547}],447:[function(t,e,r){“use strict”;var n=t(“./lib/compile_sort.js”),a={};e.exports=function(t){var e=t.order,r=t.dtype,i=[e,r].join(”:“),o=a[i];return o||(a[i]=o=n(e,r)),o(t),t}},{“./lib/compile_sort.js”:446}],448:[function(t,e,r){var n=t(“iota-array”),a=t(“is-buffer”),i=“undefined”!=typeof Float64Array;function o(t,e){return t[0]-e[0]}function s(){var t,e=this.stride,r=new Array(e.length);for(t=0;tMath.abs(this.stride[1]))?[1,0]:[0,1]}})“):3===e&&i.push(“var s0=Math.abs(this.stride[0]),s1=Math.abs(this.stride[1]),s2=Math.abs(this.stride[2]);if(s0>s1){if(s1>s2){return [2,1,0];}else if(s0>s2){return [1,2,0];}else{return [1,0,2];}}else if(s0>s2){return [2,0,1];}else if(s2>s1){return [0,1,2];}else{return [0,2,1];}}})“)):i.push(“ORDER})”)),i.push(“proto.set=function “+r+”_set(“+l.join(”,“)+”,v){“),a?i.push(“return this.data.set(”+u+“,v)}”):i.push(“return this.data[“+u+”]=v}“),i.push(“proto.get=function “+r+”_get(“+l.join(”,“)+”){“),a?i.push(“return this.data.get(”+u+“)}”):i.push(“return this.data[“+u+”]}“),i.push(“proto.index=function “+r+”_index(“,l.join(),”){return “+u+”}“),i.push(“proto.hi=function “+r+”_hi(“+l.join(”,“)+”){return new “+r+”(this.data,“+o.map((function(t){return[“(typeof i”,t,“!==‘number’||i”,t,”<0)?this.shape[",t,"]:i",t,"|0"].join("")})).join(",")+","+o.map((function(t){return"this.stride["+t+"]"})).join(",")+",this.offset)}");var p=o.map((function(t){return"a"+t+"=this.shape["+t+"]"})),d=o.map((function(t){return"c"+t+"=this.stride["+t+"]"}));i.push("proto.lo=function "+r+"_lo("+l.join(",")+"){var b=this.offset,d=0,"+p.join(",")+","+d.join(","));for(var g=0;g=0){d=i”+g+“|0;b+=c”+g+”d;a”+g+“-=d}”);i.push(“return new “+r+”(this.data,“+o.map((function(t){return”a”+t})).join(“,”)+“,”+o.map((function(t){return”c”+t})).join(“,”)+“,b)}”),i.push(“proto.step=function “+r+”_step(“+l.join(”,“)+”){var “+o.map((function(t){return”a”+t+“=this.shape[“+t+”]“})).join(”,“)+”,“+o.map((function(t){return”b”+t+“=this.stride[“+t+”]“})).join(”,“)+”,c=this.offset,d=0,ceil=Math.ceil”);for(g=0;g<e;++g)i.push(“if(typeof i”+g+“===‘number’){d=i”+g+“|0;if(d<0){c+=b”+g+”(a”+g+“-1);a”+g+“=ceil(-a”+g+“/d)}else{a”+g+“=ceil(a”+g+“/d)}b”+g+”*=d}“);i.push(“return new “+r+”(this.data,“+o.map((function(t){return”a”+t})).join(“,”)+“,”+o.map((function(t){return”b”+t})).join(“,”)+“,c)}”);var m=new Array(e),v=new Array(e);for(g=0;g=0){c=(c+this.stride[“+g+”]i”+g+“)|0}else{a.push(this.shape[“+g+”]);b.push(this.stride[“+g+”])}“);return i.push(“var ctor=CTORLIST[a.length+1];return ctor(this.data,a,b,c)}“),i.push(“return function construct”+r+“(data,shape,stride,offset){return new “+r+”(data,“+o.map((function(t){return”shape[“+t+”]“})).join(”,“)+”,“+o.map((function(t){return”stride[“+t+”]“})).join(”,“)+”,offset)}“),new Function(“CTOR_LIST”,“ORDER”,i.join(”\n”))(c[t],s)}var c={float32:[],float64:[],int8:[],int16:[],int32:[],uint8:[],uint16:[],uint32:[],array:[],uint8_clamped:[],bigint64:[],biguint64:[],buffer:[],generic:[]};e.exports=function(t,e,r,n){if(void 0===t)return(0,c.array[0])([]);“number”==typeof t&&(t=[t]),void 0===e&&(e=[t.length]);var o=e.length;if(void 0===r){r=new Array(o);for(var s=o-1,u=1;s>=0;–s)r[s]=u,u=e[s]}if(void 0===n){n=0;for(s=0;st==t>0?i===-1>>>0?(r+=1,i=0):i+=1:0===i?(i=-1>>>0,r-=1):i-=1;return n.pack(i,r)}},{“double-bits”:168}],450:[function(t,e,r){var n=Math.PI,a=c(120);function i(t,e,r,n){return[“C”,t,e,r,n,r,n]}function o(t,e,r,n,a,i){return[“C”,t/3+23*r,e/3+23*n,a/3+23*r,i/3+23*n,a,i]}function s(t,e,r,i,o,c,u,h,f,p){if(p)T=p[0],k=p[1],_=p[2],w=p[3];else{var d=l(t,e,-o);t=d.x,e=d.y;var g=(t-(h=(d=l(h,f,-o)).x))/2,m=(e-(f=d.y))/2,v=g*g/(r*r)+m*m/(ii);v>1&&(r=v=Math.sqrt(v),i*=v);var y=r*r,x=i*i,b=(c==u?-1:1)*Math.sqrt(Math.abs((y*x-y*m*m-x*g*g)/(y*m*m+x*g*g)));b==10&&(b=1);var =b*rm/i+(t+h)/2,w=b-i*g/r+(e+f)/2,T=Math.asin(((e-w)/i).toFixed(9)),k=Math.asin(((f-w)/i).toFixed(9));(T=t<?n-T:T)<0&&(T=2*n+T),(k=h<_?n-k:k)<0&&(k=2*n+k),u&&T>k&&(T-=2*n),!u&&k>T&&(k-=2n)}if(Math.abs(k-T)>a){var A=k,M=h,S=f;k=T+a(u&&k>T?1:-1);var E=s(h=+r*Math.cos(k),f=w+i*Math.sin(k),r,i,o,0,u,M,S,[k,A,,w])}var C=Math.tan((k-T)/4),L=43*r*C,P=43*i*C,I=[2*t-(t+L*Math.sin(T)),2*e-(e-P*Math.cos(T)),h+L*Math.sin(k),f-P*Math.cos(k),h,f];if(p)return I;E&&(I=I.concat(E));for(var z=0;z7&&(r.push(v.splice(0,7)),v.unshift(“C”));break;case”S”:var x=p,b=d;“C”!=e&&“S”!=e||(x+=x-n,b+=b-a),v=[“C”,x,b,v[1],v[2],v[3],v[4]];break;case”T”:“Q”==e||“T”==e?(h=2*p-h,f=2*d-f):(h=p,f=d),v=o(p,d,h,f,v[1],v[2]);break;case”Q”:h=v[1],f=v[2],v=o(p,d,v[1],v[2],v[3],v[4]);break;case”L”:v=i(p,d,v[1],v[2]);break;case”H”:v=i(p,d,v[1],d);break;case”V”:v=i(p,d,p,v[1]);break;case”Z”:v=i(p,d,l,u)}e=y,p=v[v.length-2],d=v[v.length-1],v.length>4?(n=v[v.length-4],a=v[v.length-3]):(n=p,a=d),r.push(v)}return r}},{}],451:[function(t,e,r){r.vertexNormals=function(t,e,r){for(var n=e.length,a=new Array(n),i=void 0===r?1e-6:r,o=0;oi){var b=a[c],=1/Math.sqrt(m*y);for(x=0;x<3;++x){var w=(x+1)%3,T=(x+2)%3;b[x]+=*(v[w]*g[T]-v[T]*g[w])}}}for(o=0;oi)for(=1/Math.sqrt(k),x=0;x<3;++x)b[x]*=;else for(x=0;x<3;++x)b[x]=0}return a},r.faceNormals=function(t,e,r){for(var n=t.length,a=new Array(n),i=void 0===r?1e-6:r,o=0;oi?1/Math.sqrt(p):0;for(c=0;c<3;++c)f[c]*=p;a[o]=f}return a}},{}],452:[function(t,e,r){ /* object-assign (c) Sindre Sorhus @license MIT */ "use strict";var n=Object.getOwnPropertySymbols,a=Object.prototype.hasOwnProperty,i=Object.prototype.propertyIsEnumerable;function o(t){if(null==t)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}e.exports=function(){try{if(!Object.assign)return!1;var t=new String("abc");if(t[5]="de","5"===Object.getOwnPropertyNames(t)[0])return!1;for(var e={},r=0;r<10;r++)e["_"+String.fromCharCode(r)]=r;if("0123456789"!==Object.getOwnPropertyNames(e).map((function(t){return e[t]})).join(""))return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach((function(t){n[t]=t})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},n)).join("")}catch(t){return!1}}()?Object.assign:function(t,e){for(var r,s,l=o(t),c=1;c0){var h=Math.sqrt(u+1);t[0]=.5(o-l)/h,t[1]=.5(s-n)/h,t[2]=.5*(r-i)/h,t[3]=.5*h}else{var f=Math.max(e,i,c);h=Math.sqrt(2*f-u+1);e>=f?(t[0]=.5h,t[1]=.5(a+r)/h,t[2]=.5(s+n)/h,t[3]=.5(o-l)/h):i>=f?(t[0]=.5*(r+a)/h,t[1]=.5h,t[2]=.5(l+o)/h,t[3]=.5(s-n)/h):(t[0]=.5(n+s)/h,t[1]=.5*(o+l)/h,t[2]=.5h,t[3]=.5(r-a)/h)}return t}},{}],454:[function(t,e,r){“use strict”;e.exports=function(t){var e=(t=t||{}).center||[0,0,0],r=t.rotation||[0,0,0,1],n=t.radius||1;e=[].slice.call(e,0,3),u(r=[].slice.call(r,0,4),r);var a=new h(r,e,Math.log(n));a.setDistanceLimits(t.zoomMin,t.zoomMax),(“eye”in t||“up”in t)&&a.lookAt(0,t.eye,t.center,t.up);return a};var n=t(“filtered-vector”),a=t(“gl-mat4/lookAt”),i=t(“gl-mat4/fromQuat”),o=t(“gl-mat4/invert”),s=t(“./lib/quatFromFrame”);function l(t,e,r){return Math.sqrt(Math.pow(t,2)+Math.pow(e,2)+Math.pow(r,2))}function c(t,e,r,n){return Math.sqrt(Math.pow(t,2)+Math.pow(e,2)+Math.pow(r,2)+Math.pow(n,2))}function u(t,e){var r=e[0],n=e[1],a=e[2],i=e[3],o=c(r,n,a,i);o>1e-6?(t[0]=r/o,t[1]=n/o,t[2]=a/o,t[3]=i/o):(t[0]=t[1]=t[2]=0,t[3]=1)}function h(t,e,r){this.radius=n([r]),this.center=n(e),this.rotation=n(t),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 f=h.prototype;f.lastT=function(){return Math.max(this.radius.lastT(),this.center.lastT(),this.rotation.lastT())},f.recalcMatrix=function(t){this.radius.curve(t),this.center.curve(t),this.rotation.curve(t);var e=this.computedRotation;u(e,e);var r=this.computedMatrix;i(r,e);var n=this.computedCenter,a=this.computedEye,o=this.computedUp,s=Math.exp(this.computedRadius[0]);a[0]=n[0]+s*r[2],a[1]=n[1]+s*r[6],a[2]=n[2]+s*r[10],o[0]=r[1],o[1]=r[5],o[2]=r[9];for(var l=0;l<3;++l){for(var c=0,h=0;h<3;++h)c+=r[l+4*h]*a[h];r[12+l]=-c}},f.getMatrix=function(t,e){this.recalcMatrix(t);var r=this.computedMatrix;if(e){for(var n=0;n<16;++n)e[n]=r[n];return e}return r},f.idle=function(t){this.center.idle(t),this.radius.idle(t),this.rotation.idle(t)},f.flush=function(t){this.center.flush(t),this.radius.flush(t),this.rotation.flush(t)},f.pan=function(t,e,r,n){e=e||0,r=r||0,n=n||0,this.recalcMatrix(t);var a=this.computedMatrix,i=a[1],o=a[5],s=a[9],c=l(i,o,s);i/=c,o/=c,s/=c;var u=a[0],h=a[4],f=a[8],p=u*i+h*o+f*s,d=l(u-=i*p,h-=o*p,f-=s*p);u/=d,h/=d,f/=d;var g=a[2],m=a[6],v=a[10],y=g*i+m*o+v*s,x=g*u+m*h+v*f,b=l(g-=y*i+x*u,m-=y*o+x*h,v-=y*s+x*f);g/=b,m/=b,v/=b;var _=u*e+i*r,w=h*e+o*r,T=f*e+s*r;this.center.move(t,_,w,T);var k=Math.exp(this.computedRadius[0]);k=Math.max(1e-4,k+n),this.radius.set(t,Math.log(k))},f.rotate=function(t,e,r,n){this.recalcMatrix(t),e=e||0,r=r||0;var a=this.computedMatrix,i=a[0],o=a[4],s=a[8],u=a[1],h=a[5],f=a[9],p=a[2],d=a[6],g=a[10],m=e*i+r*u,v=e*o+r*h,y=e*s+r*f,x=-(d*y-g*v),b=-(g*m-p*y),_=-(p*v-d*m),w=Math.sqrt(Math.max(0,1-Math.pow(x,2)-Math.pow(b,2)-Math.pow(_,2))),T=c(x,b,_,w);T>1e-6?(x/=T,b/=T,/=T,w/=T):(x=b==0,w=1);var k=this.computedRotation,A=k[0],M=k[1],S=k[2],E=k[3],C=A*w+Ex+M-S*b,L=M*w+E*b+Sx-A,P=Sw+E+A*b-M*x,I=E*w-A*x-Mb-S;if(n){x=p,b=d,=g;var z=Math.sin(n)/l(x,b,);x=z,b=z,=z,I=I(w=Math.cos(e))-(C=C*w+Ix+L-P*b)*x-(L=L*w+I*b+Px-C)*b-(P=Pw+I+C*b-Lx)_}var O=c(C,L,P,I);O>1e-6?(C/=O,L/=O,P/=O,I/=O):(C=L=P=0,I=1),this.rotation.set(t,C,L,P,I)},f.lookAt=function(t,e,r,n){this.recalcMatrix(t),r=r||this.computedCenter,e=e||this.computedEye,n=n||this.computedUp;var i=this.computedMatrix;a(i,e,r,n);var o=this.computedRotation;s(o,i[0],i[1],i[2],i[4],i[5],i[6],i[8],i[9],i[10]),u(o,o),this.rotation.set(t,o[0],o[1],o[2],o[3]);for(var l=0,c=0;c<3;++c)l+=Math.pow(r[c]-e[c],2);this.radius.set(t,.5*Math.log(Math.max(l,1e-6))),this.center.set(t,r[0],r[1],r[2])},f.translate=function(t,e,r,n){this.center.move(t,e||0,r||0,n||0)},f.setMatrix=function(t,e){var r=this.computedRotation;s(r,e[0],e[1],e[2],e[4],e[5],e[6],e[8],e[9],e[10]),u(r,r),this.rotation.set(t,r[0],r[1],r[2],r[3]);var n=this.computedMatrix;o(n,e);var a=n[15];if(Math.abs(a)>1e-6){var i=n[12]/a,l=n[13]/a,c=n[14]/a;this.recalcMatrix(t);var h=Math.exp(this.computedRadius[0]);this.center.set(t,i-n[2]*h,l-n[6]*h,c-n[10]h),this.radius.idle(t)}else this.center.idle(t),this.radius.idle(t)},f.setDistance=function(t,e){e>0&&this.radius.set(t,Math.log(e))},f.setDistanceLimits=function(t,e){t=t>0?Math.log(t):-10,e=e>0?Math.log(e):10,e=Math.max(e,t),this.radius.bounds[0][0]=t,this.radius.bounds[1][0]=e},f.getDistanceLimits=function(t){var e=this.radius.bounds;return t?(t[0]=Math.exp(e[0][0]),t[1]=Math.exp(e[1][0]),t):[Math.exp(e[0][0]),Math.exp(e[1][0])]},f.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]}},f.fromJSON=function(t){var e=this.lastT(),r=t.center;r&&this.center.set(e,r[0],r[1],r[2]);var n=t.rotation;n&&this.rotation.set(e,n[0],n[1],n[2],n[3]);var a=t.distance;a&&a>0&&this.radius.set(e,Math.log(a)),this.setDistanceLimits(t.zoomMin,t.zoomMax)}},{“./lib/quatFromFrame”:453,“filtered-vector”:237,“gl-mat4/fromQuat”:270,“gl-mat4/invert”:273,“gl-mat4/lookAt”:274}],455:[function(t,e,r){ /!
    • pad-left https://github.com/jonschlinkert/pad-left *
    • Copyright © 2014-2015, Jon Schlinkert.
    • Licensed under the MIT license. / “use strict”;var n=t(“repeat-string”);e.exports=function(t,e,r){return n(r=“undefined”!=typeof r?r+“”:” “,e)+t}},{“repeat-string”:493}],456:[function(t,e,r){“use strict”;function n(t,e){if(“string”!=typeof t)return[t];var r=[t];“string”==typeof e||Array.isArray(e)?e={brackets:e}:e||(e={});var n=e.brackets?Array.isArray(e.brackets)?e.brackets:[e.brackets]:[“{}”,”[]“,”()“],a=e.escape||”___“,i=!!e.flat;n.forEach((function(t){var e=new RegExp([”\”,t[0],”[^\”,t[0],”\”,t[1],“]\”,t[1]].join(“”)),n=[];function i(e,i,o){var s=r.push(e.slice(t[0].length,-t[1].length))-1;return n.push(s),a+s+a}r.forEach((function(t,n){for(var a,o=0;t!=a;)if(a=t,t=t.replace(e,i),o++>1e4)throw Error(“References have circular dependency. Please, check them.”);r[n]=t})),n=n.reverse(),r=r.map((function(e){return n.forEach((function®{e=e.replace(new RegExp(“(\”+a+r+”\”+a+“)”,“g”),t[0]+“$1”+t[1])})),e}))}));var o=new RegExp(”\”+a+“([0-9]+)\”+a);return i?r:function t(e,r,n){for(var a,i=[],s=0;a=o.exec(e);){if(s++>1e4)throw Error(“Circular references in parenthesis”);i.push(e.slice(0,a.index)),i.push(t(r[a[1]],r)),e=e.slice(a.index+a[0].length)}return i.push(e),i}(r[0],r)}function a(t,e){if(e&&e.flat){var r,n=e&&e.escape||”___“,a=t[0];if(!a)return”“;for(var i=new RegExp(”\”+n+“([0-9]+)\”+n),o=0;a!=r;){if(o++>1e4)throw Error(“Circular references in “+t);r=a,a=a.replace(i,s)}return a}return t.reduce((function t(e,r){return Array.isArray®&&(r=r.reduce(t,“”)),e+r}),“”);function s(e,r){if(null==t[r])throw Error(“Reference “+r+“is undefined”);return t[r]}}function i(t,e){return Array.isArray(t)?a(t,e):n(t,e)}i.parse=n,i.stringify=a,e.exports=i},{}],457:[function(t,e,r){“use strict”;var n=t(“pick-by-alias”);e.exports=function(t){var e;arguments.length>1&&(t=arguments);“string”==typeof t?t=t.split(/\s/).map(parseFloat):“number”==typeof t&&(t=[t]);t.length&&“number”==typeof t[0]?e=1===t.length?{width:t[0],height:t[0],x:0,y:0}:2===t.length?{width:t[0],height:t[1],x:0,y:0}:{x:t[0],y:t[1],width:t[2]-t[0]||0,height:t[3]-t[1]||0}:t&&(t=n(t,{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”}),e={x:t.left||0,y:t.top||0},null==t.width?t.right?e.width=t.right-e.x:e.width=0:e.width=t.width,null==t.height?t.bottom?e.height=t.bottom-e.y:e.height=0:e.height=t.height);return e}},{“pick-by-alias”:463}],458:[function(t,e,r){e.exports=function(t){var e=[];return t.replace(a,(function(t,r,a){var o=r.toLowerCase();for(a=function(t){var e=t.match(i);return e?e.map(Number):[]}(a),“m”==o&&a.length>2&&(e.push([r].concat(a.splice(0,2))),o=“l”,r=“m”==r?“l”:“L”);;){if(a.length==n[o])return a.unshift®,e.push(a);if(a.length0;–o)i=l[o],r=s[o],s[o]=s[i],s[i]=r,l[o]=l[r],l[r]=i,c=(c+r)*o;return n.freeUint32(l),n.freeUint32(s),c},r.unrank=function(t,e,r){switch(t){case 0:return r||[];case 1:return r?(r[0]=0,r):[0];case 2:return r?(e?(r[0]=0,r[1]=1):(r[0]=1,r[1]=0),r):e?[0,1]:[1,0]}var n,a,i,o=1;for((r=r||new Array(t))[0]=0,i=1;i0;–i)e=e-(n=e/o|0)o|0,o=o/i|0,a=0|r[i],r[i]=0|r[n],r[n]=0|a;return r}},{“invert-permutation”:415,“typedarray-pool”:547}],463:[function(t,e,r){“use strict”;e.exports=function(t,e,r){var n,i,o={};if(“string”==typeof e&&(e=a(e)),Array.isArray(e)){var s={};for(i=0;i<e.length;i++)s[e[i]]=!0;e=s}for(n in e)e[n]=a(e[n]);var l={};for(n in e){var c=e[n];if(Array.isArray©)for(i=0;i<c.length;i++){var u=c[i];if(r&&(l[u]=!0),u in t){if(o[n]=t[u],r)for(var h=i;h<c.length;h++)l[c[h]]=!0;break}}else n in t&&(e[n]&&(o[n]=t[n]),r&&(l[n]=!0))}if®for(n in t)l[n]||(o[n]=t[n]);return o};var n={};function a(t){return n[t]?n[t]:(“string”==typeof t&&(t=n[t]=t.split(/\s,\s*|\s+/)),t)}},{}],464:[function(t,e,r){“use strict”;e.exports=function(t,e){for(var r=0|e.length,a=t.length,i=[new Array®,new Array®],o=0;o0){o=i[u][r][0],l=u;break}s=o[1^l];for(var h=0;h<2;++h)for(var f=i[h][r],p=0;p0&&(o=d,s=g,l=h)}return a||o&&c(o,l),s}function h(t,r){var a=i[r][t][0],o=[t];c(a,r);for(var s=a[1^r];;){for(;s!==t;)o.push(s),s=u(o[o.length-2],s,!1);if(i[0][t].length+i[1][t].length===0)break;var l=o[o.length-1],h=t,f=o[1],p=u(l,h,!0);if(n(e[l],e[h],e[f],e[p])<0)break;o.push(t),s=u(l,h)}return o}function f(t,e){return e[1]===e[e.length-1]}for(o=0;o0;){i[0][o].length;var g=h(o,p);f(0,g)?d.push.apply(d,g):(d.length>0&&l.push(d),d=g)}d.length>0&&l.push(d)}return l};var n=t(“compare-angle”)},{“compare-angle”:129}],465:[function(t,e,r){“use strict”;e.exports=function(t,e){for(var r=n(t,e.length),a=new Array(e.length),i=new Array(e.length),o=[],s=0;s0;){var c=o.pop();a[c]=!1;var u=r[c];for(s=0;s0}))).length,m=new Array(g),v=new Array(g);for(p=0;p0;){var B=R.pop(),N=E[B];l(N,(function(t,e){return t-e}));var j,V=N.length,U=F[B];if(0===U){var q=d[B];j=[q]}for(p=0;p=0))if(F[H]=1^U,R.push(H),0===U)D(q=d[H])||(q.reverse(),j.push(q))}0===U&&r.push(j)}return r};var n=t(“edges-to-adjacency-list”),a=t(“planar-dual”),i=t(“point-in-big-polygon”),o=t(“two-product”),s=t(“robust-sum”),l=t(“uniq”),c=t(“./lib/trim-leaves”);function u(t,e){for(var r=new Array(t),n=0;n>>1;e.dtype||(e.dtype=“array”),“string”==typeof e.dtype?d=new(h(e.dtype))(m):e.dtype&&(d=e.dtype,Array.isArray(d)&&(d.length=m));for(var v=0;vr||s>1073741824){for(var f=0;fe+n||w>r+n||T=A||i===o)){var s=y[a];void 0===o&&(o=s.length);for(var l=i;l=d&&u<=m&&h>=g&&h<=v&&S.push©}var f=x[a],p=f[4*i+0],b=f[4*i+1],M=f[4*i+2],E=f[4*i+3],P=L(f,i+1),I=.5*n,z=a+1;C(e,r,I,z,p,b||M||E||P),C(e,r+I,I,z,b,M||E||P),C(e+I,r,I,z,M,E||P),C(e+I,r+I,I,z,E,P)}}function L(t,e){for(var r=null,n=0;null===r;)if(r=t[4e+n],++n>t.length)return null;return r}return C(0,0,1,0,0,1),S},d;function E(t,e,r,a,i){for(var o=[],s=0;s<i;s++){var l=b[s],c=_[s][0],u=C(t,e,s),h=C(r,a,s),f=n.ge(l,u),p=n.gt(l,h,f,l.length-1);o[s]=[f+c,p+c]}return o}function C(t,e,r){for(var n=1,a=.5,i=.5,o=.5,s=0;s<r;s++)n<<=2,n+=t<a?e<i?0:1:e<i?2:3,o=.5,a+=t0&&e[a]===r[0]))return 1;i=t[a-1]}for(var s=1;i;){var l=i.key,c=n(r,l[0],l[1]);if(l[0][0]0))return 0;s=-1,i=i.right}else if(c>0)i=i.left;else{if(!(c<0))return 0;s=1,i=i.right}}return s}}(v.slabs,v.coordinates);return 0===i.length?y:function(t,e){return function®{return t(r[0],r[1])?0:e®}}(l(i),y)};var n=t(“robust-orientation”)[3],a=t(“slab-decomposition”),i=t(“interval-tree-1d”),o=t(“binary-search-bounds”);function s(){return!0}function l(t){for(var e={},r=0;r<t.length;++r){var n=t[r],a=n[0][0],o=n[0][1],l=n[1][1],c=[Math.min(o,l),Math.max(o,l)];a in e?e[a].push©:e[a]=[c]}var u={},h=Object.keys(e);for(r=0;r<h.length;++r){var f=e[h[r]];u[h[r]]=i(f)}return function(t){return function(e,r){var n=t[e];return!!n&&!!n.queryPoint(r,s)}}(u)}function c(t){return 1}},{“binary-search-bounds”:469,“interval-tree-1d”:413,“robust-orientation”:500,“slab-decomposition”:517}],471:[function(t,e,r){ /*
    • @copyright 2016 Sean Connelly (@voidqk), http://syntheti.cc
    • @license MIT
    • @preserve Project Home: https://github.com/voidqk/polybooljs / var n,a=t(“./lib/build-log”),i=t(“./lib/epsilon”),o=t(“./lib/intersecter”),s=t(“./lib/segment-chainer”),l=t(“./lib/segment-selector”),c=t(“./lib/geojson”),u=!1,h=i();function f(t,e,r){var a=n.segments(t),i=n.segments(e),o=r(n.combine(a,i));return n.polygon(o)}n={buildLog:function(t){return!0===t?u=a():!1===t&&(u=!1),!1!==u&&u.list},epsilon:function(t){return h.epsilon(t)},segments:function(t){var e=o(!0,h,u);return t.regions.forEach(e.addRegion),{segments:e.calculate(t.inverted),inverted:t.inverted}},combine:function(t,e){return{combined:o(!1,h,u).calculate(t.segments,t.inverted,e.segments,e.inverted),inverted1:t.inverted,inverted2:e.inverted}},selectUnion:function(t){return{segments:l.union(t.combined,u),inverted:t.inverted1||t.inverted2}},selectIntersect:function(t){return{segments:l.intersect(t.combined,u),inverted:t.inverted1&&t.inverted2}},selectDifference:function(t){return{segments:l.difference(t.combined,u),inverted:t.inverted1&&!t.inverted2}},selectDifferenceRev:function(t){return{segments:l.differenceRev(t.combined,u),inverted:!t.inverted1&&t.inverted2}},selectXor:function(t){return{segments:l.xor(t.combined,u),inverted:t.inverted1!==t.inverted2}},polygon:function(t){return{regions:s(t.segments,h,u),inverted:t.inverted}},polygonFromGeoJSON:function(t){return c.toPolygon(n,t)},polygonToGeoJSON:function(t){return c.fromPolygon(n,h,t)},union:function(t,e){return f(t,e,n.selectUnion)},intersect:function(t,e){return f(t,e,n.selectIntersect)},difference:function(t,e){return f(t,e,n.selectDifference)},differenceRev:function(t,e){return f(t,e,n.selectDifferenceRev)},xor:function(t,e){return f(t,e,n.selectXor)}},“object”==typeof window&&(window.PolyBool=n),e.exports=n},{“./lib/build-log”:472,“./lib/epsilon”:473,“./lib/geojson”:474,“./lib/intersecter”:475,“./lib/segment-chainer”:477,“./lib/segment-selector”:478}],472:[function(t,e,r){e.exports=function(){var t,e=0,r=!1;function n(e,r){return t.list.push({type:e,data:r?JSON.parse(JSON.stringify®):void 0}),t}return t={list:[],segmentId:function(){return e++},checkIntersection:function(t,e){return n(“check”,{seg1:t,seg2:e})},segmentChop:function(t,e){return n(“div_seg”,{seg:t,pt:e}),n(“chop”,{seg:t,pt:e})},statusRemove:function(t){return n(“pop_seg”,{seg:t})},segmentUpdate:function(t){return n(“seg_update”,{seg:t})},segmentNew:function(t,e){return n(“new_seg”,{seg:t,primary:e})},segmentRemove:function(t){return n(“rem_seg”,{seg:t})},tempStatus:function(t,e,r){return n(“temp_status”,{seg:t,above:e,below:r})},rewind:function(t){return n(“rewind”,{seg:t})},status:function(t,e,r){return n(“status”,{seg:t,above:e,below:r})},vert:function(e){return e===r?t:(r=e,n(“vert”,{x:e}))},log:function(t){return”string”!=typeof t&&(t=JSON.stringify(t,!1,” “)),n(“log”,{txt:t})},reset:function(){return n(“reset”)},selected:function(t){return n(“selected”,{segs:t})},chainStart:function(t){return n(“chain_start”,{seg:t})},chainRemoveHead:function(t,e){return n(“chain_rem_head”,{index:t,pt:e})},chainRemoveTail:function(t,e){return n(“chain_rem_tail”,{index:t,pt:e})},chainNew:function(t,e){return n(“chain_new”,{pt1:t,pt2:e})},chainMatch:function(t){return n(“chain_match”,{index:t})},chainClose:function(t){return n(“chain_close”,{index:t})},chainAddHead:function(t,e){return n(“chain_add_head”,{index:t,pt:e})},chainAddTail:function(t,e){return n(“chain_add_tail”,{index:t,pt:e})},chainConnect:function(t,e){return n(“chain_con”,{index1:t,index2:e})},chainReverse:function(t){return n(“chain_rev”,{index:t})},chainJoin:function(t,e){return n(“chain_join”,{index1:t,index2:e})},done:function(){return n(“done”)}}}},{}],473:[function(t,e,r){e.exports=function(t){“number”!=typeof t&&(t=1e-10);var e={epsilon:function(e){return”number”==typeof e&&(t=e),t},pointAboveOrOnLine:function(e,r,n){var a=r[0],i=r[1],o=n[0],s=n[1],l=e[0];return(o-a)(e[1]-i)-(s-i)*(l-a)>=-t},pointBetween:function(e,r,n){var a=e[1]-r[1],i=n[0]-r[0],o=e[0]-r[0],s=n[1]-r[1],l=o*i+a*s;return!(l-t)},pointsSameX:function(e,r){return Math.abs(e[0]-r[0])t!=o-a>t&&(i-c)(a-u)/(o-u)+c-n>t&&(s=!s),i=c,o=u}return s}};return e}},{}],474:[function(t,e,r){var n={toPolygon:function(t,e){function r(e){if(e.length<=0)return t.segments({inverted:!1,regions:[]});function r(e){var r=e.slice(0,e.length-1);return t.segments({inverted:!1,regions:[r]})}for(var n=r(e[0]),a=1;a<e.length;a++)n=t.selectDifference(t.combine(n,r(e[a])));return n}if(“Polygon”===e.type)return t.polygon(r(e.coordinates));if(“MultiPolygon”===e.type){for(var n=t.segments({inverted:!1,regions:[]}),a=0;a<e.coordinates.length;a++)n=t.selectUnion(t.combine(n,r(e.coordinates[a])));return t.polygon(n)}throw new Error(“PolyBool: Cannot convert GeoJSON object to PolyBool polygon”)},fromPolygon:function(t,e,r){function n(t,r){return e.pointInsideRegion([.5*(t[0][0]+t[1][0]),.5(t[0][1]+t[1][1])],r)}function a(t){return{region:t,children:[]}}r=t.polygon(t.segments®);var i=a(null);function o(t,e){for(var r=0;r0}))}function u(t,n){var a=t.seg,i=n.seg,o=a.start,s=a.end,c=i.start,u=i.end;r&&r.checkIntersection(a,i);var h=e.linesIntersect(o,s,c,u);if(!1===h){if(!e.pointsCollinear(o,s,c))return!1;if(e.pointsSame(o,u)||e.pointsSame(s,c))return!1;var f=e.pointsSame(o,c),p=e.pointsSame(s,u);if(f&&p)return n;var d=!f&&e.pointBetween(o,c,u),g=!p&&e.pointBetween(s,c,u);if(f)return g?l(n,s):l(t,u),n;d&&(p||(g?l(n,s):l(t,u)),l(n,o))}else 0===h.alongA&&(-1===h.alongB?l(t,c):0===h.alongB?l(t,h.pt):1===h.alongB&&l(t,u)),0===h.alongB&&(-1===h.alongA?l(n,o):0===h.alongA?l(n,h.pt):1===h.alongA&&l(n,s));return!1}for(var h=[];!i.isEmpty();){var f=i.getHead();if(r&&r.vert(f.pt[0]),f.isStart){r&&r.segmentNew(f.seg,f.primary);var p=c(f),d=p.before?p.before.ev:null,g=p.after?p.after.ev:null;function m(){if(d){var t=u(f,d);if(t)return t}return!!g&&u(f,g)}r&&r.tempStatus(f.seg,!!d&&d.seg,!!g&&g.seg);var v,y=m();if(y){var x;if(t)(x=null===f.seg.myFill.below||f.seg.myFill.above!==f.seg.myFill.below)&&(y.seg.myFill.above=!y.seg.myFill.above);else y.seg.otherFill=f.seg.myFill;r&&r.segmentUpdate(y.seg),f.other.remove(),f.remove()}if(i.getHead()!==f){r&&r.rewind(f.seg);continue}if(t)x=null===f.seg.myFill.below||f.seg.myFill.above!==f.seg.myFill.below,f.seg.myFill.below=g?g.seg.myFill.above:a,f.seg.myFill.above=x?!f.seg.myFill.below:f.seg.myFill.below;else if(null===f.seg.otherFill)v=g?f.primary===g.primary?g.seg.otherFill.above:g.seg.myFill.above:f.primary?o:a,f.seg.otherFill={above:v,below:v};r&&r.status(f.seg,!!d&&d.seg,!!g&&g.seg),f.other.status=p.insert(n.node({ev:f}))}else{var b=f.status;if(null===b)throw new Error(“PolyBool: Zero-length segment detected; your epsilon is probably too small or too large”);if(s.exists(b.prev)&&s.exists(b.next)&&u(b.prev.ev,b.next.ev),r&&r.statusRemove(b.ev.seg),b.remove(),!f.primary){var =f.seg.myFill;f.seg.myFill=f.seg.otherFill,f.seg.otherFill=}h.push(f.seg)}i.getHead().remove()}return r&&r.done(),h}return t?{addRegion:function(t){for(var n,a,i,o=t[t.length-1],l=0;l=c?(k=1,y=c+2f+d):y=f(k=-f/c)+d):(k=0,p>=0?(A=0,y=d):-p>=h?(A=1,y=h+2p+d):y=p(A=-p/h)+d);else if(A<0)A=0,f>=0?(k=0,y=d):-f>=c?(k=1,y=c+2f+d):y=f(k=-f/c)+d;else{var M=1/T;y=(k=M)(ck+u(A*=M)+2f)+A(u*k+h*A+2*p)+d}else k<0?(b=h+p)>(x=u+f)?(=b-x)>=(w=c-2*u+h)?(k=1,A=0,y=c+2*f+d):y=(k=/w)*(ck+u(A=1-k)+2f)+A(u*k+h*A+2*p)+d:(k=0,b<=0?(A=1,y=h+2p+d):p>=0?(A=0,y=d):y=p(A=-p/h)+d):A<0?(b=c+f)>(x=u+p)?(=b-x)>=(w=c-2*u+h)?(A=1,k=0,y=h+2*p+d):y=(k=1-(A=/w))*(c*k+u*A+2f)+A(u*k+h*A+2*p)+d:(A=0,b<=0?(k=1,y=c+2f+d):f>=0?(k=0,y=d):y=f(k=-f/c)+d):(=h+p-u-f)<=0?(k=0,A=1,y=h+2*p+d):>=(w=c-2*u+h)?(k=1,A=0,y=c+2f+d):y=(k=_/w)(ck+u(A=1-k)+2f)+A(u*k+h*A+2*p)+d;var S=1-k-A;for(l=0;l1)for(var r=1;r0){var c=t[r-1];if(0===n(s,c)&&i©!==l){r-=1;continue}}t[r++]=s}}return t.length=r,t}},{“cell-orientation”:114,“compare-cell”:130,“compare-oriented-cell”:131}],488:[function(t,e,r){“use strict”;var n=t(“array-bounds”),a=t(“color-normalize”),i=t(“update-diff”),o=t(“pick-by-alias”),s=t(“object-assign”),l=t(“flatten-vertex-data”),c=t(“to-float32”),u=c.float32,h=c.fract32;e.exports=function(t,e){“function”==typeof t?(e||(e={}),e.regl=t):e=t;e.length&&(e.positions=e);if(!(t=e.regl).hasExtension(“ANGLE_instanced_arrays”))throw Error(“regl-error2d: ANGLE_instanced_arrays extension should be enabled”);var r,c,p,d,g,m,v=t._gl,y={color:“black”,capSize:5,lineWidth:1,opacity:1,viewport:null,range:null,offset:0,count:0,bounds:null,positions:[],errors:[]},x=[];return d=t.buffer({usage:“dynamic”,type:“uint8”,data:new Uint8Array(0)}),c=t.buffer({usage:“dynamic”,type:“float”,data:new Uint8Array(0)}),p=t.buffer({usage:“dynamic”,type:“float”,data:new Uint8Array(0)}),g=t.buffer({usage:“dynamic”,type:“float”,data:new Uint8Array(0)}),m=t.buffer({usage:“static”,type:“float”,data:f}),T(e),r=t({vert:”\n\t\tprecision highp float;\n\n\t\tattribute vec2 position, positionFract;\n\t\tattribute vec4 error;\n\t\tattribute vec4 color;\n\n\t\tattribute vec2 direction, lineOffset, capOffset;\n\n\t\tuniform vec4 viewport;\n\t\tuniform float lineWidth, capSize;\n\t\tuniform vec2 scale, scaleFract, translate, translateFract;\n\n\t\tvarying vec4 fragColor;\n\n\t\tvoid main() {\n\t\t\tfragColor = color / 255.;\n\n\t\t\tvec2 pixelOffset = lineWidth * lineOffset + (capSize + lineWidth) * capOffset;\n\n\t\t\tvec2 dxy = -step(.5, direction.xy) * error.xz + step(direction.xy, vec2(-.5)) * error.yw;\n\n\t\t\tvec2 position = position + dxy;\n\n\t\t\tvec2 pos = (position + translate) * scale\n\t\t\t\t+ (positionFract + translateFract) * scale\n\t\t\t\t+ (position + translate) * scaleFract\n\t\t\t\t+ (positionFract + translateFract) * scaleFract;\n\n\t\t\tpos += pixelOffset / viewport.zw;\n\n\t\t\tgl_Position = vec4(pos * 2. - 1., 0, 1);\n\t\t}\n\t\t”,frag:”\n\t\tprecision highp float;\n\n\t\tvarying vec4 fragColor;\n\n\t\tuniform float opacity;\n\n\t\tvoid main() {\n\t\t\tgl_FragColor = fragColor;\n\t\t\tglFragColor.a *= opacity;\n\t\t}\n\t\t”,uniforms:{range:t.prop(“range”),lineWidth:t.prop(“lineWidth”),capSize:t.prop(“capSize”),opacity:t.prop(“opacity”),scale:t.prop(“scale”),translate:t.prop(“translate”),scaleFract:t.prop(“scaleFract”),translateFract:t.prop(“translateFract”),viewport:function(t,e){return[e.viewport.x,e.viewport.y,t.viewportWidth,t.viewportHeight]}},attributes:{color:{buffer:d,offset:function(t,e){return 4*e.offset},divisor:1},position:{buffer:c,offset:function(t,e){return 8*e.offset},divisor:1},positionFract:{buffer:p,offset:function(t,e){return 8*e.offset},divisor:1},error:{buffer:g,offset:function(t,e){return 16*e.offset},divisor:1},direction:{buffer:m,stride:24,offset:0},lineOffset:{buffer:m,stride:24,offset:8},capOffset:{buffer:m,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:t.prop(“viewport”)},viewport:t.prop(“viewport”),stencil:!1,instances:t.prop(“count”),count:f.length}),s(b,{update:T,draw:,destroy:k,regl:t,gl:v,canvas:v.canvas,groups:x}),b;function b(t){t?T(t):null===t&&k(),_()}function _(e){if(“number”==typeof e)return w(e);e&&!Array.isArray(e)&&(e=[e]),t.refresh(),x.forEach((function(t,r){t&&(e&&(e[r]?t.draw=!0:t.draw=!1),t.draw?w®:t.draw=!0)}))}function w(t){“number”==typeof t&&(t=x[t]),null!=t&&t&&t.count&&t.color&&t.opacity&&t.positions&&t.positions.length>1&&(t.scaleRatio=[t.scale[0]*t.viewport.width,t.scale[1]t.viewport.height],r(t),t.after&&t.after(t))}function T(t){if(t){null!=t.length?“number”==typeof t[0]&&(t=[{positions:t}]):Array.isArray(t)||(t=[t]);var e=0,r=0;if(b.groups=x=t.map((function(t,c){var u=x[c];return t?(“function”==typeof t?t={after:t}:“number”==typeof t[0]&&(t={positions:t}),t=o(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”}),u||(x[c]=u={id:c,scale:null,translate:null,scaleFract:null,translateFract:null,draw:!0},t=s({},y,t)),i(u,t,[{lineWidth:function(t){return.5+t},capSize:function(t){return.5*+t},opacity:parseFloat,errors:function(t){return t=l(t),r+=t.length,t},positions:function(t,r){return t=l(t,“float64”),r.count=Math.floor(t.length/2),r.bounds=n(t,2),r.offset=e,e+=r.count,t}},{color:function(t,e){var r=e.count;if(t||(t=“transparent”),!Array.isArray(t)||“number”==typeof t[0]){var n=t;t=Array®;for(var i=0;i<r;i++)t[i]=n}if(t.length<r)throw Error(“Not enough colors”);for(var o=new Uint8Array(4*r),s=0;s<r;s++){var l=a(t[s],“uint8”);o.set(l,4*s)}return o},range:function(t,e,r){var n=e.bounds;return t||(t=n),e.scale=[1/(t[2]-t[0]),1/(t[3]-t[1])],e.translate=[-t[0],-t[1]],e.scaleFract=h(e.scale),e.translateFract=h(e.translate),t},viewport:function(t){var e;return Array.isArray(t)?e={x:t[0],y:t[1],width:t[2]-t[0],height:t[3]-t[1]}:t?(e={x:t.x||t.left||0,y:t.y||t.top||0},t.right?e.width=t.right-e.x:e.width=t.w||t.width||0,t.bottom?e.height=t.bottom-e.y:e.height=t.h||t.height||0):e={x:0,y:0,width:v.drawingBufferWidth,height:v.drawingBufferHeight},e}}]),u):u})),e||r){var f=x.reduce((function(t,e,r){return t+(e?e.count:0)}),0),m=new Float64Array(2*f),=new Uint8Array(4*f),w=new Float32Array(4*f);x.forEach((function(t,e){if(t){var r=t.positions,n=t.count,a=t.offset,i=t.color,o=t.errors;n&&(.set(i,4*a),w.set(o,4*a),m.set(r,2*a))}})),c(u(m)),p(h(m)),d(),g(w)}}}function k(){c.destroy(),p.destroy(),d.destroy(),g.destroy(),m.destroy()}};var f=[[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]]},{“array-bounds”:68,“color-normalize”:122,“flatten-vertex-data”:239,“object-assign”:452,“pick-by-alias”:463,“to-float32”:529,“update-diff”:551}],489:[function(t,e,r){“use strict”;var n=t(“color-normalize”),a=t(“array-bounds”),i=t(“object-assign”),o=t(“glslify”),s=t(“pick-by-alias”),l=t(“flatten-vertex-data”),c=t(“earcut”),u=t(“array-normalize”),h=t(“to-float32”),f=h.float32,p=h.fract32,d=t(“es6-weak-map”),g=t(“parse-rect”);function m(t,e){if(!(this instanceof m))return new m(t,e);if(“function”==typeof t?(e||(e={}),e.regl=t):e=t,e.length&&(e.positions=e),!(t=e.regl).hasExtension(“ANGLE_instanced_arrays”))throw Error(“regl-error2d: ANGLE_instanced_arrays extension should be enabled”);this.gl=t._gl,this.regl=t,this.passes=[],this.shaders=m.shaders.has(t)?m.shaders.get(t):m.shaders.set(t,m.createShaders(t)).get(t),this.update(e)}e.exports=m,m.dashMult=2,m.maxPatternLength=256,m.precisionThreshold=3e6,m.maxPoints=1e4,m.maxLines=2048,m.shaders=new d,m.createShaders=function(t){var e,r=t.buffer({usage:“static”,type:“float”,data:[0,1,0,0,1,1,1,0]}),n={primitive:“triangle strip”,instances:t.prop(“count”),count:4,offset:0,uniforms:{miterMode:function(t,e){return”round”===e.join?2:1},miterLimit:t.prop(“miterLimit”),scale:t.prop(“scale”),scaleFract:t.prop(“scaleFract”),translateFract:t.prop(“translateFract”),translate:t.prop(“translate”),thickness:t.prop(“thickness”),dashPattern:t.prop(“dashTexture”),opacity:t.prop(“opacity”),pixelRatio:t.context(“pixelRatio”),id:t.prop(“id”),dashSize:t.prop(“dashLength”),viewport:function(t,e){return[e.viewport.x,e.viewport.y,t.viewportWidth,t.viewportHeight]},depth:t.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:function(t,e){return!e.overlay}},stencil:{enable:!1},scissor:{enable:!0,box:t.prop(“viewport”)},viewport:t.prop(“viewport”)},a=t(i({vert:o([“precision highp float;\n#define GLSLIFY 1\n\nattribute vec2 aCoord, bCoord, aCoordFract, bCoordFract;\nattribute vec4 color;\nattribute float lineEnd, lineTop;\n\nuniform vec2 scale, scaleFract, translate, translateFract;\nuniform float thickness, pixelRatio, id, depth;\nuniform vec4 viewport;\n\nvarying vec4 fragColor;\nvarying vec2 tangent;\n\nvec2 project(vec2 position, vec2 positionFract, vec2 scale, vec2 scaleFract, vec2 translate, vec2 translateFract) {\n\t// the order is important\n\treturn position * scale + translate\n + positionFract * scale + translateFract\n + position * scaleFract\n + positionFract * scaleFract;\n}\n\nvoid main() {\n\tfloat lineStart = 1. - lineEnd;\n\tfloat lineOffset = lineTop * 2. - 1.;\n\n\tvec2 diff = (bCoord + bCoordFract - aCoord - aCoordFract);\n\ttangent = normalize(diff * scale * viewport.zw);\n\tvec2 normal = vec2(-tangent.y, tangent.x);\n\n\tvec2 position = project(aCoord, aCoordFract, scale, scaleFract, translate, translateFract) * lineStart\n\t\t+ project(bCoord, bCoordFract, scale, scaleFract, translate, translateFract) * lineEnd\n\n\t\t+ thickness * normal * .5 * lineOffset / viewport.zw;\n\n\tgl_Position = vec4(position * 2.0 - 1.0, depth, 1);\n\n\tfragColor = color / 255.;\n}\n”]),frag:o([“precision highp float;\n#define GLSLIFY 1\n\nuniform sampler2D dashPattern;\n\nuniform float dashSize, pixelRatio, thickness, opacity, id;\n\nvarying vec4 fragColor;\nvarying vec2 tangent;\n\nvoid main() {\n\tfloat alpha = 1.;\n\n\tfloat t = fract(dot(tangent, gl_FragCoord.xy) / dashSize) * .5 + .25;\n\tfloat dash = texture2D(dashPattern, vec2(t, .5)).r;\n\n\tgl_FragColor = fragColor;\n\tgl_FragColor.a *= alpha * opacity * dash;\n}\n”]),attributes:{lineEnd:{buffer:r,divisor:0,stride:8,offset:0},lineTop:{buffer:r,divisor:0,stride:8,offset:4},aCoord:{buffer:t.prop(“positionBuffer”),stride:8,offset:8,divisor:1},bCoord:{buffer:t.prop(“positionBuffer”),stride:8,offset:16,divisor:1},aCoordFract:{buffer:t.prop(“positionFractBuffer”),stride:8,offset:8,divisor:1},bCoordFract:{buffer:t.prop(“positionFractBuffer”),stride:8,offset:16,divisor:1},color:{buffer:t.prop(“colorBuffer”),stride:4,offset:0,divisor:1}}},n));try{e=t(i({cull:{enable:!0,face:“back”},vert:o([“precision highp float;\n#define GLSLIFY 1\n\nattribute vec2 aCoord, bCoord, nextCoord, prevCoord;\nattribute vec4 aColor, bColor;\nattribute float lineEnd, lineTop;\n\nuniform vec2 scale, translate;\nuniform float thickness, pixelRatio, id, depth;\nuniform vec4 viewport;\nuniform float miterLimit, miterMode;\n\nvarying vec4 fragColor;\nvarying vec4 startCutoff, endCutoff;\nvarying vec2 tangent;\nvarying vec2 startCoord, endCoord;\nvarying float enableStartMiter, enableEndMiter;\n\nconst float REVERSE_THRESHOLD = -.875;\nconst float MIN_DIFF = 1e-6;\n\n// TODO: possible optimizations: avoid overcalculating all for vertices and calc just one instead\n// TODO: precalculate dot products, normalize things beforehead etc.\n// TODO: refactor to rectangular algorithm\n\nfloat distToLine(vec2 p, vec2 a, vec2 b) {\n\tvec2 diff = b - a;\n\tvec2 perp = normalize(vec2(-diff.y, diff.x));\n\treturn dot(p - a, perp);\n}\n\nbool isNaN( float val ){\n return ( val < 0.0 || 0.0 < val || val == 0.0 ) ? false : true;\n}\n\nvoid main() {\n\tvec2 aCoord = aCoord, bCoord = bCoord, prevCoord = prevCoord, nextCoord = nextCoord;\n\n vec2 adjustedScale;\n adjustedScale.x = (abs(scale.x) < MIN_DIFF) ? MIN_DIFF : scale.x;\n adjustedScale.y = (abs(scale.y) < MIN_DIFF) ? MIN_DIFF : scale.y;\n\n vec2 scaleRatio = adjustedScale * viewport.zw;\n\tvec2 normalWidth = thickness / scaleRatio;\n\n\tfloat lineStart = 1. - lineEnd;\n\tfloat lineBot = 1. - lineTop;\n\n\tfragColor = (lineStart * aColor + lineEnd * bColor) / 255.;\n\n\tif (isNaN(aCoord.x) || isNaN(aCoord.y) || isNaN(bCoord.x) || isNaN(bCoord.y)) return;\n\n\tif (aCoord == prevCoord) prevCoord = aCoord + normalize(bCoord - aCoord);\n\tif (bCoord == nextCoord) nextCoord = bCoord - normalize(bCoord - aCoord);\n\n\tvec2 prevDiff = aCoord - prevCoord;\n\tvec2 currDiff = bCoord - aCoord;\n\tvec2 nextDiff = nextCoord - bCoord;\n\n\tvec2 prevTangent = normalize(prevDiff * scaleRatio);\n\tvec2 currTangent = normalize(currDiff * scaleRatio);\n\tvec2 nextTangent = normalize(nextDiff * scaleRatio);\n\n\tvec2 prevNormal = vec2(-prevTangent.y, prevTangent.x);\n\tvec2 currNormal = vec2(-currTangent.y, currTangent.x);\n\tvec2 nextNormal = vec2(-nextTangent.y, nextTangent.x);\n\n\tvec2 startJoinDirection = normalize(prevTangent - currTangent);\n\tvec2 endJoinDirection = normalize(currTangent - nextTangent);\n\n\t// collapsed/unidirectional segment cases\n\t// FIXME: there should be more elegant solution\n\tvec2 prevTanDiff = abs(prevTangent - currTangent);\n\tvec2 nextTanDiff = abs(nextTangent - currTangent);\n\tif (max(prevTanDiff.x, prevTanDiff.y) < MIN_DIFF) {\n\t\tstartJoinDirection = currNormal;\n\t}\n\tif (max(nextTanDiff.x, nextTanDiff.y) < MIN_DIFF) {\n\t\tendJoinDirection = currNormal;\n\t}\n\tif (aCoord == bCoord) {\n\t\tendJoinDirection = startJoinDirection;\n\t\tcurrNormal = prevNormal;\n\t\tcurrTangent = prevTangent;\n\t}\n\n\ttangent = currTangent;\n\n\t//calculate join shifts relative to normals\n\tfloat startJoinShift = dot(currNormal, startJoinDirection);\n\tfloat endJoinShift = dot(currNormal, endJoinDirection);\n\n\tfloat startMiterRatio = abs(1. / startJoinShift);\n\tfloat endMiterRatio = abs(1. / endJoinShift);\n\n\tvec2 startJoin = startJoinDirection * startMiterRatio;\n\tvec2 endJoin = endJoinDirection * endMiterRatio;\n\n\tvec2 startTopJoin, startBotJoin, endTopJoin, endBotJoin;\n\tstartTopJoin = sign(startJoinShift) * startJoin * .5;\n\tstartBotJoin = -startTopJoin;\n\n\tendTopJoin = sign(endJoinShift) * endJoin * .5;\n\tendBotJoin = -endTopJoin;\n\n\tvec2 aTopCoord = aCoord + normalWidth * startTopJoin;\n\tvec2 bTopCoord = bCoord + normalWidth * endTopJoin;\n\tvec2 aBotCoord = aCoord + normalWidth * startBotJoin;\n\tvec2 bBotCoord = bCoord + normalWidth * endBotJoin;\n\n\t//miter anti-clipping\n\tfloat baClipping = distToLine(bCoord, aCoord, aBotCoord) / dot(normalize(normalWidth * endBotJoin), normalize(normalWidth.yx * vec2(-startBotJoin.y, startBotJoin.x)));\n\tfloat abClipping = distToLine(aCoord, bCoord, bTopCoord) / dot(normalize(normalWidth * startBotJoin), normalize(normalWidth.yx * vec2(-endBotJoin.y, endBotJoin.x)));\n\n\t//prevent close to reverse direction switch\n\tbool prevReverse = dot(currTangent, prevTangent) <= REVERSE_THRESHOLD && abs(dot(currTangent, prevNormal)) * min(length(prevDiff), length(currDiff)) < length(normalWidth * currNormal);\n\tbool nextReverse = dot(currTangent, nextTangent) <= REVERSE_THRESHOLD && abs(dot(currTangent, nextNormal)) * min(length(nextDiff), length(currDiff)) < length(normalWidth * currNormal);\n\n\tif (prevReverse) {\n\t\t//make join rectangular\n\t\tvec2 miterShift = normalWidth * startJoinDirection * miterLimit * .5;\n\t\tfloat normalAdjust = 1. - min(miterLimit / startMiterRatio, 1.);\n\t\taBotCoord = aCoord + miterShift - normalAdjust * normalWidth * currNormal * .5;\n\t\taTopCoord = aCoord + miterShift + normalAdjust * normalWidth * currNormal * .5;\n\t}\n\telse if (!nextReverse && baClipping > 0. && baClipping < length(normalWidth * endBotJoin)) {\n\t\t//handle miter clipping\n\t\tbTopCoord -= normalWidth * endTopJoin;\n\t\tbTopCoord += normalize(endTopJoin * normalWidth) * baClipping;\n\t}\n\n\tif (nextReverse) {\n\t\t//make join rectangular\n\t\tvec2 miterShift = normalWidth * endJoinDirection * miterLimit * .5;\n\t\tfloat normalAdjust = 1. - min(miterLimit / endMiterRatio, 1.);\n\t\tbBotCoord = bCoord + miterShift - normalAdjust * normalWidth * currNormal * .5;\n\t\tbTopCoord = bCoord + miterShift + normalAdjust * normalWidth * currNormal * .5;\n\t}\n\telse if (!prevReverse && abClipping > 0. && abClipping < length(normalWidth * startBotJoin)) {\n\t\t//handle miter clipping\n\t\taBotCoord -= normalWidth * startBotJoin;\n\t\taBotCoord += normalize(startBotJoin * normalWidth) * abClipping;\n\t}\n\n\tvec2 aTopPosition = (aTopCoord) * adjustedScale + translate;\n\tvec2 aBotPosition = (aBotCoord) * adjustedScale + translate;\n\n\tvec2 bTopPosition = (bTopCoord) * adjustedScale + translate;\n\tvec2 bBotPosition = (bBotCoord) * adjustedScale + translate;\n\n\t//position is normalized 0..1 coord on the screen\n\tvec2 position = (aTopPosition * lineTop + aBotPosition * lineBot) * lineStart + (bTopPosition * lineTop + bBotPosition * lineBot) * lineEnd;\n\n\tstartCoord = aCoord * scaleRatio + translate * viewport.zw + viewport.xy;\n\tendCoord = bCoord * scaleRatio + translate * viewport.zw + viewport.xy;\n\n\tgl_Position = vec4(position * 2.0 - 1.0, depth, 1);\n\n\tenableStartMiter = step(dot(currTangent, prevTangent), .5);\n\tenableEndMiter = step(dot(currTangent, nextTangent), .5);\n\n\t//bevel miter cutoffs\n\tif (miterMode == 1.) {\n\t\tif (enableStartMiter == 1.) {\n\t\t\tvec2 startMiterWidth = vec2(startJoinDirection) * thickness * miterLimit * .5;\n\t\t\tstartCutoff = vec4(aCoord, aCoord);\n\t\t\tstartCutoff.zw += vec2(-startJoinDirection.y, startJoinDirection.x) / scaleRatio;\n\t\t\tstartCutoff = startCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;\n\t\t\tstartCutoff += viewport.xyxy;\n\t\t\tstartCutoff += startMiterWidth.xyxy;\n\t\t}\n\n\t\tif (enableEndMiter == 1.) {\n\t\t\tvec2 endMiterWidth = vec2(endJoinDirection) * thickness * miterLimit * .5;\n\t\t\tendCutoff = vec4(bCoord, bCoord);\n\t\t\tendCutoff.zw += vec2(-endJoinDirection.y, endJoinDirection.x) / scaleRatio;\n\t\t\tendCutoff = endCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;\n\t\t\tendCutoff += viewport.xyxy;\n\t\t\tendCutoff += endMiterWidth.xyxy;\n\t\t}\n\t}\n\n\t//round miter cutoffs\n\telse if (miterMode == 2.) {\n\t\tif (enableStartMiter == 1.) {\n\t\t\tvec2 startMiterWidth = vec2(startJoinDirection) * thickness * abs(dot(startJoinDirection, currNormal)) * .5;\n\t\t\tstartCutoff = vec4(aCoord, aCoord);\n\t\t\tstartCutoff.zw += vec2(-startJoinDirection.y, startJoinDirection.x) / scaleRatio;\n\t\t\tstartCutoff = startCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;\n\t\t\tstartCutoff += viewport.xyxy;\n\t\t\tstartCutoff += startMiterWidth.xyxy;\n\t\t}\n\n\t\tif (enableEndMiter == 1.) {\n\t\t\tvec2 endMiterWidth = vec2(endJoinDirection) * thickness * abs(dot(endJoinDirection, currNormal)) * .5;\n\t\t\tendCutoff = vec4(bCoord, bCoord);\n\t\t\tendCutoff.zw += vec2(-endJoinDirection.y, endJoinDirection.x) / scaleRatio;\n\t\t\tendCutoff = endCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;\n\t\t\tendCutoff += viewport.xyxy;\n\t\t\tendCutoff += endMiterWidth.xyxy;\n\t\t}\n\t}\n}\n”]),frag:o([“precision highp float;\n#define GLSLIFY 1\n\nuniform sampler2D dashPattern;\nuniform float dashSize, pixelRatio, thickness, opacity, id, miterMode;\n\nvarying vec4 fragColor;\nvarying vec2 tangent;\nvarying vec4 startCutoff, endCutoff;\nvarying vec2 startCoord, endCoord;\nvarying float enableStartMiter, enableEndMiter;\n\nfloat distToLine(vec2 p, vec2 a, vec2 b) {\n\tvec2 diff = b - a;\n\tvec2 perp = normalize(vec2(-diff.y, diff.x));\n\treturn dot(p - a, perp);\n}\n\nvoid main() {\n\tfloat alpha = 1., distToStart, distToEnd;\n\tfloat cutoff = thickness * .5;\n\n\t//bevel miter\n\tif (miterMode == 1.) {\n\t\tif (enableStartMiter == 1.) {\n\t\t\tdistToStart = distToLine(gl_FragCoord.xy, startCutoff.xy, startCutoff.zw);\n\t\t\tif (distToStart < -1.) {\n\t\t\t\tdiscard;\n\t\t\t\treturn;\n\t\t\t}\n\t\t\talpha *= min(max(distToStart + 1., 0.), 1.);\n\t\t}\n\n\t\tif (enableEndMiter == 1.) {\n\t\t\tdistToEnd = distToLine(gl_FragCoord.xy, endCutoff.xy, endCutoff.zw);\n\t\t\tif (distToEnd < -1.) {\n\t\t\t\tdiscard;\n\t\t\t\treturn;\n\t\t\t}\n\t\t\talpha *= min(max(distToEnd + 1., 0.), 1.);\n\t\t}\n\t}\n\n\t// round miter\n\telse if (miterMode == 2.) {\n\t\tif (enableStartMiter == 1.) {\n\t\t\tdistToStart = distToLine(gl_FragCoord.xy, startCutoff.xy, startCutoff.zw);\n\t\t\tif (distToStart < 0.) {\n\t\t\t\tfloat radius = length(gl_FragCoord.xy - startCoord);\n\n\t\t\t\tif(radius > cutoff + .5) {\n\t\t\t\t\tdiscard;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\talpha -= smoothstep(cutoff - .5, cutoff + .5, radius);\n\t\t\t}\n\t\t}\n\n\t\tif (enableEndMiter == 1.) {\n\t\t\tdistToEnd = distToLine(gl_FragCoord.xy, endCutoff.xy, endCutoff.zw);\n\t\t\tif (distToEnd < 0.) {\n\t\t\t\tfloat radius = length(gl_FragCoord.xy - endCoord);\n\n\t\t\t\tif(radius > cutoff + .5) {\n\t\t\t\t\tdiscard;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\talpha -= smoothstep(cutoff - .5, cutoff + .5, radius);\n\t\t\t}\n\t\t}\n\t}\n\n\tfloat t = fract(dot(tangent, gl_FragCoord.xy) / dashSize) * .5 + .25;\n\tfloat dash = texture2D(dashPattern, vec2(t, .5)).r;\n\n\tgl_FragColor = fragColor;\n\tgl_FragColor.a *= alpha * opacity * dash;\n}\n”]),attributes:{lineEnd:{buffer:r,divisor:0,stride:8,offset:0},lineTop:{buffer:r,divisor:0,stride:8,offset:4},aColor:{buffer:t.prop(“colorBuffer”),stride:4,offset:0,divisor:1},bColor:{buffer:t.prop(“colorBuffer”),stride:4,offset:4,divisor:1},prevCoord:{buffer:t.prop(“positionBuffer”),stride:8,offset:0,divisor:1},aCoord:{buffer:t.prop(“positionBuffer”),stride:8,offset:8,divisor:1},bCoord:{buffer:t.prop(“positionBuffer”),stride:8,offset:16,divisor:1},nextCoord:{buffer:t.prop(“positionBuffer”),stride:8,offset:24,divisor:1}}},n))}catch(t){e=a}return{fill:t({primitive:“triangle”,elements:function(t,e){return e.triangles},offset:0,vert:o([“precision highp float;\n#define GLSLIFY 1\n\nattribute vec2 position, positionFract;\n\nuniform vec4 color;\nuniform vec2 scale, scaleFract, translate, translateFract;\nuniform float pixelRatio, id;\nuniform vec4 viewport;\nuniform float opacity;\n\nvarying vec4 fragColor;\n\nconst float MAX_LINES = 256.;\n\nvoid main() {\n\tfloat depth = (MAX_LINES - 4. - id) / (MAX_LINES);\n\n\tvec2 position = position * scale + translate\n + positionFract * scale + translateFract\n + position * scaleFract\n + positionFract * scaleFract;\n\n\tgl_Position = vec4(position * 2.0 - 1.0, depth, 1);\n\n\tfragColor = color / 255.;\n\tfragColor.a *= opacity;\n}\n”]),frag:o([“precision highp float;\n#define GLSLIFY 1\n\nvarying vec4 fragColor;\n\nvoid main() {\n\tgl_FragColor = fragColor;\n}\n”]),uniforms:{scale:t.prop(“scale”),color:t.prop(“fill”),scaleFract:t.prop(“scaleFract”),translateFract:t.prop(“translateFract”),translate:t.prop(“translate”),opacity:t.prop(“opacity”),pixelRatio:t.context(“pixelRatio”),id:t.prop(“id”),viewport:function(t,e){return[e.viewport.x,e.viewport.y,t.viewportWidth,t.viewportHeight]}},attributes:{position:{buffer:t.prop(“positionBuffer”),stride:8,offset:8},positionFract:{buffer:t.prop(“positionFractBuffer”),stride:8,offset:8}},blend:n.blend,depth:{enable:!1},scissor:n.scissor,stencil:n.stencil,viewport:n.viewport}),rect:a,miter:e}},m.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},m.prototype.render=function(){for(var t,e=[],r=arguments.length;r–;)e[r]=arguments[r];e.length&&(t=this).update.apply(t,e),this.draw()},m.prototype.draw=function(){for(var t=this,e=[],r=arguments.length;r–;)e[r]=arguments[r];return(e.length?e:this.passes).forEach((function(e,r){var n;if(e&&Array.isArray(e))return(n=t).draw.apply(n,e);“number”==typeof e&&(e=t.passes[e]),e&&e.count>1&&e.opacity&&(t.regl._refresh(),e.fill&&e.triangles&&e.triangles.length>2&&t.shaders.fill(e),e.thickness&&(e.scale[0]*e.viewport.width>m.precisionThreshold||e.scale[1]e.viewport.height>m.precisionThreshold||“rect”===e.join||!e.join&&(e.thickness<=2||e.count>=m.maxPoints)?t.shaders.rect(e):t.shaders.miter(e)))})),this},m.prototype.update=function(t){var e=this;if(t){null!=t.length?“number”==typeof t[0]&&(t=[{positions:t}]):Array.isArray(t)||(t=[t]);var r=this.regl,o=this.gl;if(t.forEach((function(t,h){var d=e.passes[h];if(void 0!==t)if(null!==t){if(“number”==typeof t[0]&&(t={positions:t}),t=s(t,{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”}),d||(e.passes[h]=d={id:h,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})},t=i({},m.defaults,t)),null!=t.thickness&&(d.thickness=parseFloat(t.thickness)),null!=t.opacity&&(d.opacity=parseFloat(t.opacity)),null!=t.miterLimit&&(d.miterLimit=parseFloat(t.miterLimit)),null!=t.overlay&&(d.overlay=!!t.overlay,h<m.maxLines&&(d.depth=2(m.maxLines-1-h%m.maxLines)/m.maxLines-1)),null!=t.join&&(d.join=t.join),null!=t.hole&&(d.hole=t.hole),null!=t.fill&&(d.fill=t.fill?n(t.fill,“uint8”):null),null!=t.viewport&&(d.viewport=g(t.viewport)),d.viewport||(d.viewport=g([o.drawingBufferWidth,o.drawingBufferHeight])),null!=t.close&&(d.close=t.close),null===t.positions&&(t.positions=[]),t.positions){var v,y;if(t.positions.x&&t.positions.y){var x=t.positions.x,b=t.positions.y;y=d.count=Math.max(x.length,b.length),v=new Float64Array(2y);for(var =0;<y;_++)v[2]=x[],v[2*+1]=b[]}else v=l(t.positions,“float64”),y=d.count=Math.floor(v.length/2);var w=d.bounds=a(v,2);if(d.fill){for(var T=[],k={},A=0,M=0,S=0,E=d.count;Mt.length)&&(e=t.length);for(var r=0,n=new Array(e);r 1.0 + delta) {\n\t\tdiscard;\n\t}\n\n\talpha -= smoothstep(1.0 - delta, 1.0 + delta, radius);\n\n\tfloat borderRadius = fragBorderRadius;\n\tfloat ratio = smoothstep(borderRadius - delta, borderRadius + delta, radius);\n\tvec4 color = mix(fragColor, fragBorderColor, ratio);\n\tcolor.a *= alpha * opacity;\n\tgl_FragColor = color;\n}\n”]),l.vert=f([“precision highp float;\n#define GLSLIFY 1\n\nattribute float x, y, xFract, yFract;\nattribute float size, borderSize;\nattribute vec4 colorId, borderColorId;\nattribute float isActive;\n\nuniform vec2 scale, scaleFract, translate, translateFract;\nuniform float pixelRatio;\nuniform sampler2D palette;\nuniform vec2 paletteSize;\n\nconst float maxSize = 100.;\n\nvarying vec4 fragColor, fragBorderColor;\nvarying float fragBorderRadius, fragWidth;\n\nbool isDirect = (paletteSize.x < 1.);\n\nvec4 getColor(vec4 id) {\n return isDirect ? id / 255. : texture2D(palette,\n vec2(\n (id.x + .5) / paletteSize.x,\n (id.y + .5) / paletteSize.y\n )\n );\n}\n\nvoid main() {\n // ignore inactive points\n if (isActive == 0.) return;\n\n vec2 position = vec2(x, y);\n vec2 positionFract = vec2(xFract, yFract);\n\n vec4 color = getColor(colorId);\n vec4 borderColor = getColor(borderColorId);\n\n float size = size * maxSize / 255.;\n float borderSize = borderSize * maxSize / 255.;\n\n gl_PointSize = (size + borderSize) * pixelRatio;\n\n vec2 pos = (position + translate) * scale\n + (positionFract + translateFract) * scale\n + (position + translate) * scaleFract\n + (positionFract + translateFract) * scaleFract;\n\n gl_Position = vec4(pos * 2. - 1., 0, 1);\n\n fragBorderRadius = 1. - 2. * borderSize / (size + borderSize);\n fragColor = color;\n fragBorderColor = borderColor.a == 0. || borderSize == 0. ? vec4(color.rgb, 0.) : borderColor;\n fragWidth = 1. / gl_PointSize;\n}\n”]),m&&(l.frag=l.frag.replace(“smoothstep”,“smoothStep”),s.frag=s.frag.replace(“smoothstep”,“smoothStep”)),this.drawCircle=t(l)}b.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},b.prototype.render=function(){return arguments.length&&this.update.apply(this,arguments),this.draw(),this},b.prototype.draw=function(){for(var t=this,e=arguments.length,r=new Array(e),n=0;nn)?e.tree=u(t,{bounds:h}):n&&n.length&&(e.tree=n),e.tree){var f={primitive:“points”,usage:“static”,data:e.tree,type:“uint32”};e.elements?e.elements(f):e.elements=o.elements(f)}return a({data:v.float(t),usage:“dynamic”}),i({data:v.fract(t),usage:“dynamic”}),s({data:new Uint8Array©,type:“uint8”,usage:“stream”}),t}},{marker:function(e,r,n){var a=r.activation;if(a.forEach((function(t){return t&&t.destroy&&t.destroy()})),a.length=0,e&&“number”!=typeof e[0]){for(var i=[],s=0,l=Math.min(e.length,r.count);s=0)return i;if(t instanceof Uint8Array||t instanceof Uint8ClampedArray)e=t;else{e=new Uint8Array(t.length);for(var o=0,s=t.length;o4*n&&(this.tooManyColors=!0),this.updatePalette®,1===a.length?a[0]:a},b.prototype.updatePalette=function(t){if(!this.tooManyColors){var e=this.maxColors,r=this.paletteTexture,n=Math.ceil(.25t.length/e);if(n>1)for(var a=.25(t=t.slice()).length%e;a2?(s[0],s[2],n=s[1],a=s[3]):s.length?(n=s[0],a=s[1]):(s.x,n=s.y,s.x+s.width,a=s.y+s.height),l.length>2?(i=l[0],o=l[2],l[1],l[3]):l.length?(i=l[0],o=l[1]):(i=l.x,l.y,o=l.x+l.width,l.y+l.height),[i,n,o,a]}function p(t){if(“number”==typeof t)return[t,t,t,t];if(2===t.length)return[t[0],t[1],t[0],t[1]];var e=l(t);return[e.x,e.y,e.x+e.width,e.y+e.height]}e.exports=u,u.prototype.render=function(){for(var t,e=this,r=[],n=arguments.length;n–;)r[n]=arguments[n];return r.length&&(t=this).update.apply(t,r),this.regl.attributes.preserveDrawingBuffer?this.draw():(this.dirty?null==this.planned&&(this.planned=o((function(){e.draw(),e.dirty=!0,e.planned=null}))):(this.draw(),this.dirty=!0,o((function(){e.dirty=!1}))),this)},u.prototype.update=function(){for(var t,e=[],r=arguments.length;r–;)e[r]=arguments[r];if(e.length){for(var n=0;nk))&&(s.lower||!(T>>=e))<<3,(e|=r=(15<(t>>>=r))<<2)|(r=(3<(t>>>=r))<<1)|t>>>r>>1}function s(){function t(t){t:{for(var e=16;268435456>=e;e*=16)if(t<=e){t=e;break t}t=0}return 0<(e=r[o(t)>>2]).length?e.pop():new ArrayBuffer(t)}function e(t){r[o(t.byteLength)>>2].push(t)}var r=i(8,(function(){return[]}));return{alloc:t,free:e,allocType:function(e,r){var n=null;switch(e){case 5120:n=new Int8Array(t®,0,r);break;case 5121:n=new Uint8Array(t®,0,r);break;case 5122:n=new Int16Array(t(2*r),0,r);break;case 5123:n=new Uint16Array(t(2*r),0,r);break;case 5124:n=new Int32Array(t(4*r),0,r);break;case 5125:n=new Uint32Array(t(4*r),0,r);break;case 5126:n=new Float32Array(t(4*r),0,r);break;default:return null}return n.length!==r?n.subarray(0,r):n},freeType:function(t){e(t.buffer)}}}function l(t){return!!t&&“object”==typeof t&&Array.isArray(t.shape)&&Array.isArray(t.stride)&&“number”==typeof t.offset&&t.shape.length===t.stride.length&&(Array.isArray(t.data)||Z(t.data))}function c(t,e,r,n,a,i){for(var o=0;o(a=s)&&(a=n.buffer.byteLength,5123===h?a>>=1:5125===h&&(a>>=2)),n.vertCount=a,a=o,0>o&&(a=4,1===(o=n.buffer.dimension)&&(a=0),2===o&&(a=1),3===o&&(a=4)),n.primType=a}function o(t){n.elementsCount–,delete s[t.id],t.buffer.destroy(),t.buffer=null}var s={},c=0,u={uint8:5121,uint16:5123};e.oes_element_index_uint&&(u.uint32=5125),a.prototype.bind=function(){this.buffer.bind()};var h=[];return{create:function(t,e){function s(t){if(t)if(“number”==typeof t)c(t),h.primType=4,h.vertCount=0|t,h.type=5121;else{var e=null,r=35044,n=-1,a=-1,o=0,f=0;Array.isArray(t)||Z(t)||l(t)?e=t:(“data”in t&&(e=t.data),“usage”in t&&(r=$[t.usage]),“primitive”in t&&(n=nt[t.primitive]),“count”in t&&(a=0|t.count),“type”in t&&(f=u[t.type]),“length”in t?o=0|t.length:(o=a,5123===f||5122===f?o=2:5125!==f&&5124!==f||(o=4))),i(h,e,r,n,a,o,f)}else c(),h.primType=4,h.vertCount=0,h.type=5121;return s}var c=r.create(null,34963,!0),h=new a(c._buffer);return n.elementsCount++,s(t),s._reglType=“elements”,s._elements=h,s.subdata=function(t,e){return c.subdata(t,e),s},s.destroy=function(){o(h)},s},createStream:function(t){var e=h.pop();return e||(e=new a(r.create(null,34963,!0,!1)._buffer)),i(e,t,35040,-1,-1,0,0),e},destroyStream:function(t){h.push(t)},getElements:function(t){return”function”==typeof t&&t._elements instanceof a?t._elements:null},clear:function(){X(s).forEach(o)}}}function g(t){for(var e=Y.allocType(5123,t.length),r=0;r>>31<<15,a=(i<<1>>>24)-127,i=i>>13&1023;e[r]=-24>a?n:-14>a?n+(i+1024>>-14-a):15>=a,r.height>>=a,p(r,n[a]),t.mipmask|=1<e;++e)t.images[e]=null;return t}function L(t){for(var e=t.images,r=0;re){for(var r=0;r=–this.refCount&&F(this)}}),o.profile&&(i.getTotalTextureSize=function(){var t=0;return Object.keys(yt).forEach((function(e){t+=yt[e].stats.size})),t}),{create2D:function(e,r){function n(t,e){var r=a.texInfo;P.call®;var i=C();return”number”==typeof t?M(i,0|t,“number”==typeof e?0|e:0|t):t?(I(r,t),S(i,t)):M(i,1,1),r.genMipmaps&&(i.mipmask=(i.width<<1)-1),a.mipmask=i.mipmask,c(a,i),a.internalformat=i.internalformat,n.width=i.width,n.height=i.height,D(a),E(i,3553),z(r,3553),R(),L(i),o.profile&&(a.stats.size=T(a.internalformat,a.type,i.width,i.height,r.genMipmaps,!1)),n.format=tt[a.internalformat],n.type=et[a.type],n.mag=rt[r.magFilter],n.min=nt[r.minFilter],n.wrapS=at[r.wrapS],n.wrapT=at[r.wrapT],n}var a=new O(3553);return yt[a.id]=a,i.textureCount++,n(e,r),n.subimage=function(t,e,r,i){e|=0,r|=0,i|=0;var o=v();return c(o,a),o.width=0,o.height=0,p(o,t),o.width=o.width||(a.width>>i)-e,o.height=o.height||(a.height>>i)-r,D(a),d(o,3553,e,r,i),R(),k(o),n},n.resize=function(e,r){var i=0|e,s=0|r||i;if(i===a.width&&s===a.height)return n;n.width=a.width=i,n.height=a.height=s,D(a);for(var l=0;a.mipmask>>l;++l){var c=i>>l,u=s>>l;if(!c||!u)break;t.texImage2D(3553,l,a.format,c,u,0,a.format,a.type,null)}return R(),o.profile&&(a.stats.size=T(a.internalformat,a.type,i,s,!1,!1)),n},n._reglType=“texture2d”,n._texture=a,o.profile&&(n.stats=a.stats),n.destroy=function(){a.decRef()},n},createCube:function(e,r,n,a,s,l){function h(t,e,r,n,a,i){var s,l=f.texInfo;for(P.call(l),s=0;6>s;++s)g[s]=C();if(“number”!=typeof t&&t){if(“object”==typeof t)if(e)S(g[0],t),S(g[1],e),S(g[2],r),S(g[3],n),S(g[4],a),S(g[5],i);else if(I(l,t),u(f,t),“faces”in t)for(t=t.faces,s=0;6>s;++s)c(g[s],f),S(g[s],t[s]);else for(s=0;6>s;++s)S(g[s],t)}else for(t=0|t||1,s=0;6>s;++s)M(g[s],t,t);for(c(f,g[0]),f.mipmask=l.genMipmaps?(g[0].width<<1)-1:g[0].mipmask,f.internalformat=g[0].internalformat,h.width=g[0].width,h.height=g[0].height,D(f),s=0;6>s;++s)E(g[s],34069+s);for(z(l,34067),R(),o.profile&&(f.stats.size=T(f.internalformat,f.type,h.width,h.height,l.genMipmaps,!0)),h.format=tt[f.internalformat],h.type=et[f.type],h.mag=rt[l.magFilter],h.min=nt[l.minFilter],h.wrapS=at[l.wrapS],h.wrapT=at[l.wrapT],s=0;6>s;++s)L(g[s]);return h}var f=new O(34067);yt[f.id]=f,i.cubeCount++;var g=Array(6);return h(e,r,n,a,s,l),h.subimage=function(t,e,r,n,a){r|=0,n|=0,a|=0;var i=v();return c(i,f),i.width=0,i.height=0,p(i,e),i.width=i.width||(f.width>>a)-r,i.height=i.height||(f.height>>a)-n,D(f),d(i,34069+t,r,n,a),R(),k(i),h},h.resize=function(e){if((e|=0)!==f.width){h.width=f.width=e,h.height=f.height=e,D(f);for(var r=0;6>r;++r)for(var n=0;f.mipmask>>n;++n)t.texImage2D(34069+r,n,f.format,e>>n,e>>n,0,f.format,f.type,null);return R(),o.profile&&(f.stats.size=T(f.internalformat,f.type,h.width,h.height,!1,!0)),h}},h._reglType=“textureCube”,h._texture=f,o.profile&&(h.stats=f.stats),h.destroy=function(){f.decRef()},h},clear:function(){for(var e=0;er;++r)if(0!=(e.mipmask&1<>r,e.height>>r,0,e.internalformat,e.type,null);else for(var n=0;6>n;++n)t.texImage2D(34069+n,r,e.internalformat,e.width>>r,e.height>>r,0,e.internalformat,e.type,null);z(e.texInfo,e.target)}))}}}function A(t,e,r,n,a,i){function o(t,e,r){this.target=t,this.texture=e,this.renderbuffer=r;var n=t=0;e?(t=e.width,n=e.height):r&&(t=r.width,n=r.height),this.width=t,this.height=n}function s(t){t&&(t.texture&&t.texture._texture.decRef(),t.renderbuffer&&t.renderbuffer._renderbuffer.decRef())}function l(t,e,r){t&&(t.texture?t.texture._texture.refCount+=1:t.renderbuffer._renderbuffer.refCount+=1)}function c(e,r){r&&(r.texture?t.framebufferTexture2D(36160,e,r.target,r.texture._texture.texture,0):t.framebufferRenderbuffer(36160,e,36161,r.renderbuffer._renderbuffer.renderbuffer))}function u(t){var e=3553,r=null,n=null,a=t;return”object”==typeof t&&(a=t.data,“target”in t&&(e=0|t.target)),“texture2d”===(t=a._reglType)||“textureCube”===t?r=a:“renderbuffer”===t&&(n=a,e=36161),new o(e,r,n)}function h(t,e,r,i,s){return r?((t=n.create2D({width:t,height:e,format:i,type:s}))._texture.refCount=0,new o(3553,t,null)):((t=a.create({width:t,height:e,format:i})).renderbuffer.refCount=0,new o(36161,null,t))}function f(t){return t&&(t.texture||t.renderbuffer)}function p(t,e,r){t&&(t.texture?t.texture.resize(e,r):t.renderbuffer&&t.renderbuffer.resize(e,r),t.width=e,t.height=r)}function d(){this.id=T++,k[this.id]=this,this.framebuffer=t.createFramebuffer(),this.height=this.width=0,this.colorAttachments=[],this.depthStencilAttachment=this.stencilAttachment=this.depthAttachment=null}function g(t){t.colorAttachments.forEach(s),s(t.depthAttachment),s(t.stencilAttachment),s(t.depthStencilAttachment)}function m(e){t.deleteFramebuffer(e.framebuffer),e.framebuffer=null,i.framebufferCount–,delete k[e.id]}function v(e){var n;t.bindFramebuffer(36160,e.framebuffer);var a=e.colorAttachments;for(n=0;n<a.length;++n)c(36064+n,a[n]);for(n=a.length;n<r.maxColorAttachments;++n)t.framebufferTexture2D(36160,36064+n,3553,null,0);t.framebufferTexture2D(36160,33306,3553,null,0),t.framebufferTexture2D(36160,36096,3553,null,0),t.framebufferTexture2D(36160,36128,3553,null,0),c(36096,e.depthAttachment),c(36128,e.stencilAttachment),c(33306,e.depthStencilAttachment),t.checkFramebufferStatus(36160),t.isContextLost(),t.bindFramebuffer(36160,x.next?x.next.framebuffer:null),x.cur=x.next,t.getError()}function y(t,e){function r(t,e){var a,i=0,o=0,s=!0,c=!0;a=null;var p=!0,d=“rgba”,m=“uint8”,y=1,x=null,w=null,T=null,k=!1;“number”==typeof t?(i=0|t,o=0|e||i):t?(“shape”in t?(i=(o=t.shape)[0],o=o[1]):(“radius”in t&&(i=o=t.radius),“width”in t&&(i=t.width),“height”in t&&(o=t.height)),(“color”in t||“colors”in t)&&(a=t.color||t.colors,Array.isArray(a)),a||(“colorCount”in t&&(y=0|t.colorCount),“colorTexture”in t&&(p=!!t.colorTexture,d=“rgba4”),“colorType”in t&&(m=t.colorType,!p)&&(“half float”===m||“float16”===m?d=“rgba16f”:“float”!==m&&“float32”!==m||(d=“rgba32f”)),“colorFormat”in t&&(d=t.colorFormat,0<=b.indexOf(d)?p=!0:0<=.indexOf(d)&&(p=!1))),(“depthTexture”in t||“depthStencilTexture”in t)&&(k=!(!t.depthTexture&&!t.depthStencilTexture)),“depth”in t&&(“boolean”==typeof t.depth?s=t.depth:(x=t.depth,c=!1)),“stencil”in t&&(“boolean”==typeof t.stencil?c=t.stencil:(w=t.stencil,s=!1)),“depthStencil”in t&&(“boolean”==typeof t.depthStencil?s=c=t.depthStencil:(T=t.depthStencil,c=s=!1))):i=o=1;var A=null,M=null,S=null,E=null;if(Array.isArray(a))A=a.map(u);else if(a)A=[u(a)];else for(A=Array(y),a=0;aa;++a){for(c=0;ct;++t)r[t].resize(n);return e.width=e.height=n,e},_reglType:“framebufferCube”,destroy:function(){r.forEach((function(t){t.destroy()}))}})},clear:function(){X(k).forEach(m)},restore:function(){x.cur=null,x.next=null,x.dirty=!0,X(k).forEach((function(e){e.framebuffer=t.createFramebuffer(),v(e)}))}})}function M(){this.w=this.z=this.y=this.x=this.state=0,this.buffer=null,this.size=0,this.normalized=!1,this.type=5126,this.divisor=this.stride=this.offset=0}function S(t,e,r,n,a){function i(){this.id=++c,this.attributes=[];var t=e.oes_vertex_array_object;this.vao=t?t.createVertexArrayOES():null,u[this.id]=this,this.buffers=[]}var o=r.maxAttributes,s=Array(o);for(r=0;rt&&(t=e.stats.uniformsCount)})),t},r.getMaxAttributesCount=function(){var t=0;return f.forEach((function(e){e.stats.attributesCount>t&&(t=e.stats.attributesCount)})),t}),{clear:function(){var e=t.deleteShader.bind(t);X©.forEach(e),c={},X(u).forEach(e),u={},f.forEach((function(e){t.deleteProgram(e.program)})),f.length=0,h={},r.shaderCount=0},program:function(t,e,n,a){var i=h[e];i||(i=h[e]={});var o=i[t];return o&&!a?o:(e=new s(e,t),r.shaderCount++,l(e,n,a),o||(i[t]=e),f.push(e),e)},restore:function(){c={},u={};for(var t=0;t”+e+“?”+a+“.constant[“+e+”]:0;“})).join(”“),”}}else{“,“if(”,s,“(”,a,“.buffer)){”,u,“=”,i,“.createStream(”,34962,“,”,a,“.buffer);”,“}else{”,u,“=”,i,“.getBuffer(”,a,“.buffer);”,“}”,h,‘=“type” in ‘,a,“?”,o.glTypes,”[“,a,”.type]:“,u,”.dtype;“,l.normalized,”=!!“,a,”.normalized;“),n(“size”),n(“offset”),n(“stride”),n(“divisor”),r(“}}”),r.exit(“if(”,l.isStream,“){”,i,“.destroyStream(”,u,“);”,“}”),l}))})),o}function A(t,e,n,a,o){function s(t){var e=c[t];e&&(f[t]=e)}var l=function(t,e){if(“string”==typeof(r=t.static).frag&&“string”==typeof r.vert){if(0>1)“,s],”);“)}function e(){r(l,”.drawArraysInstancedANGLE(“,[d,g,m,s],“);”)}p?y?t():(r(“if(”,p,“){”),t(),r(“}else{”),e(),r(“}”)):e()}function o(){function t(){r(u+“.drawElements(”+[d,m,v,g+”<<((“+v+”-5121)>>1)“]+”);“)}function e(){r(u+”.drawArrays(“+[d,g,m]+“);”)}p?y?t():(r(“if(”,p,“){”),t(),r(“}else{”),e(),r(“}”)):e()}var s,l,c=t.shared,u=c.gl,h=c.draw,f=n.draw,p=function(){var a=f.elements,i=e;return a?((a.contextDep&&n.contextDynamic||a.propDep)&&(i=r),a=a.append(t,i)):a=i.def(h,“.”,“elements”),a&&i(“if(”+a+“)”+u+“.bindBuffer(34963,”+a+“.buffer.buffer);”),a}(),d=a(“primitive”),g=a(“offset”),m=function(){var a=f.count,i=e;return a?((a.contextDep&&n.contextDynamic||a.propDep)&&(i=r),a=a.append(t,i)):a=i.def(h,“.”,“count”),a}();if(“number”==typeof m){if(0===m)return}else r(“if(”,m,“){”),r.exit(“}”);K&&(s=a(“instances”),l=t.instancing);var v=p+“.type”,y=f.elements&&R(f.elements);K&&(“number”!=typeof s||0<=s)?“string”==typeof s?(r(“if(”,s,“>0){”),i(),r(“}else if(”,s,”<0){"),o(),r("}")):i():o()}function U(t,e,r,n,a){return a=(e=b()).proc("body",a),K&&(e.instancing=a.def(e.shared.extensions,".angle_instanced_arrays")),t(e,a,r,n),e.compile().body}function H(t,e,r,n){L(t,e),r.useVAO?r.drawVAO?e(t.shared.vao,".setVAO(",r.drawVAO.append(t,e),");"):e(t.shared.vao,".setVAO(",t.shared.vao,".targetVAO);"):(e(t.shared.vao,".setVAO(null);"),N(t,e,r,n.attributes,(function(){return!0}))),j(t,e,r,n.uniforms,(function(){return!0})),V(t,e,e,r)}function G(t,e,r,n){function a(){return!0}t.batchId="a1",L(t,e),N(t,e,r,n.attributes,a),j(t,e,r,n.uniforms,a),V(t,e,e,r)}function Y(t,e,r,n){function a(t){return t.contextDep&&o||t.propDep}function i(t){return!a(t)}L(t,e);var o=r.contextDep,s=e.def(),l=e.def();t.shared.props=l,t.batchId=s;var c=t.scope(),u=t.scope();e(c.entry,"for(",s,"=0;",s,"<","a1",";++",s,"){",l,"=","a0","[",s,"];",u,"}",c.exit),r.needsContext&&M(t,u,r.context),r.needsFramebuffer&&S(t,u,r.framebuffer),C(t,u,r.state,a),r.profile&&a(r.profile)&&P(t,u,r,!1,!0),n?(r.useVAO?r.drawVAO?a(r.drawVAO)?u(t.shared.vao,".setVAO(",r.drawVAO.append(t,u),");"):c(t.shared.vao,".setVAO(",r.drawVAO.append(t,c),");"):c(t.shared.vao,".setVAO(",t.shared.vao,".targetVAO);"):(c(t.shared.vao,".setVAO(null);"),N(t,c,r,n.attributes,i),N(t,u,r,n.attributes,a)),j(t,c,r,n.uniforms,i),j(t,u,r,n.uniforms,a),V(t,c,u,r)):(e=t.global.def("{}"),n=r.shader.progVar.append(t,u),l=u.def(n,".id"),c=u.def(e,"[",l,"]"),u(t.shared.gl,".useProgram(",n,".program);","if(!",c,"){",c,"=",e,"[",l,"]=",t.link((function(e){return U(G,t,r,e,2)})),"(",n,");}",c,".call(this,a0[",s,"],",s,");"))}function W(t,r){function n(e){var n=r.shader[e];n&&a.set(i.shader,"."+e,n.append(t,a))}var a=t.proc("scope",3);t.batchId="a2";var i=t.shared,o=i.current;M(t,a,r.context),r.framebuffer&&r.framebuffer.append(t,a),O(Object.keys(r.state)).forEach((function(e){var n=r.state[e].append(t,a);m(n)?n.forEach((function(r,n){a.set(t.next[e],"["+n+"]",r)})):a.set(i.next,"."+e,n)})),P(t,a,r,!0,!0),["elements","offset","count","instances","primitive"].forEach((function(e){var n=r.draw[e];n&&a.set(i.draw,"."+e,""+n.append(t,a))})),Object.keys(r.uniforms).forEach((function(n){a.set(i.uniforms,"["+e.id(n)+"]",r.uniforms[n].append(t,a))})),Object.keys(r.attributes).forEach((function(e){var n=r.attributes[e].append(t,a),i=t.scopeAttrib(e);Object.keys(new X).forEach((function(t){a.set(i,"."+t,n[t])}))})),r.scopeVAO&&a.set(i.vao,".targetVAO",r.scopeVAO.append(t,a)),n("vert"),n("frag"),0=–this.refCount&&o(this)},a.profile&&(n.getTotalRenderbufferSize=function(){var t=0;return Object.keys(u).forEach((function(e){t+=u[e].stats.size})),t}),{create:function(e,r){function o(e,r){var n=0,i=0,u=32854;if(“object”==typeof e&&e?(“shape”in e?(n=0|(i=e.shape)[0],i=0|i[1]):(“radius”in e&&(n=i=0|e.radius),“width”in e&&(n=0|e.width),“height”in e&&(i=0|e.height)),“format”in e&&(u=s[e.format])):“number”==typeof e?(n=0|e,i=“number”==typeof r?0|r:n):e||(n=i=1),n!==c.width||i!==c.height||u!==c.format)return o.width=c.width=n,o.height=c.height=i,c.format=u,t.bindRenderbuffer(36161,c.renderbuffer),t.renderbufferStorage(36161,u,n,i),a.profile&&(c.stats.size=yt[c.format]*c.width*c.height),o.format=l[c.format],o}var c=new i(t.createRenderbuffer());return u[c.id]=c,n.renderbufferCount++,o(e,r),o.resize=function(e,r){var n=0|e,i=0|r||n;return n===c.width&&i===c.height||(o.width=c.width=n,o.height=c.height=i,t.bindRenderbuffer(36161,c.renderbuffer),t.renderbufferStorage(36161,c.format,n,i),a.profile&&(c.stats.size=yt[c.format]*c.widthc.height)),o},o._reglType=“renderbuffer”,o._renderbuffer=c,a.profile&&(o.stats=c.stats),o.destroy=function(){c.decRef()},o},clear:function(){X(u).forEach(o)},restore:function(){X(u).forEach((function(e){e.renderbuffer=t.createRenderbuffer(),t.bindRenderbuffer(36161,e.renderbuffer),t.renderbufferStorage(36161,e.format,e.width,e.height)})),t.bindRenderbuffer(36161,null)}}},bt=[];bt[6408]=4,bt[6407]=3;var _t=[];_t[5121]=1,_t[5126]=4,_t[36193]=2;var wt=[“x”,“y”,“z”,“w”],Tt=“blend.func blend.equation stencil.func stencil.opFront stencil.opBack sample.coverage viewport scissor.box polygonOffset.offset”.split(” “),kt={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},At={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},Mt={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,“increment wrap”:34055,“decrement wrap”:34056,invert:5386},St={cw:2304,ccw:2305},Et=new D(!1,!1,!1,(function(){}));return function(t){function e(){if(0===J.length)w&&w.update(),tt=null;else{tt=H.next(e),h();for(var t=J.length-1;0<=t;–t){var r=J[t];r&&r(P,null,0)}m.flush(),w&&w.update()}}function r(){!tt&&0=J.length&&n()}}}}function u(){var t=Z.viewport,e=Z.scissorbox;t[0]=t[1]=e[0]=e[1]=0,P.viewportWidth=P.framebufferWidth=P.drawingBufferWidth=t[2]=e[2]=m.drawingBufferWidth,P.viewportHeight=P.framebufferHeight=P.drawingBufferHeight=t[3]=e[3]=m.drawingBufferHeight}function h(){P.tick+=1,P.time=g(),u(),Y.procs.poll()}function f(){u(),Y.procs.refresh(),w&&w.update()}function g(){return(G()-T)/1e3}if(!(t=a(t)))return null;var m=t.gl,v=m.getContextAttributes();m.isContextLost();var y=function(t,e){function r(e){var r;e=e.toLowerCase();try{r=n[e]=t.getExtension(e)}catch(t){}return!!r}for(var n={},a=0;a<e.extensions.length;++a){var i=e.extensions[a];if(!r(i))return e.onDestroy(),e.onDone(‘“’+i+‘” extension is not supported by the current WebGL context, try upgrading your system or a different browser’),null}return e.optionalExtensions.forEach®,{extensions:n,restore:function(){Object.keys(n).forEach((function(t){if(n[t]&&!r(t))throw Error(“(regl): error restoring extension “+t)}))}}}(m,t);if(!y)return null;var x=function(){var t={””:0},e=[“”];return{id:function®{var n=t[r];return n||(n=t[r]=e.length,e.push®,n)},str:function(t){return e[t]}}}(),b={vaoCount:0,bufferCount:0,elementsCount:0,framebufferCount:0,shaderCount:0,textureCount:0,cubeCount:0,renderbufferCount:0,maxTextureUnits:0},=y.extensions,w=function(t,e){function r(){this.endQueryIndex=this.startQueryIndex=-1,this.sum=0,this.stats=null}function n(t,e,n){var a=o.pop()||new r;a.startQueryIndex=t,a.endQueryIndex=e,a.sum=0,a.stats=n,s.push(a)}if(!e.ext_disjoint_timer_query)return null;var a=[],i=[],o=[],s=[],l=[],c=[];return{beginQuery:function(t){var r=a.pop()||e.ext_disjoint_timer_query.createQueryEXT();e.ext_disjoint_timer_query.beginQueryEXT(35007,r),i.push®,n(i.length-1,i.length,t)},endQuery:function(){e.ext_disjoint_timer_query.endQueryEXT(35007)},pushScopeStats:n,update:function(){var t,r;if(0!==(t=i.length)){c.length=Math.max(c.length,t+1),l.length=Math.max(l.length,t+1),l[0]=0;var n=c[0]=0;for(r=t=0;re;++e)et(V({framebuffer:t.framebuffer.faces[e]},t),l);else et(t,l);else l(0,t)},prop:q.define.bind(null,1),context:q.define.bind(null,2),this:q.define.bind(null,3),draw:s({}),buffer:function(t){return z.create(t,34962,!1,!1)},elements:function(t){return D.create(t,!1)},texture:F.create2D,cube:F.createCube,renderbuffer:B.create,framebuffer:U.create,framebufferCube:U.createCube,vao:O.createVAO,attributes:v,frame:c,on:function(t,e){var r;switch(t){case”frame”:return c(e);case”lost”:r=K;break;case”restore”:r=Q;break;case”destroy”:r=$}return r.push(e),{cancel:function(){for(var t=0;t<r.length;++t)if(r[t]===e){r[t]=r[r.length-1],r.pop();break}}}},limits:I,hasExtension:function(t){return 0<=I.extensions.indexOf(t.toLowerCase())},read:x,destroy:function(){J.length=0,n(),X&&(X.removeEventListener(“webglcontextlost”,i),X.removeEventListener(“webglcontextrestored”,o)),R.clear(),U.clear(),B.clear(),F.clear(),D.clear(),z.clear(),O.clear(),w&&w.clear(),$.forEach((function(t){t()}))},_gl:m,_refresh:f,poll:function(){h(),w&&w.update()},now:g,stats:b}),t.onDone(null,v),v}}))},{}],493:[function(t,e,r){ /!
    • repeat-string https://github.com/jonschlinkert/repeat-string *
    • Copyright © 2014-2015, Jon Schlinkert.
    • Licensed under the MIT License. */ “use strict”;var n,a=“”;e.exports=function(t,e){if(“string”!=typeof t)throw new TypeError(“expected a string”);if(1===e)return t;if(2===e)return t+t;var r=t.lengthe;if(n!==t||“undefined”==typeof n)n=t,a=“”;else if(a.length>=r)return a.substr(0,r);for(;r>a.length&&e>1;)1&e&&(a+=t),e>>=1,t+=t;return a=(a+=t).substr(0,r)}},{}],494:[function(t,e,r){(function(t){e.exports=t.performance&&t.performance.now?function(){return performance.now()}:Date.now||function(){return+new Date}}).call(this,“undefined”!=typeof global?global:“undefined”!=typeof self?self:“undefined”!=typeof window?window:{})},{}],495:[function(t,e,r){“use strict”;e.exports=function(t){for(var e=t.length,r=t[t.length-1],n=e,a=e-2;a>=0;–a){var i=r,o=t[a];(l=o-((r=i+o)-i))&&(t[–n]=r,r=l)}var s=0;for(a=n;a>1;return[“sum(”,t(e.slice(0,r)),“,”,t(e.slice®),“)”].join(“”)}(e);var n}function u(t){return new Function(“sum”,“scale”,“prod”,“compress”,[“function robustDeterminant”,t,“(m){return compress(”,c(l(t)),“)};return robustDeterminant”,t].join(“”))(a,i,n,o)}var h=[function(){return[0]},function(t){return[t[0][0]]}];!function(){for(;h.length<6;)h.push(u(h.length));for(var t=[],r=["function robustDeterminant(m){switch(m.length){"],n=0;n<6;++n)t.push("det"+n),r.push("case ",n,":return det",n,"(m);");r.push("}var det=CACHE[m.length];if(!det)det=CACHE[m.length]=gen(m.length);return det(m);}return robustDeterminant"),t.push("CACHE","gen",r.join(""));var a=Function.apply(void 0,t);for(e.exports=a.apply(void 0,h.concat([h,u])),n=0;n>1;return[“sum(”,l(t.slice(0,e)),“,”,l(t.slice(e)),“)”].join(“”)}function c(t,e){if(“m”===t.charAt(0)){if(“w”===e.charAt(0)){var r=t.split(”[“);return[“w”,e.substr(1),“m”,r[0].substr(1)].join(“”)}return[“prod(”,t,“,”,e,“)”].join(“”)}return c(e,t)}function u(t){if(2===t.length)return[[“diff(”,c(t[0][0],t[1][1]),“,”,c(t[1][0],t[0][1]),“)”].join(“”)];for(var e=[],r=0;r0&&r.push(“,”),r.push(”[“);for(var o=0;o0&&r.push(“,”),o===a?r.push(“+b[“,i,”]“):r.push(“+A[“,i,”][“,o,”]“);r.push(”]“)}r.push(”]),“)}r.push(“det(A)]}return “,e);var s=new Function(“det”,r.join(“”));return s(t<6?n[t]:n)}var i=[function(){return[0]},function(t,e){return[[e[0]],[t[0][0]]]}];!function(){for(;i.length<6;)i.push(a(i.length));for(var t=[],r=["function dispatchLinearSolve(A,b){switch(A.length){"],n=0;n<6;++n)t.push("s"+n),r.push("case ",n,":return s",n,"(A,b);");r.push("}var s=CACHE[A.length];if(!s)s=CACHE[A.length]=g(A.length);return s(A,b)}return dispatchLinearSolve"),t.push("CACHE","g",r.join(""));var o=Function.apply(void 0,t);for(e.exports=o.apply(void 0,i.concat([i,a])),n=0;n<6;++n)e.exports[n]=i[n]}()},{"robust-determinant":496}],500:[function(t,e,r){"use strict";var n=t("two-product"),a=t("robust-sum"),i=t("robust-scale"),o=t("robust-subtract");function s(t,e){for(var r=new Array(t.length-1),n=1;n>1;return[“sum(”,l(t.slice(0,e)),“,”,l(t.slice(e)),“)”].join(“”)}function c(t){if(2===t.length)return[[“sum(prod(”,t[0][0],“,”,t[1][1],“),prod(-”,t[0][1],“,”,t[1][0],“))”].join(“”)];for(var e=[],r=0;r<t.length;++r)e.push([“scale(”,l(c(s(t,r))),“,”,(n=r,1&n?“-”:“”),t[0][r],“)”].join(“”));return e;var n}function u(t){for(var e=[],r=[],u=function(t){for(var e=new Array(t),r=0;r<t;++r){e[r]=new Array(t);for(var n=0;n<t;++n)e[r][n]=[“m”,n,”[“,t-r-1,”]“].join(”“)}return e}(t),h=[],f=0;f<t;++f)0==(1&f)?e.push.apply(e,c(s(u,f))):r.push.apply(r,c(s(u,f))),h.push(“m”+f);var p=l(e),d=l®,g=“orientation”+t+“Exact”,m=[“function “,g,”(“,h.join(),”){var p=“,p,”,n=“,d,”,d=sub(p,n);return d[d.length-1];};return “,g].join(”“);return new Function(“sum”,“prod”,“scale”,“sub”,m)(a,n,i,o)}var h=u(3),f=u(4),p=[function(){return 0},function(){return 0},function(t,e){return e[0]-t[0]},function(t,e,r){var n,a=(t[1]-r[1])(e[0]-r[0]),i=(t[0]-r[0])*(e[1]-r[1]),o=a-i;if(a>0){if(i<=0)return o;n=a+i}else{if(!(a<0))return o;if(i>=0)return o;n=-(a+i)}var s=33306690738754716e-32*n;return o>=s||o<=-s?o:h(t,e,r)},function(t,e,r,n){var a=t[0]-n[0],i=e[0]-n[0],o=r[0]-n[0],s=t[1]-n[1],l=e[1]-n[1],c=r[1]-n[1],u=t[2]-n[2],h=e[2]-n[2],p=r[2]-n[2],d=i*c,g=o*l,m=o*s,v=a*c,y=a*l,x=is,b=u(d-g)+h(m-v)+p(y-x),=7771561172376103e-31*((Math.abs(d)+Math.abs(g))*Math.abs(u)+(Math.abs(m)+Math.abs(v))*Math.abs(h)+(Math.abs(y)+Math.abs(x))*Math.abs(p));return b>||-b>?b:f(t,e,r,n)}];function d(t){var e=p[t.length];return e||(e=p[t.length]=u(t.length)),e.apply(void 0,t)}!function(){for(;p.length<=5;)p.push(u(p.length));for(var t=[],r=[“slow”],n=0;n<=5;++n)t.push(“a”+n),r.push(“o”+n);var a=[“function getOrientation(”,t.join(),“){switch(arguments.length){case 0:case 1:return 0;“];for(n=2;n<=5;++n)a.push(“case “,n,”:return o”,n,“(”,t.slice(0,n).join(),“);”);a.push(“}var s=new Array(arguments.length);for(var i=0;i0&&o>0||i<0&&o<0)return!1;var s=n(r,t,e),l=n(a,t,e);if(s>0&&l>0||s<0&&l<0)return!1;if(0===i&&0===o&&0===s&&0===l)return function(t,e,r,n){for(var a=0;a<2;++a){var i=t[a],o=e[a],s=Math.min(i,o),l=Math.max(i,o),c=r[a],u=n[a],h=Math.min(c,u);if(Math.max(c,u)=n?(a=h,(l+=1)<r&&(h=t[l],f=u(h))):(a=p,(c+=1)<n&&(p=-e[c],d=u(p)));var g,m,v=a+i,y=v-a,x=i-y,b=x,=v;for(;l=n?(a=h,(l+=1)0?1:0}},{}],507:[function(t,e,r){“use strict”;e.exports=function(t){return a(n(t))};var n=t(“boundary-cells”),a=t(“reduce-simplicial-complex”)},{“boundary-cells”:98,“reduce-simplicial-complex”:487}],508:[function(t,e,r){“use strict”;e.exports=function(t,e,r,s){r=r||0,“undefined”==typeof s&&(s=function(t){for(var e=t.length,r=0,n=0;n>1,v=E[2*m+1];“,“if(v===b){return m}”,“if(b0&&l.push(“,”),l.push(”[“);for(var n=0;n0&&l.push(“,”),l.push(“B(C,E,c[“,a[0],“],c[“,a[1],“])”)}l.push(“]”)}l.push(“);”)}}for(i=t+1;i>1;–i){i>1,s=i(t[o],e);s<=0?(0===s&&(a=o),r=o+1):s>0&&(n=o-1)}return a}function u(t,e){for(var r=new Array(t.length),a=0,o=r.length;a=t.length||0!==i(t[m],s)););}return r}function h(t,e){if(e<0)return[];for(var r=[],a=(1<>>u&1&&c.push(a[u]);e.push©}return s(e)},r.skeleton=h,r.boundary=function(t){for(var e=[],r=0,n=t.length;r>1:(t>>1)-1}function x(t){for(var e=v(t);;){var r=e,n=2t+1,a=2(t+1),i=t;if(n0;){var r=y(t);if(r>=0)if(e0){var t=k[0];return m(0,M-1),M-=1,x(0),t}return-1}function w(t,e){var r=k[t];return c[r]===e?t:(c[r]=-10,b(t),(),c[r]=e,b((M+=1)-1))}function T(t){if(!u[t]){u[t]=!0;var e=s[t],r=l[t];s[r]>=0&&(s[r]=e),l[e]>=0&&(l[e]=r),A[e]>=0&&w(A[e],g(e)),A[r]>=0&&w(A[r],g®)}}var k=[],A=new Array(i);for(h=0;h>1;h>=0;–h)x(h);for(;;){var S=();if(S<0||c[S]>r)break;T(S)}var E=[];for(h=0;h=0&&r>=0&&e!==r){var n=A[e],a=A[r];n!==a&&L.push([n,a])}})),a.unique(a.normalize(L)),{positions:E,edges:L}};var n=t(“robust-orientation”),a=t(“simplicial-complex”)},{“robust-orientation”:500,“simplicial-complex”:512}],515:[function(t,e,r){“use strict”;e.exports=function(t,e){var r,i,o,s;if(e[0][0]e[1][0]))return a(e,t);r=e[1],i=e[0]}if(t[0][0]t[1][0]))return-a(t,e);o=t[1],s=t[0]}var l=n(r,i,s),c=n(r,i,o);if(l<0){if(c<=0)return l}else if(l>0){if(c>=0)return l}else if©return c;if(l=n(s,o,i),c=n(s,o,r),l<0){if(c<=0)return l}else if(l>0){if(c>=0)return l}else if©return c;return i[0]-s[0]};var n=t(“robust-orientation”);function a(t,e){var r,a,i,o;if(e[0][0]e[1][0])){var s=Math.min(t[0][1],t[1][1]),l=Math.max(t[0][1],t[1][1]),c=Math.min(e[0][1],e[1][1]),u=Math.max(e[0][1],e[1][1]);return lu?s-u:l-u}r=e[1],a=e[0]}t[0][1]0)if(e[0]!==o[1][0])r=t,t=t.right;else{if(l=c(t.right,e))return l;t=t.left}else{if(e[0]!==o[1][0])return t;var l;if(l=c(t.right,e))return l;t=t.left}}return r}function u(t,e,r,n){this.y=t,this.index=e,this.start=r,this.closed=n}function h(t,e,r,n){this.x=t,this.segment=e,this.create=r,this.index=n}s.prototype.castUp=function(t){var e=n.le(this.coordinates,t[0]);if(e<0)return-1;this.slabs[e];var r=c(this.slabs[e],t),a=-1;if(r&&(a=r.value),this.coordinates[e]===t[0]){var s=null;if(r&&(s=r.key),e>0){var u=c(this.slabs[e-1],t);u&&(s?o(u.key,s)>0&&(s=u.key,a=u.value):(a=u.value,s=u.key))}var h=this.horizontal[e];if(h.length>0){var f=n.ge(h,t[1],l);if(f=h.length)return a;p=h[f]}}if(p.start)if(s){var d=i(s[0],s[1],[t[0],p.y]);s[0][0]>s[1][0]&&(d=-d),d>0&&(a=p.index)}else a=p.index;else p.y!==t[1]&&(a=p.index)}}}return a}},{“./lib/order-segments”:515,“binary-search-bounds”:516,“functional-red-black-tree”:242,“robust-orientation”:500}],518:[function(t,e,r){“use strict”;var n=t(“robust-dot-product”),a=t(“robust-sum”);function i(t,e){var r=a(n(t,e),[e[e.length-1]]);return r[r.length-1]}function o(t,e,r,n){var a=-e/(n-e);a<0?a=0:a>1&&(a=1);for(var i=1-a,o=t.length,s=new Array(o),l=0;l0||a>0&&u<0){var h=o(s,u,l,a);r.push(h),n.push(h.slice())}u<0?n.push(l.slice()):u>0?r.push(l.slice()):(r.push(l.slice()),n.push(l.slice())),a=u}return{positive:r,negative:n}},e.exports.positive=function(t,e){for(var r=[],n=i(t[t.length-1],e),a=t[t.length-1],s=t[0],l=0;l0||n>0&&c<0)&&r.push(o(a,c,s,n)),c>=0&&r.push(s.slice()),n=c}return r},e.exports.negative=function(t,e){for(var r=[],n=i(t[t.length-1],e),a=t[t.length-1],s=t[0],l=0;l0||n>0&&c<0)&&r.push(o(a,c,s,n)),c<=0&&r.push(s.slice()),n=c}return r}},{"robust-dot-product":497,"robust-sum":505}],519:[function(t,e,r){!function(){"use strict";var t={not_string:/[^s]/,not_bool:/[^t]/,not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,not_json:/[^j]/,text:/^[^\x25]+/,modulo:/^\x25{2}/,placeholder:/^\x25(?:([1-9]\d*)\$|\(([^)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\d]*)/i,key_access:/^\.([a-z_][a-z_\d]*)/i,index_access:/^\[(\d+)\]/,sign:/^[+-]/};function e(t){return a(o(t),arguments)}function n(t,r){return e.apply(null,[t].concat(r||[]))}function a(r,n){var a,i,o,s,l,c,u,h,f,p=1,d=r.length,g="";for(i=0;i=0),s.type){case”b”:a=parseInt(a,10).toString(2);break;case”c”:a=String.fromCharCode(parseInt(a,10));break;case”d”:case”i”:a=parseInt(a,10);break;case”j”:a=JSON.stringify(a,null,s.width?parseInt(s.width):0);break;case”e”:a=s.precision?parseFloat(a).toExponential(s.precision):parseFloat(a).toExponential();break;case”f”:a=s.precision?parseFloat(a).toFixed(s.precision):parseFloat(a);break;case”g”:a=s.precision?String(Number(a.toPrecision(s.precision))):parseFloat(a);break;case”o”:a=(parseInt(a,10)>>>0).toString(8);break;case”s”:a=String(a),a=s.precision?a.substring(0,s.precision):a;break;case”t”:a=String(!!a),a=s.precision?a.substring(0,s.precision):a;break;case”T”:a=Object.prototype.toString.call(a).slice(8,-1).toLowerCase(),a=s.precision?a.substring(0,s.precision):a;break;case”u”:a=parseInt(a,10)>>>0;break;case”v”:a=a.valueOf(),a=s.precision?a.substring(0,s.precision):a;break;case”x”:a=(parseInt(a,10)>>>0).toString(16);break;case”X”:a=(parseInt(a,10)>>>0).toString(16).toUpperCase()}t.json.test(s.type)?g+=a:(!t.number.test(s.type)||h&&!s.sign?f=“”:(f=h?“+”:“-”,a=a.toString().replace(t.sign,“”)),c=s.pad_char?“0”===s.pad_char?“0”:s.pad_char.charAt(1):” “,u=s.width-(f+a).length,l=s.width&&u>0?c.repeat(u):“”,g+=s.align?f+a+l:“0”===c?f+l+a:l+f+a)}return g}var i=Object.create(null);function o(e){if(i[e])return i[e];for(var r,n=e,a=[],o=0;n;){if(null!==(r=t.text.exec(n)))a.push(r[0]);else if(null!==(r=t.modulo.exec(n)))a.push(“%”);else{if(null===(r=t.placeholder.exec(n)))throw new SyntaxError(”[sprintf] unexpected placeholder”);if(r[2]){o|=1;var s=[],l=r[2],c=[];if(null===(c=t.key.exec(l)))throw new SyntaxError(”[sprintf] failed to parse named argument key”);for(s.push(c[1]);“”!==(l=l.substring(c[0].length));)if(null!==(c=t.key_access.exec(l)))s.push(c[1]);else{if(null===(c=t.index_access.exec(l)))throw new SyntaxError(”[sprintf] failed to parse named argument key”);s.push(c[1])}r[2]=s}else o|=2;if(3===o)throw new Error(”[sprintf] mixing positional and named placeholders is not (yet) supported”);a.push({placeholder:r[0],param_no:r[1],keys:r[2],sign:r[3],pad_char:r[4],align:r[5],width:r[6],precision:r[7],type:r[8]})}n=n.substring(r[0].length)}return i[e]=a}“undefined”!=typeof r&&(r.sprintf=e,r.vsprintf=n),“undefined”!=typeof window&&(window.sprintf=e,window.vsprintf=n)}()},{}],520:[function(t,e,r){“use strict”;var n=t(“parenthesis”);e.exports=function(t,e,r){if(null==t)throw Error(“First argument should be a string”);if(null==e)throw Error(“Separator should be a string or a RegExp”);r?(“string”==typeof r||Array.isArray®)&&(r={ignore:r}):r={},null==r.escape&&(r.escape=!0),null==r.ignore?r.ignore=[”[]“,”()“,”{}“,”<>“,‘”“’,”“”,”`","\u201c\u201d","\xab\xbb"]:("string"==typeof r.ignore&&(r.ignore=[r.ignore]),r.ignore=r.ignore.map((function(t){return 1===t.length&&(t+=t),t})));var a=n.parse(t,{flat:!0,brackets:r.ignore}),i=a[0].split(e);if(r.escape){for(var o=[],s=0;s<i.length;s++){var l=i[s],c=i[s+1];"\\"===l[l.length-1]&&"\\"!==l[l.length-2]?(o.push(l+e+c),s++):o.push(l)}i=o}for(s=0;s<i.length;s++)a[0]=i[s],i[s]=n.stringify(a,{flat:!0});return i}},{parenthesis:456}],521:[function(t,e,r){"use strict";e.exports=function(t){for(var e=t.length,r=new Array(e),n=new Array(e),a=new Array(e),i=new Array(e),o=new Array(e),s=new Array(e),l=0;l<e;++l)r[l]=-1,n[l]=0,a[l]=!1,i[l]=0,o[l]=-1,s[l]=[];var c,u=0,h=[],f=[];function p(e){var l=[e],c=[e];for(r[e]=n[e]=u,a[e]=!0,u+=1;c.length>0;){e=c[c.length-1];var p=t[e];if(i[e]<p.length){for(var d=i[e];d<p.length;++d){var g=p[d];if(r[g]<0){r[g]=n[g]=u,a[g]=!0,u+=1,l.push(g),c.push(g);break}a[g]&&(n[e]=0|Math.min(n[e],n[g])),o[g]>=0&&s[e].push(o[g])}i[e]=d}else{if(n[e]===r[e]){var m=[],v=[],y=0;for(d=l.length-1;d>=0;--d){var x=l[d];if(a[x]=!1,m.push(x),v.push(s[x]),y+=s[x].length,o[x]=h.length,x===e){l.length=d;break}}h.push(m);var b=new Array(y);for(d=0;d<v.length;d++)for(var _=0;_<v[d].length;_++)b[--y]=v[d][_];f.push(b)}c.pop()}}}for(l=0;l<e;++l)r[l]<0&&p(l);for(l=0;l<f.length;l++){var d=f[l];if(0!==d.length){d.sort((function(t,e){return t-e})),c=[d[0]];for(var g=1;g<d.length;g++)d[g]!==d[g-1]&&c.push(d[g]);f[l]=c}}return{components:h,adjacencyList:f}}},{}],522:[function(t,e,r){"use strict";e.exports=function(t,e){if(t.dimension<=0)return{positions:[],cells:[]};if(1===t.dimension)return function(t,e){for(var r=i(t,e),n=r.length,a=new Array(n),o=new Array(n),s=0;s<n;++s)a[s]=[r[s]],o[s]=[s];return{positions:a,cells:o}}(t,e);var r=t.order.join()+"-"+t.dtype,s=o[r];e=+e||0;s||(s=o[r]=function(t,e){var r=t.length,i=["'use strict';"],o="surfaceNets"+t.join("_")+"d"+e;i.push("var contour=genContour({","order:[",t.join(),"],","scalarArguments: 3,","phase:function phaseFunc(p,a,b,c) { return (p > c)|0 },"),"generic"===e&&i.push("getters:[0],");for(var s=[],l=[],c=0;c<r;++c)s.push("d"+c),l.push("d"+c);for(c=0;c<1<<r;++c)s.push("v"+c),l.push("v"+c);for(c=0;c<1<<r;++c)s.push("p"+c),l.push("p"+c);s.push("a","b","c"),l.push("a","c"),i.push("vertex:function vertexFunc(",s.join(),"){");var u=[];for(c=0;c<1<<r;++c)u.push("(p"+c+"<<"+c+")");i.push("var m=(",u.join("+"),")|0;if(m===0||m===",(1<<(1<<r))-1,"){return}");var h=[],f=[];1<<(1<<r)<=128?(i.push("switch(m){"),f=i):i.push("switch(m>>>7){");for(c=0;c<1<<(1<<r);++c){if(1<<(1<<r)>128&&c%128==0){h.length>0&&f.push("}}");var p="vExtra"+h.length;i.push("case ",c>>>7,":",p,"(m&0x7f,",l.join(),");break;"),f=["function ",p,"(m,",l.join(),"){switch(m){"],h.push(f)}f.push("case ",127&c,":");for(var d=new Array(r),g=new Array(r),m=new Array(r),v=new Array(r),y=0,x=0;x<r;++x)d[x]=[],g[x]=[],m[x]=0,v[x]=0;for(x=0;x<1<<r;++x)for(var b=0;b<r;++b){var _=x^1<<b;if(!(_>x)&&!(c&1<<_)!=!(c&1<<x)){var w=1;c&1<<_?g[b].push("v"+_+"-v"+x):(g[b].push("v"+x+"-v"+_),w=-w),w<0?(d[b].push("-v"+x+"-v"+_),m[b]+=2):(d[b].push("v"+x+"+v"+_),m[b]-=2),y+=1;for(var T=0;T<r;++T)T!==b&&(_&1<<T?v[T]+=1:v[T]-=1)}}var k=[];for(b=0;b<r;++b)if(0===d[b].length)k.push("d"+b+"-0.5");else{var A="";m[b]<0?A=m[b]+"*c":m[b]>0&&(A="+"+m[b]+"*c");var M=d[b].length/y*.5,S=.5+v[b]/y*.5;k.push("d"+b+"-"+S+"-"+M+"*("+d[b].join("+")+A+")/("+g[b].join("+")+")")}f.push("a.push([",k.join(),"]);","break;")}i.push("}},"),h.length>0&&f.push("}}");var E=[];for(c=0;c<1<<r-1;++c)E.push("v"+c);E.push("c0","c1","p0","p1","a","b","c"),i.push("cell:function cellFunc(",E.join(),"){");var C=a(r-1);i.push("if(p0){b.push(",C.map((function(t){return"["+t.map((function(t){return"v"+t}))+"]"})).join(),")}else{b.push(",C.map((function(t){var e=t.slice();return e.reverse(),"["+e.map((function(t){return"v"+t}))+"]"})).join(),")}}});function ",o,"(array,level){var verts=[],cells=[];contour(array,verts,cells,level);return {positions:verts,cells:cells};} return ",o,";");for(c=0;c<h.length;++c)i.push(h[c].join(""));return new Function("genContour",i.join(""))(n)}(t.order,t.dtype));return s(t,e)};var n=t("ndarray-extract-contour"),a=t("triangulate-hypercube"),i=t("zero-crossings");var o={}},{"ndarray-extract-contour":440,"triangulate-hypercube":532,"zero-crossings":576}],523:[function(t,e,r){"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n=function(t,e){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return function(t,e){var r=[],n=!0,a=!1,i=void 0;try{for(var o,s=t[Symbol.iterator]();!(n=(o=s.next()).done)&&(r.push(o.value),!e||r.length!==e);n=!0);}catch(t){a=!0,i=t}finally{try{!n&&s.return&&s.return()}finally{if(a)throw i}}return r}(t,e);throw new TypeError("Invalid attempt to destructure non-iterable instance")},a=2*Math.PI,i=function(t,e,r,n,a,i,o){var s=t.x,l=t.y;return{x:n*(s*=e)-a*(l*=r)+i,y:a*s+n*l+o}},o=function(t,e){var r=1.5707963267948966===e?.551915024494:-1.5707963267948966===e?-.551915024494:4/3*Math.tan(e/4),n=Math.cos(t),a=Math.sin(t),i=Math.cos(t+e),o=Math.sin(t+e);return[{x:n-a*r,y:a+n*r},{x:i+o*r,y:o-i*r},{x:i,y:o}]},s=function(t,e,r,n){var a=t*r+e*n;return a>1&&(a=1),a<-1&&(a=-1),(t*n-e*r<0?-1:1)*Math.acos(a)};r.default=function(t){var e=t.px,r=t.py,l=t.cx,c=t.cy,u=t.rx,h=t.ry,f=t.xAxisRotation,p=void 0===f?0:f,d=t.largeArcFlag,g=void 0===d?0:d,m=t.sweepFlag,v=void 0===m?0:m,y=[];if(0===u||0===h)return[];var x=Math.sin(p*a/360),b=Math.cos(p*a/360),_=b*(e-l)/2+x*(r-c)/2,w=-x*(e-l)/2+b*(r-c)/2;if(0===_&&0===w)return[];u=Math.abs(u),h=Math.abs(h);var T=Math.pow(_,2)/Math.pow(u,2)+Math.pow(w,2)/Math.pow(h,2);T>1&&(u*=Math.sqrt(T),h*=Math.sqrt(T));var k=function(t,e,r,n,i,o,l,c,u,h,f,p){var d=Math.pow(i,2),g=Math.pow(o,2),m=Math.pow(f,2),v=Math.pow(p,2),y=d*g-d*v-g*m;y<0&&(y=0),y/=d*v+g*m;var x=(y=Math.sqrt(y)*(l===c?-1:1))*i/o*p,b=y*-o/i*f,_=h*x-u*b+(t+r)/2,w=u*x+h*b+(e+n)/2,T=(f-x)/i,k=(p-b)/o,A=(-f-x)/i,M=(-p-b)/o,S=s(1,0,T,k),E=s(T,k,A,M);return 0===c&&E>0&&(E-=a),1===c&&E<0&&(E+=a),[_,w,S,E]}(e,r,l,c,u,h,g,v,x,b,_,w),A=n(k,4),M=A[0],S=A[1],E=A[2],C=A[3],L=Math.abs(C)/(a/4);Math.abs(1-L)<1e-7&&(L=1);var P=Math.max(Math.ceil(L),1);C/=P;for(var I=0;I<P;I++)y.push(o(E,C)),E+=C;return y.map((function(t){var e=i(t[0],u,h,b,x,M,S),r=e.x,n=e.y,a=i(t[1],u,h,b,x,M,S),o=a.x,s=a.y,l=i(t[2],u,h,b,x,M,S);return{x1:r,y1:n,x2:o,y2:s,x:l.x,y:l.y}}))},e.exports=r.default},{}],524:[function(t,e,r){"use strict";var n=t("parse-svg-path"),a=t("abs-svg-path"),i=t("normalize-svg-path"),o=t("is-svg-path"),s=t("assert");e.exports=function(t){Array.isArray(t)&&1===t.length&&"string"==typeof t[0]&&(t=t[0]);"string"==typeof t&&(s(o(t),"String is not an SVG path."),t=n(t));if(s(Array.isArray(t),"Argument should be a string or an array of path segments."),t=a(t),!(t=i(t)).length)return[0,0,0,0];for(var e=[1/0,1/0,-1/0,-1/0],r=0,l=t.length;r<l;r++)for(var c=t[r].slice(1),u=0;u<c.length;u+=2)c[u+0]<e[0]&&(e[0]=c[u+0]),c[u+1]<e[1]&&(e[1]=c[u+1]),c[u+0]>e[2]&&(e[2]=c[u+0]),c[u+1]>e[3]&&(e[3]=c[u+1]);return e}},{"abs-svg-path":63,assert:71,"is-svg-path":424,"normalize-svg-path":525,"parse-svg-path":458}],525:[function(t,e,r){"use strict";e.exports=function(t){for(var e,r=[],o=0,s=0,l=0,c=0,u=null,h=null,f=0,p=0,d=0,g=t.length;d<g;d++){var m=t[d],v=m[0];switch(v){case"M":l=m[1],c=m[2];break;case"A":var y=n({px:f,py:p,cx:m[6],cy:m[7],rx:m[1],ry:m[2],xAxisRotation:m[3],largeArcFlag:m[4],sweepFlag:m[5]});if(!y.length)continue;for(var x,b=0;b<y.length;b++)x=y[b],m=["C",x.x1,x.y1,x.x2,x.y2,x.x,x.y],b<y.length-1&&r.push(m);break;case"S":var _=f,w=p;"C"!=e&&"S"!=e||(_+=_-o,w+=w-s),m=["C",_,w,m[1],m[2],m[3],m[4]];break;case"T":"Q"==e||"T"==e?(u=2*f-u,h=2*p-h):(u=f,h=p),m=i(f,p,u,h,m[1],m[2]);break;case"Q":u=m[1],h=m[2],m=i(f,p,m[1],m[2],m[3],m[4]);break;case"L":m=a(f,p,m[1],m[2]);break;case"H":m=a(f,p,m[1],p);break;case"V":m=a(f,p,f,m[1]);break;case"Z":m=a(f,p,l,c)}e=v,f=m[m.length-2],p=m[m.length-1],m.length>4?(o=m[m.length-4],s=m[m.length-3]):(o=f,s=p),r.push(m)}return r};var n=t("svg-arc-to-cubic-bezier");function a(t,e,r,n){return["C",t,e,r,n,r,n]}function i(t,e,r,n,a,i){return["C",t/3+2/3*r,e/3+2/3*n,a/3+2/3*r,i/3+2/3*n,a,i]}},{"svg-arc-to-cubic-bezier":523}],526:[function(t,e,r){"use strict";var n,a=t("svg-path-bounds"),i=t("parse-svg-path"),o=t("draw-svg-path"),s=t("is-svg-path"),l=t("bitmap-sdf"),c=document.createElement("canvas"),u=c.getContext("2d");e.exports=function(t,e){if(!s(t))throw Error("Argument should be valid svg path string");e||(e={});var r,h;e.shape?(r=e.shape[0],h=e.shape[1]):(r=c.width=e.w||e.width||200,h=c.height=e.h||e.height||200);var f=Math.min(r,h),p=e.stroke||0,d=e.viewbox||e.viewBox||a(t),g=[r/(d[2]-d[0]),h/(d[3]-d[1])],m=Math.min(g[0]||0,g[1]||0)/2;u.fillStyle="black",u.fillRect(0,0,r,h),u.fillStyle="white",p&&("number"!=typeof p&&(p=1),u.strokeStyle=p>0?"white":"black",u.lineWidth=Math.abs(p));if(u.translate(.5*r,.5*h),u.scale(m,m),function(){if(null!=n)return n;var t=document.createElement("canvas").getContext("2d");if(t.canvas.width=t.canvas.height=1,!window.Path2D)return n=!1;var e=new Path2D("M0,0h1v1h-1v-1Z");t.fillStyle="black",t.fill(e);var r=t.getImageData(0,0,1,1);return n=r&&r.data&&255===r.data[3]}()){var v=new Path2D(t);u.fill(v),p&&u.stroke(v)}else{var y=i(t);o(u,y),u.fill(),p&&u.stroke()}return u.setTransform(1,0,0,1,0,0),l(u,{cutoff:null!=e.cutoff?e.cutoff:.5,radius:null!=e.radius?e.radius:.5*f})}},{"bitmap-sdf":96,"draw-svg-path":169,"is-svg-path":424,"parse-svg-path":458,"svg-path-bounds":524}],527:[function(t,e,r){(function(r){"use strict";e.exports=function t(e,r,a){a=a||{};var o=i[e];o||(o=i[e]={" ":{data:new Float32Array(0),shape:.2}});var s=o[r];if(!s)if(r.length<=1||!/\d/.test(r))s=o[r]=function(t){for(var e=t.cells,r=t.positions,n=new Float32Array(6*e.length),a=0,i=0,o=0;o<e.length;++o)for(var s=e[o],l=0;l<3;++l){var c=r[s[l]];n[a++]=c[0],n[a++]=c[1]+1.4,i=Math.max(c[0],i)}return{data:n,shape:i}}(n(r,{triangles:!0,font:e,textAlign:a.textAlign||"left",textBaseline:"alphabetic",styletags:{breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0}}));else{for(var l=r.split(/(\d|\s)/),c=new Array(l.length),u=0,h=0,f=0;f<l.length;++f)c[f]=t(e,l[f]),u+=c[f].data.length,h+=c[f].shape,f>0&&(h+=.02);var p=new Float32Array(u),d=0,g=-.5*h;for(f=0;f<c.length;++f){for(var m=c[f].data,v=0;v<m.length;v+=2)p[d++]=m[v]+g,p[d++]=m[v+1];g+=c[f].shape+.02}s=o[r]={data:p,shape:h}}return s};var n=t("vectorize-text"),a=window||r.global||{},i=a.__TEXT_CACHE||{};a.__TEXT_CACHE={}}).call(this,t("_process"))},{_process:480,"vectorize-text":552}],528:[function(t,e,r){!function(t){var r=/^\s+/,n=/\s+$/,a=0,i=t.round,o=t.min,s=t.max,l=t.random;function c(e,l){if(l=l||{},(e=e||"")instanceof c)return e;if(!(this instanceof c))return new c(e,l);var u=function(e){var a={r:0,g:0,b:0},i=1,l=null,c=null,u=null,h=!1,f=!1;"string"==typeof e&&(e=function(t){t=t.replace(r,"").replace(n,"").toLowerCase();var e,a=!1;if(S[t])t=S[t],a=!0;else if("transparent"==t)return{r:0,g:0,b:0,a:0,format:"name"};if(e=j.rgb.exec(t))return{r:e[1],g:e[2],b:e[3]};if(e=j.rgba.exec(t))return{r:e[1],g:e[2],b:e[3],a:e[4]};if(e=j.hsl.exec(t))return{h:e[1],s:e[2],l:e[3]};if(e=j.hsla.exec(t))return{h:e[1],s:e[2],l:e[3],a:e[4]};if(e=j.hsv.exec(t))return{h:e[1],s:e[2],v:e[3]};if(e=j.hsva.exec(t))return{h:e[1],s:e[2],v:e[3],a:e[4]};if(e=j.hex8.exec(t))return{r:I(e[1]),g:I(e[2]),b:I(e[3]),a:R(e[4]),format:a?"name":"hex8"};if(e=j.hex6.exec(t))return{r:I(e[1]),g:I(e[2]),b:I(e[3]),format:a?"name":"hex"};if(e=j.hex4.exec(t))return{r:I(e[1]+""+e[1]),g:I(e[2]+""+e[2]),b:I(e[3]+""+e[3]),a:R(e[4]+""+e[4]),format:a?"name":"hex8"};if(e=j.hex3.exec(t))return{r:I(e[1]+""+e[1]),g:I(e[2]+""+e[2]),b:I(e[3]+""+e[3]),format:a?"name":"hex"};return!1}(e));"object"==typeof e&&(V(e.r)&&V(e.g)&&V(e.b)?(p=e.r,d=e.g,g=e.b,a={r:255*L(p,255),g:255*L(d,255),b:255*L(g,255)},h=!0,f="%"===String(e.r).substr(-1)?"prgb":"rgb"):V(e.h)&&V(e.s)&&V(e.v)?(l=O(e.s),c=O(e.v),a=function(e,r,n){e=6*L(e,360),r=L(r,100),n=L(n,100);var a=t.floor(e),i=e-a,o=n*(1-r),s=n*(1-i*r),l=n*(1-(1-i)*r),c=a%6;return{r:255*[n,s,o,o,l,n][c],g:255*[l,n,n,s,o,o][c],b:255*[o,o,l,n,n,s][c]}}(e.h,l,c),h=!0,f="hsv"):V(e.h)&&V(e.s)&&V(e.l)&&(l=O(e.s),u=O(e.l),a=function(t,e,r){var n,a,i;function o(t,e,r){return r<0&&(r+=1),r>1&&(r-=1),r<1/6?t+6*(e-t)*r:r<.5?e:r<2/3?t+(e-t)*(2/3-r)*6:t}if(t=L(t,360),e=L(e,100),r=L(r,100),0===e)n=a=i=r;else{var s=r<.5?r*(1+e):r+e-r*e,l=2*r-s;n=o(l,s,t+1/3),a=o(l,s,t),i=o(l,s,t-1/3)}return{r:255*n,g:255*a,b:255*i}}(e.h,l,u),h=!0,f="hsl"),e.hasOwnProperty("a")&&(i=e.a));var p,d,g;return i=C(i),{ok:h,format:e.format||f,r:o(255,s(a.r,0)),g:o(255,s(a.g,0)),b:o(255,s(a.b,0)),a:i}}(e);this._originalInput=e,this._r=u.r,this._g=u.g,this._b=u.b,this._a=u.a,this._roundA=i(100*this._a)/100,this._format=l.format||u.format,this._gradientType=l.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=u.ok,this._tc_id=a++}function u(t,e,r){t=L(t,255),e=L(e,255),r=L(r,255);var n,a,i=s(t,e,r),l=o(t,e,r),c=(i+l)/2;if(i==l)n=a=0;else{var u=i-l;switch(a=c>.5?u/(2-i-l):u/(i+l),i){case t:n=(e-r)/u+(e<r?6:0);break;case e:n=(r-t)/u+2;break;case r:n=(t-e)/u+4}n/=6}return{h:n,s:a,l:c}}function h(t,e,r){t=L(t,255),e=L(e,255),r=L(r,255);var n,a,i=s(t,e,r),l=o(t,e,r),c=i,u=i-l;if(a=0===i?0:u/i,i==l)n=0;else{switch(i){case t:n=(e-r)/u+(e<r?6:0);break;case e:n=(r-t)/u+2;break;case r:n=(t-e)/u+4}n/=6}return{h:n,s:a,v:c}}function f(t,e,r,n){var a=[z(i(t).toString(16)),z(i(e).toString(16)),z(i(r).toString(16))];return n&&a[0].charAt(0)==a[0].charAt(1)&&a[1].charAt(0)==a[1].charAt(1)&&a[2].charAt(0)==a[2].charAt(1)?a[0].charAt(0)+a[1].charAt(0)+a[2].charAt(0):a.join("")}function p(t,e,r,n){return[z(D(n)),z(i(t).toString(16)),z(i(e).toString(16)),z(i(r).toString(16))].join("")}function d(t,e){e=0===e?0:e||10;var r=c(t).toHsl();return r.s-=e/100,r.s=P(r.s),c(r)}function g(t,e){e=0===e?0:e||10;var r=c(t).toHsl();return r.s+=e/100,r.s=P(r.s),c(r)}function m(t){return c(t).desaturate(100)}function v(t,e){e=0===e?0:e||10;var r=c(t).toHsl();return r.l+=e/100,r.l=P(r.l),c(r)}function y(t,e){e=0===e?0:e||10;var r=c(t).toRgb();return r.r=s(0,o(255,r.r-i(-e/100*255))),r.g=s(0,o(255,r.g-i(-e/100*255))),r.b=s(0,o(255,r.b-i(-e/100*255))),c(r)}function x(t,e){e=0===e?0:e||10;var r=c(t).toHsl();return r.l-=e/100,r.l=P(r.l),c(r)}function b(t,e){var r=c(t).toHsl(),n=(r.h+e)%360;return r.h=n<0?360+n:n,c(r)}function _(t){var e=c(t).toHsl();return e.h=(e.h+180)%360,c(e)}function w(t){var e=c(t).toHsl(),r=e.h;return[c(t),c({h:(r+120)%360,s:e.s,l:e.l}),c({h:(r+240)%360,s:e.s,l:e.l})]}function T(t){var e=c(t).toHsl(),r=e.h;return[c(t),c({h:(r+90)%360,s:e.s,l:e.l}),c({h:(r+180)%360,s:e.s,l:e.l}),c({h:(r+270)%360,s:e.s,l:e.l})]}function k(t){var e=c(t).toHsl(),r=e.h;return[c(t),c({h:(r+72)%360,s:e.s,l:e.l}),c({h:(r+216)%360,s:e.s,l:e.l})]}function A(t,e,r){e=e||6,r=r||30;var n=c(t).toHsl(),a=360/r,i=[c(t)];for(n.h=(n.h-(a*e>>1)+720)%360;--e;)n.h=(n.h+a)%360,i.push(c(n));return i}function M(t,e){e=e||6;for(var r=c(t).toHsv(),n=r.h,a=r.s,i=r.v,o=[],s=1/e;e--;)o.push(c({h:n,s:a,v:i})),i=(i+s)%1;return o}c.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 t=this.toRgb();return(299*t.r+587*t.g+114*t.b)/1e3},getLuminance:function(){var e,r,n,a=this.toRgb();return e=a.r/255,r=a.g/255,n=a.b/255,.2126*(e<=.03928?e/12.92:t.pow((e+.055)/1.055,2.4))+.7152*(r<=.03928?r/12.92:t.pow((r+.055)/1.055,2.4))+.0722*(n<=.03928?n/12.92:t.pow((n+.055)/1.055,2.4))},setAlpha:function(t){return this._a=C(t),this._roundA=i(100*this._a)/100,this},toHsv:function(){var t=h(this._r,this._g,this._b);return{h:360*t.h,s:t.s,v:t.v,a:this._a}},toHsvString:function(){var t=h(this._r,this._g,this._b),e=i(360*t.h),r=i(100*t.s),n=i(100*t.v);return 1==this._a?"hsv("+e+", "+r+"%, "+n+"%)":"hsva("+e+", "+r+"%, "+n+"%, "+this._roundA+")"},toHsl:function(){var t=u(this._r,this._g,this._b);return{h:360*t.h,s:t.s,l:t.l,a:this._a}},toHslString:function(){var t=u(this._r,this._g,this._b),e=i(360*t.h),r=i(100*t.s),n=i(100*t.l);return 1==this._a?"hsl("+e+", "+r+"%, "+n+"%)":"hsla("+e+", "+r+"%, "+n+"%, "+this._roundA+")"},toHex:function(t){return f(this._r,this._g,this._b,t)},toHexString:function(t){return"#"+this.toHex(t)},toHex8:function(t){return function(t,e,r,n,a){var o=[z(i(t).toString(16)),z(i(e).toString(16)),z(i(r).toString(16)),z(D(n))];if(a&&o[0].charAt(0)==o[0].charAt(1)&&o[1].charAt(0)==o[1].charAt(1)&&o[2].charAt(0)==o[2].charAt(1)&&o[3].charAt(0)==o[3].charAt(1))return o[0].charAt(0)+o[1].charAt(0)+o[2].charAt(0)+o[3].charAt(0);return o.join("")}(this._r,this._g,this._b,this._a,t)},toHex8String:function(t){return"#"+this.toHex8(t)},toRgb:function(){return{r:i(this._r),g:i(this._g),b:i(this._b),a:this._a}},toRgbString:function(){return 1==this._a?"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(100*L(this._r,255))+"%",g:i(100*L(this._g,255))+"%",b:i(100*L(this._b,255))+"%",a:this._a}},toPercentageRgbString:function(){return 1==this._a?"rgb("+i(100*L(this._r,255))+"%, "+i(100*L(this._g,255))+"%, "+i(100*L(this._b,255))+"%)":"rgba("+i(100*L(this._r,255))+"%, "+i(100*L(this._g,255))+"%, "+i(100*L(this._b,255))+"%, "+this._roundA+")"},toName:function(){return 0===this._a?"transparent":!(this._a<1)&&(E[f(this._r,this._g,this._b,!0)]||!1)},toFilter:function(t){var e="#"+p(this._r,this._g,this._b,this._a),r=e,n=this._gradientType?"GradientType = 1, ":"";if(t){var a=c(t);r="#"+p(a._r,a._g,a._b,a._a)}return"progid:DXImageTransform.Microsoft.gradient("+n+"startColorstr="+e+",endColorstr="+r+")"},toString:function(t){var e=!!t;t=t||this._format;var r=!1,n=this._a<1&&this._a>=0;return e||!n||"hex"!==t&&"hex6"!==t&&"hex3"!==t&&"hex4"!==t&&"hex8"!==t&&"name"!==t?("rgb"===t&&(r=this.toRgbString()),"prgb"===t&&(r=this.toPercentageRgbString()),"hex"!==t&&"hex6"!==t||(r=this.toHexString()),"hex3"===t&&(r=this.toHexString(!0)),"hex4"===t&&(r=this.toHex8String(!0)),"hex8"===t&&(r=this.toHex8String()),"name"===t&&(r=this.toName()),"hsl"===t&&(r=this.toHslString()),"hsv"===t&&(r=this.toHsvString()),r||this.toHexString()):"name"===t&&0===this._a?this.toName():this.toRgbString()},clone:function(){return c(this.toString())},_applyModification:function(t,e){var r=t.apply(null,[this].concat([].slice.call(e)));return this._r=r._r,this._g=r._g,this._b=r._b,this.setAlpha(r._a),this},lighten:function(){return this._applyModification(v,arguments)},brighten:function(){return this._applyModification(y,arguments)},darken:function(){return this._applyModification(x,arguments)},desaturate:function(){return this._applyModification(d,arguments)},saturate:function(){return this._applyModification(g,arguments)},greyscale:function(){return this._applyModification(m,arguments)},spin:function(){return this._applyModification(b,arguments)},_applyCombination:function(t,e){return t.apply(null,[this].concat([].slice.call(e)))},analogous:function(){return this._applyCombination(A,arguments)},complement:function(){return this._applyCombination(_,arguments)},monochromatic:function(){return this._applyCombination(M,arguments)},splitcomplement:function(){return this._applyCombination(k,arguments)},triad:function(){return this._applyCombination(w,arguments)},tetrad:function(){return this._applyCombination(T,arguments)}},c.fromRatio=function(t,e){if("object"==typeof t){var r={};for(var n in t)t.hasOwnProperty(n)&&(r[n]="a"===n?t[n]:O(t[n]));t=r}return c(t,e)},c.equals=function(t,e){return!(!t||!e)&&c(t).toRgbString()==c(e).toRgbString()},c.random=function(){return c.fromRatio({r:l(),g:l(),b:l()})},c.mix=function(t,e,r){r=0===r?0:r||50;var n=c(t).toRgb(),a=c(e).toRgb(),i=r/100;return c({r:(a.r-n.r)*i+n.r,g:(a.g-n.g)*i+n.g,b:(a.b-n.b)*i+n.b,a:(a.a-n.a)*i+n.a})},c.readability=function(e,r){var n=c(e),a=c(r);return(t.max(n.getLuminance(),a.getLuminance())+.05)/(t.min(n.getLuminance(),a.getLuminance())+.05)},c.isReadable=function(t,e,r){var n,a,i=c.readability(t,e);switch(a=!1,(n=function(t){var e,r;e=((t=t||{level:"AA",size:"small"}).level||"AA").toUpperCase(),r=(t.size||"small").toLowerCase(),"AA"!==e&&"AAA"!==e&&(e="AA");"small"!==r&&"large"!==r&&(r="small");return{level:e,size:r}}(r)).level+n.size){case"AAsmall":case"AAAlarge":a=i>=4.5;break;case"AAlarge":a=i>=3;break;case"AAAsmall":a=i>=7}return a},c.mostReadable=function(t,e,r){var n,a,i,o,s=null,l=0;a=(r=r||{}).includeFallbackColors,i=r.level,o=r.size;for(var u=0;u<e.length;u++)(n=c.readability(t,e[u]))>l&&(l=n,s=c(e[u]));return c.isReadable(t,s,{level:i,size:o})||!a?s:(r.includeFallbackColors=!1,c.mostReadable(t,["#fff","#000"],r))};var S=c.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"},E=c.hexNames=function(t){var e={};for(var r in t)t.hasOwnProperty(r)&&(e[t[r]]=r);return e}(S);function C(t){return t=parseFloat(t),(isNaN(t)||t<0||t>1)&&(t=1),t}function L(e,r){(function(t){return"string"==typeof t&&-1!=t.indexOf(".")&&1===parseFloat(t)})(e)&&(e="100%");var n=function(t){return"string"==typeof t&&-1!=t.indexOf("%")}(e);return e=o(r,s(0,parseFloat(e))),n&&(e=parseInt(e*r,10)/100),t.abs(e-r)<1e-6?1:e%r/parseFloat(r)}function P(t){return o(1,s(0,t))}function I(t){return parseInt(t,16)}function z(t){return 1==t.length?"0"+t:""+t}function O(t){return t<=1&&(t=100*t+"%"),t}function D(e){return t.round(255*parseFloat(e)).toString(16)}function R(t){return I(t)/255}var F,B,N,j=(B="[\\s|\\(]+("+(F="(?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?)")+")[,|\\s]+("+F+")[,|\\s]+("+F+")\\s*\\)?",N="[\\s|\\(]+("+F+")[,|\\s]+("+F+")[,|\\s]+("+F+")[,|\\s]+("+F+")\\s*\\)?",{CSS_UNIT:new RegExp(F),rgb:new RegExp("rgb"+B),rgba:new RegExp("rgba"+N),hsl:new RegExp("hsl"+B),hsla:new RegExp("hsla"+N),hsv:new RegExp("hsv"+B),hsva:new RegExp("hsva"+N),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 V(t){return!!j.CSS_UNIT.exec(t)}"undefined"!=typeof e&&e.exports?e.exports=c:window.tinycolor=c}(Math)},{}],529:[function(t,e,r){"use strict";e.exports=a,e.exports.float32=e.exports.float=a,e.exports.fract32=e.exports.fract=function(t){if(t.length){for(var e=a(t),r=0,n=e.length;r<n;r++)e[r]=t[r]-e[r];return e}return a(t-a(t))};var n=new Float32Array(1);function a(t){if(t.length){if(t instanceof Float32Array)return t;var e=new Float32Array(t);return e.set(t),e}return n[0]=t,n[0]}},{}],530:[function(t,e,r){"use strict";var n=t("parse-unit");e.exports=i;function a(t,e){var r=n(getComputedStyle(t).getPropertyValue(e));return r[0]*i(r[1],t)}function i(t,e){switch(e=e||document.body,t=(t||"px").trim().toLowerCase(),e!==window&&e!==document||(e=document.body),t){case"%":return e.clientHeight/100;case"ch":case"ex":return function(t,e){var r=document.createElement("div");r.style["font-size"]="128"+t,e.appendChild(r);var n=a(r,"font-size")/128;return e.removeChild(r),n}(t,e);case"em":return a(e,"font-size");case"rem":return a(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 96;case"cm":return 96/2.54;case"mm":return 96/25.4;case"pt":return 96/72;case"pc":return 16}return 1}},{"parse-unit":459}],531:[function(t,e,r){!function(t,n){"object"==typeof r&&"undefined"!=typeof e?n(r):n((t=t||self).topojson=t.topojson||{})}(this,(function(t){"use strict";function e(t){return t}function r(t){if(null==t)return e;var r,n,a=t.scale[0],i=t.scale[1],o=t.translate[0],s=t.translate[1];return function(t,e){e||(r=n=0);var l=2,c=t.length,u=new Array(c);for(u[0]=(r+=t[0])*a+o,u[1]=(n+=t[1])*i+s;l<c;)u[l]=t[l],++l;return u}}function n(t){var e,n=r(t.transform),a=1/0,i=a,o=-a,s=-a;function l(t){(t=n(t))[0]<a&&(a=t[0]),t[0]>o&&(o=t[0]),t[1]<i&&(i=t[1]),t[1]>s&&(s=t[1])}function c(t){switch(t.type){case"GeometryCollection":t.geometries.forEach(c);break;case"Point":l(t.coordinates);break;case"MultiPoint":t.coordinates.forEach(l)}}for(e in t.arcs.forEach((function(t){for(var e,r=-1,l=t.length;++r<l;)(e=n(t[r],r))[0]<a&&(a=e[0]),e[0]>o&&(o=e[0]),e[1]<i&&(i=e[1]),e[1]>s&&(s=e[1])})),t.objects)c(t.objects[e]);return[a,i,o,s]}function a(t,e){var r=e.id,n=e.bbox,a=null==e.properties?{}:e.properties,o=i(t,e);return null==r&&null==n?{type:"Feature",properties:a,geometry:o}:null==n?{type:"Feature",id:r,properties:a,geometry:o}:{type:"Feature",id:r,bbox:n,properties:a,geometry:o}}function i(t,e){var n=r(t.transform),a=t.arcs;function i(t,e){e.length&&e.pop();for(var r=a[t<0?~t:t],i=0,o=r.length;i<o;++i)e.push(n(r[i],i));t<0&&function(t,e){for(var r,n=t.length,a=n-e;a<--n;)r=t[a],t[a++]=t[n],t[n]=r}(e,o)}function o(t){return n(t)}function s(t){for(var e=[],r=0,n=t.length;r<n;++r)i(t[r],e);return e.length<2&&e.push(e[0]),e}function l(t){for(var e=s(t);e.length<4;)e.push(e[0]);return e}function c(t){return t.map(l)}return function t(e){var r,n=e.type;switch(n){case"GeometryCollection":return{type:n,geometries:e.geometries.map(t)};case"Point":r=o(e.coordinates);break;case"MultiPoint":r=e.coordinates.map(o);break;case"LineString":r=s(e.arcs);break;case"MultiLineString":r=e.arcs.map(s);break;case"Polygon":r=c(e.arcs);break;case"MultiPolygon":r=e.arcs.map(c);break;default:return null}return{type:n,coordinates:r}}(e)}function o(t,e){var r={},n={},a={},i=[],o=-1;function s(t,e){for(var n in t){var a=t[n];delete e[a.start],delete a.start,delete a.end,a.forEach((function(t){r[t<0?~t:t]=1})),i.push(a)}}return e.forEach((function(r,n){var a,i=t.arcs[r<0?~r:r];i.length<3&&!i[1][0]&&!i[1][1]&&(a=e[++o],e[o]=r,e[n]=a)})),e.forEach((function(e){var r,i,o=function(e){var r,n=t.arcs[e<0?~e:e],a=n[0];t.transform?(r=[0,0],n.forEach((function(t){r[0]+=t[0],r[1]+=t[1]}))):r=n[n.length-1];return e<0?[r,a]:[a,r]}(e),s=o[0],l=o[1];if(r=a[s])if(delete a[r.end],r.push(e),r.end=l,i=n[l]){delete n[i.start];var c=i===r?r:r.concat(i);n[c.start=r.start]=a[c.end=i.end]=c}else n[r.start]=a[r.end]=r;else if(r=n[l])if(delete n[r.start],r.unshift(e),r.start=s,i=a[s]){delete a[i.end];var u=i===r?r:i.concat(r);n[u.start=i.start]=a[u.end=r.end]=u}else n[r.start]=a[r.end]=r;else n[(r=[e]).start=s]=a[r.end=l]=r})),s(a,n),s(n,a),e.forEach((function(t){r[t<0?~t:t]||i.push([t])})),i}function s(t,e,r){var n,a,i;if(arguments.length>1)n=l(t,e,r);else for(a=0,n=new Array(i=t.arcs.length);a<i;++a)n[a]=a;return{type:"MultiLineString",arcs:o(t,n)}}function l(t,e,r){var n,a=[],i=[];function o(t){var e=t<0?~t:t;(i[e]||(i[e]=[])).push({i:t,g:n})}function s(t){t.forEach(o)}function l(t){t.forEach(s)}return function t(e){switch(n=e,e.type){case"GeometryCollection":e.geometries.forEach(t);break;case"LineString":s(e.arcs);break;case"MultiLineString":case"Polygon":l(e.arcs);break;case"MultiPolygon":!function(t){t.forEach(l)}(e.arcs)}}(e),i.forEach(null==r?function(t){a.push(t[0].i)}:function(t){r(t[0].g,t[t.length-1].g)&&a.push(t[0].i)}),a}function c(t,e){var r={},n=[],a=[];function s(t){t.forEach((function(e){e.forEach((function(e){(r[e=e<0?~e:e]||(r[e]=[])).push(t)}))})),n.push(t)}function l(e){return function(t){for(var e,r=-1,n=t.length,a=t[n-1],i=0;++r<n;)e=a,a=t[r],i+=e[0]*a[1]-e[1]*a[0];return Math.abs(i)}(i(t,{type:"Polygon",arcs:[e]}).coordinates[0])}return e.forEach((function t(e){switch(e.type){case"GeometryCollection":e.geometries.forEach(t);break;case"Polygon":s(e.arcs);break;case"MultiPolygon":e.arcs.forEach(s)}})),n.forEach((function(t){if(!t._){var e=[],n=[t];for(t._=1,a.push(e);t=n.pop();)e.push(t),t.forEach((function(t){t.forEach((function(t){r[t<0?~t:t].forEach((function(t){t._||(t._=1,n.push(t))}))}))}))}})),n.forEach((function(t){delete t._})),{type:"MultiPolygon",arcs:a.map((function(e){var n,a=[];if(e.forEach((function(t){t.forEach((function(t){t.forEach((function(t){r[t<0?~t:t].length<2&&a.push(t)}))}))})),(n=(a=o(t,a)).length)>1)for(var i,s,c=1,u=l(a[0]);c<n;++c)(i=l(a[c]))>u&&(s=a[0],a[0]=a[c],a[c]=s,u=i);return a})).filter((function(t){return t.length>0}))}}function u(t,e){for(var r=0,n=t.length;r<n;){var a=r+n>>>1;t[a]<e?r=a+1:n=a}return r}function h(t){if(null==t)return e;var r,n,a=t.scale[0],i=t.scale[1],o=t.translate[0],s=t.translate[1];return function(t,e){e||(r=n=0);var l=2,c=t.length,u=new Array(c),h=Math.round((t[0]-o)/a),f=Math.round((t[1]-s)/i);for(u[0]=h-r,r=h,u[1]=f-n,n=f;l<c;)u[l]=t[l],++l;return u}}t.bbox=n,t.feature=function(t,e){return"string"==typeof e&&(e=t.objects[e]),"GeometryCollection"===e.type?{type:"FeatureCollection",features:e.geometries.map((function(e){return a(t,e)}))}:a(t,e)},t.merge=function(t){return i(t,c.apply(this,arguments))},t.mergeArcs=c,t.mesh=function(t){return i(t,s.apply(this,arguments))},t.meshArcs=s,t.neighbors=function(t){var e={},r=t.map((function(){return[]}));function n(t,r){t.forEach((function(t){t<0&&(t=~t);var n=e[t];n?n.push(r):e[t]=[r]}))}function a(t,e){t.forEach((function(t){n(t,e)}))}var i={LineString:n,MultiLineString:a,Polygon:a,MultiPolygon:function(t,e){t.forEach((function(t){a(t,e)}))}};for(var o in t.forEach((function t(e,r){"GeometryCollection"===e.type?e.geometries.forEach((function(e){t(e,r)})):e.type in i&&i[e.type](e.arcs,r)})),e)for(var s=e[o],l=s.length,c=0;c<l;++c)for(var h=c+1;h<l;++h){var f,p=s[c],d=s[h];(f=r[p])[o=u(f,d)]!==d&&f.splice(o,0,d),(f=r[d])[o=u(f,p)]!==p&&f.splice(o,0,p)}return r},t.quantize=function(t,e){if(t.transform)throw new Error("already quantized");if(e&&e.scale)l=t.bbox;else{if(!((r=Math.floor(e))>=2))throw new Error("n must be \u22652");var r,a=(l=t.bbox||n(t))[0],i=l[1],o=l[2],s=l[3];e={scale:[o-a?(o-a)/(r-1):1,s-i?(s-i)/(r-1):1],translate:[a,i]}}var l,c,u=h(e),f=t.objects,p={};function d(t){return u(t)}function g(t){var e;switch(t.type){case"GeometryCollection":e={type:"GeometryCollection",geometries:t.geometries.map(g)};break;case"Point":e={type:"Point",coordinates:d(t.coordinates)};break;case"MultiPoint":e={type:"MultiPoint",coordinates:t.coordinates.map(d)};break;default:return t}return null!=t.id&&(e.id=t.id),null!=t.bbox&&(e.bbox=t.bbox),null!=t.properties&&(e.properties=t.properties),e}for(c in f)p[c]=g(f[c]);return{type:"Topology",bbox:l,transform:e,objects:p,arcs:t.arcs.map((function(t){var e,r=0,n=1,a=t.length,i=new Array(a);for(i[0]=u(t[0],0);++r<a;)((e=u(t[r],r))[0]||e[1])&&(i[n++]=e);return 1===n&&(i[n++]=[0,0]),i.length=n,i}))}},t.transform=r,t.untransform=h,Object.defineProperty(t,"__esModule",{value:!0})}))},{}],532:[function(t,e,r){"use strict";e.exports=function(t){if(t<0)return[];if(0===t)return[[0]];for(var e=0|Math.round(i(t+1)),r=[],o=0;o<e;++o){for(var s=n.unrank(t,o),l=[0],c=0,u=0;u<s.length;++u)c+=1<<s[u],l.push(c);a(s)<1&&(l[0]=c,l[t]=0),r.push(l)}return r};var n=t("permutation-rank"),a=t("permutation-parity"),i=t("gamma")},{gamma:243,"permutation-parity":461,"permutation-rank":462}],533:[function(t,e,r){"use strict";e.exports=function(t){var e=(t=t||{}).center||[0,0,0],r=t.up||[0,1,0],n=t.right||h(r),a=t.radius||1,i=t.theta||0,u=t.phi||0;if(e=[].slice.call(e,0,3),r=[].slice.call(r,0,3),s(r,r),n=[].slice.call(n,0,3),s(n,n),"eye"in t){var p=t.eye,d=[p[0]-e[0],p[1]-e[1],p[2]-e[2]];o(n,d,r),c(n[0],n[1],n[2])<1e-6?n=h(r):s(n,n),a=c(d[0],d[1],d[2]);var g=l(r,d)/a,m=l(n,d)/a;u=Math.acos(g),i=Math.acos(m)}return a=Math.log(a),new f(t.zoomMin,t.zoomMax,e,r,n,a,i,u)};var n=t("filtered-vector"),a=t("gl-mat4/invert"),i=t("gl-mat4/rotate"),o=t("gl-vec3/cross"),s=t("gl-vec3/normalize"),l=t("gl-vec3/dot");function c(t,e,r){return Math.sqrt(Math.pow(t,2)+Math.pow(e,2)+Math.pow(r,2))}function u(t){return Math.min(1,Math.max(-1,t))}function h(t){var e=Math.abs(t[0]),r=Math.abs(t[1]),n=Math.abs(t[2]),a=[0,0,0];e>Math.max(r,n)?a[2]=1:r>Math.max(e,n)?a[0]=1:a[1]=1;for(var i=0,o=0,l=0;l<3;++l)i+=t[l]*t[l],o+=a[l]*t[l];for(l=0;l<3;++l)a[l]-=o/i*t[l];return s(a,a),a}function f(t,e,r,a,i,o,s,l){this.center=n(r),this.up=n(a),this.right=n(i),this.radius=n([o]),this.angle=n([s,l]),this.angle.bounds=[[-1/0,-Math.PI/2],[1/0,Math.PI/2]],this.setDistanceLimits(t,e),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 c=0;c<16;++c)this.computedMatrix[c]=.5;this.recalcMatrix(0)}var p=f.prototype;p.setDistanceLimits=function(t,e){t=t>0?Math.log(t):-1/0,e=e>0?Math.log(e):1/0,e=Math.max(e,t),this.radius.bounds[0][0]=t,this.radius.bounds[1][0]=e},p.getDistanceLimits=function(t){var e=this.radius.bounds[0];return t?(t[0]=Math.exp(e[0][0]),t[1]=Math.exp(e[1][0]),t):[Math.exp(e[0][0]),Math.exp(e[1][0])]},p.recalcMatrix=function(t){this.center.curve(t),this.up.curve(t),this.right.curve(t),this.radius.curve(t),this.angle.curve(t);for(var e=this.computedUp,r=this.computedRight,n=0,a=0,i=0;i<3;++i)a+=e[i]*r[i],n+=e[i]*e[i];var l=Math.sqrt(n),u=0;for(i=0;i<3;++i)r[i]-=e[i]*a/n,u+=r[i]*r[i],e[i]/=l;var h=Math.sqrt(u);for(i=0;i<3;++i)r[i]/=h;var f=this.computedToward;o(f,e,r),s(f,f);var p=Math.exp(this.computedRadius[0]),d=this.computedAngle[0],g=this.computedAngle[1],m=Math.cos(d),v=Math.sin(d),y=Math.cos(g),x=Math.sin(g),b=this.computedCenter,_=m*y,w=v*y,T=x,k=-m*x,A=-v*x,M=y,S=this.computedEye,E=this.computedMatrix;for(i=0;i<3;++i){var C=_*r[i]+w*f[i]+T*e[i];E[4*i+1]=k*r[i]+A*f[i]+M*e[i],E[4*i+2]=C,E[4*i+3]=0}var L=E[1],P=E[5],I=E[9],z=E[2],O=E[6],D=E[10],R=P*D-I*O,F=I*z-L*D,B=L*O-P*z,N=c(R,F,B);R/=N,F/=N,B/=N,E[0]=R,E[4]=F,E[8]=B;for(i=0;i<3;++i)S[i]=b[i]+E[2+4*i]*p;for(i=0;i<3;++i){u=0;for(var j=0;j<3;++j)u+=E[i+4*j]*S[j];E[12+i]=-u}E[15]=1},p.getMatrix=function(t,e){this.recalcMatrix(t);var r=this.computedMatrix;if(e){for(var n=0;n<16;++n)e[n]=r[n];return e}return r};var d=[0,0,0];p.rotate=function(t,e,r,n){if(this.angle.move(t,e,r),n){this.recalcMatrix(t);var a=this.computedMatrix;d[0]=a[2],d[1]=a[6],d[2]=a[10];for(var o=this.computedUp,s=this.computedRight,l=this.computedToward,c=0;c<3;++c)a[4*c]=o[c],a[4*c+1]=s[c],a[4*c+2]=l[c];i(a,a,n,d);for(c=0;c<3;++c)o[c]=a[4*c],s[c]=a[4*c+1];this.up.set(t,o[0],o[1],o[2]),this.right.set(t,s[0],s[1],s[2])}},p.pan=function(t,e,r,n){e=e||0,r=r||0,n=n||0,this.recalcMatrix(t);var a=this.computedMatrix,i=(Math.exp(this.computedRadius[0]),a[1]),o=a[5],s=a[9],l=c(i,o,s);i/=l,o/=l,s/=l;var u=a[0],h=a[4],f=a[8],p=u*i+h*o+f*s,d=c(u-=i*p,h-=o*p,f-=s*p),g=(u/=d)*e+i*r,m=(h/=d)*e+o*r,v=(f/=d)*e+s*r;this.center.move(t,g,m,v);var y=Math.exp(this.computedRadius[0]);y=Math.max(1e-4,y+n),this.radius.set(t,Math.log(y))},p.translate=function(t,e,r,n){this.center.move(t,e||0,r||0,n||0)},p.setMatrix=function(t,e,r,n){var i=1;"number"==typeof r&&(i=0|r),(i<0||i>3)&&(i=1);var o=(i+2)%3;e||(this.recalcMatrix(t),e=this.computedMatrix);var s=e[i],l=e[i+4],h=e[i+8];if(n){var f=Math.abs(s),p=Math.abs(l),d=Math.abs(h),g=Math.max(f,p,d);f===g?(s=s<0?-1:1,l=h=0):d===g?(h=h<0?-1:1,s=l=0):(l=l<0?-1:1,s=h=0)}else{var m=c(s,l,h);s/=m,l/=m,h/=m}var v,y,x=e[o],b=e[o+4],_=e[o+8],w=x*s+b*l+_*h,T=c(x-=s*w,b-=l*w,_-=h*w),k=l*(_/=T)-h*(b/=T),A=h*(x/=T)-s*_,M=s*b-l*x,S=c(k,A,M);if(k/=S,A/=S,M/=S,this.center.jump(t,H,G,Y),this.radius.idle(t),this.up.jump(t,s,l,h),this.right.jump(t,x,b,_),2===i){var E=e[1],C=e[5],L=e[9],P=E*x+C*b+L*_,I=E*k+C*A+L*M;v=R<0?-Math.PI/2:Math.PI/2,y=Math.atan2(I,P)}else{var z=e[2],O=e[6],D=e[10],R=z*s+O*l+D*h,F=z*x+O*b+D*_,B=z*k+O*A+D*M;v=Math.asin(u(R)),y=Math.atan2(B,F)}this.angle.jump(t,y,v),this.recalcMatrix(t);var N=e[2],j=e[6],V=e[10],U=this.computedMatrix;a(U,e);var q=U[15],H=U[12]/q,G=U[13]/q,Y=U[14]/q,W=Math.exp(this.computedRadius[0]);this.center.jump(t,H-N*W,G-j*W,Y-V*W)},p.lastT=function(){return Math.max(this.center.lastT(),this.up.lastT(),this.right.lastT(),this.radius.lastT(),this.angle.lastT())},p.idle=function(t){this.center.idle(t),this.up.idle(t),this.right.idle(t),this.radius.idle(t),this.angle.idle(t)},p.flush=function(t){this.center.flush(t),this.up.flush(t),this.right.flush(t),this.radius.flush(t),this.angle.flush(t)},p.setDistance=function(t,e){e>0&&this.radius.set(t,Math.log(e))},p.lookAt=function(t,e,r,n){this.recalcMatrix(t),e=e||this.computedEye,r=r||this.computedCenter;var a=(n=n||this.computedUp)[0],i=n[1],o=n[2],s=c(a,i,o);if(!(s<1e-6)){a/=s,i/=s,o/=s;var l=e[0]-r[0],h=e[1]-r[1],f=e[2]-r[2],p=c(l,h,f);if(!(p<1e-6)){l/=p,h/=p,f/=p;var d=this.computedRight,g=d[0],m=d[1],v=d[2],y=a*g+i*m+o*v,x=c(g-=y*a,m-=y*i,v-=y*o);if(!(x<.01&&(x=c(g=i*f-o*h,m=o*l-a*f,v=a*h-i*l))<1e-6)){g/=x,m/=x,v/=x,this.up.set(t,a,i,o),this.right.set(t,g,m,v),this.center.set(t,r[0],r[1],r[2]),this.radius.set(t,Math.log(p));var b=i*v-o*m,_=o*g-a*v,w=a*m-i*g,T=c(b,_,w),k=a*l+i*h+o*f,A=g*l+m*h+v*f,M=(b/=T)*l+(_/=T)*h+(w/=T)*f,S=Math.asin(u(k)),E=Math.atan2(M,A),C=this.angle._state,L=C[C.length-1],P=C[C.length-2];L%=2*Math.PI;var I=Math.abs(L+2*Math.PI-E),z=Math.abs(L-E),O=Math.abs(L-2*Math.PI-E);I<z&&(L+=2*Math.PI),O<z&&(L-=2*Math.PI),this.angle.jump(this.angle.lastT(),L,P),this.angle.set(t,E,S)}}}}},{"filtered-vector":237,"gl-mat4/invert":273,"gl-mat4/rotate":278,"gl-vec3/cross":334,"gl-vec3/dot":339,"gl-vec3/normalize":356}],534:[function(t,e,r){"use strict";e.exports=function(t,e,r){var a=t*e,i=n*t,o=i-(i-t),s=t-o,l=n*e,c=l-(l-e),u=e-c,h=s*u-(a-o*c-s*c-o*u);if(r)return r[0]=h,r[1]=a,r;return[h,a]};var n=+(Math.pow(2,27)+1)},{}],535:[function(t,e,r){"use strict";e.exports=function(t,e,r){var n=t+e,a=n-t,i=e-a,o=t-(n-a);if(r)return r[0]=o+i,r[1]=n,r;return[o+i,n]}},{}],536:[function(t,e,r){"use strict";var n=t("../prototype/is");e.exports=function(t){if("function"!=typeof t)return!1;if(!hasOwnProperty.call(t,"length"))return!1;try{if("number"!=typeof t.length)return!1;if("function"!=typeof t.call)return!1;if("function"!=typeof t.apply)return!1}catch(t){return!1}return!n(t)}},{"../prototype/is":543}],537:[function(t,e,r){"use strict";var n=t("../value/is"),a=t("../object/is"),i=t("../string/coerce"),o=t("./to-short-string"),s=function(t,e){return t.replace("%v",o(e))};e.exports=function(t,e,r){if(!a(r))throw new TypeError(s(e,t));if(!n(t)){if("default"in r)return r.default;if(r.isOptional)return null}var o=i(r.errorMessage);throw n(o)||(o=e),new TypeError(s(o,t))}},{"../object/is":540,"../string/coerce":544,"../value/is":546,"./to-short-string":539}],538:[function(t,e,r){"use strict";e.exports=function(t){try{return t.toString()}catch(e){try{return String(t)}catch(t){return null}}}},{}],539:[function(t,e,r){"use strict";var n=t("./safe-to-string"),a=/[\n\r\u2028\u2029]/g;e.exports=function(t){var e=n(t);return null===e?"<Non-coercible to string value>":(e.length>100&&(e=e.slice(0,99)+"\u2026"),e=e.replace(a,(function(t){switch(t){case"\n":return"\\n";case"\r":return"\\r";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";default:throw new Error("Unexpected character")}})))}},{"./safe-to-string":538}],540:[function(t,e,r){"use strict";var n=t("../value/is"),a={object:!0,function:!0,undefined:!0};e.exports=function(t){return!!n(t)&&hasOwnProperty.call(a,typeof t)}},{"../value/is":546}],541:[function(t,e,r){"use strict";var n=t("../lib/resolve-exception"),a=t("./is");e.exports=function(t){return a(t)?t:n(t,"%v is not a plain function",arguments[1])}},{"../lib/resolve-exception":537,"./is":542}],542:[function(t,e,r){"use strict";var n=t("../function/is"),a=/^\s*class[\s{/}]/,i=Function.prototype.toString;e.exports=function(t){return!!n(t)&&!a.test(i.call(t))}},{"../function/is":536}],543:[function(t,e,r){"use strict";var n=t("../object/is");e.exports=function(t){if(!n(t))return!1;try{return!!t.constructor&&t.constructor.prototype===t}catch(t){return!1}}},{"../object/is":540}],544:[function(t,e,r){"use strict";var n=t("../value/is"),a=t("../object/is"),i=Object.prototype.toString;e.exports=function(t){if(!n(t))return null;if(a(t)){var e=t.toString;if("function"!=typeof e)return null;if(e===i)return null}try{return""+t}catch(t){return null}}},{"../object/is":540,"../value/is":546}],545:[function(t,e,r){"use strict";var n=t("../lib/resolve-exception"),a=t("./is");e.exports=function(t){return a(t)?t:n(t,"Cannot use %v",arguments[1])}},{"../lib/resolve-exception":537,"./is":546}],546:[function(t,e,r){"use strict";e.exports=function(t){return null!=t}},{}],547:[function(t,e,r){(function(e){"use strict";var n=t("bit-twiddle"),a=t("dup"),i=t("buffer").Buffer;e.__TYPEDARRAY_POOL||(e.__TYPEDARRAY_POOL={UINT8:a([32,0]),UINT16:a([32,0]),UINT32:a([32,0]),BIGUINT64:a([32,0]),INT8:a([32,0]),INT16:a([32,0]),INT32:a([32,0]),BIGINT64:a([32,0]),FLOAT:a([32,0]),DOUBLE:a([32,0]),DATA:a([32,0]),UINT8C:a([32,0]),BUFFER:a([32,0])});var o="undefined"!=typeof Uint8ClampedArray,s="undefined"!=typeof BigUint64Array,l="undefined"!=typeof BigInt64Array,c=e.__TYPEDARRAY_POOL;c.UINT8C||(c.UINT8C=a([32,0])),c.BIGUINT64||(c.BIGUINT64=a([32,0])),c.BIGINT64||(c.BIGINT64=a([32,0])),c.BUFFER||(c.BUFFER=a([32,0]));var u=c.DATA,h=c.BUFFER;function f(t){if(t){var e=t.length||t.byteLength,r=n.log2(e);u[r].push(t)}}function p(t){t=n.nextPow2(t);var e=n.log2(t),r=u[e];return r.length>0?r.pop():new ArrayBuffer(t)}function d(t){return new Uint8Array(p(t),0,t)}function g(t){return new Uint16Array(p(2*t),0,t)}function m(t){return new Uint32Array(p(4*t),0,t)}function v(t){return new Int8Array(p(t),0,t)}function y(t){return new Int16Array(p(2*t),0,t)}function x(t){return new Int32Array(p(4*t),0,t)}function b(t){return new Float32Array(p(4*t),0,t)}function _(t){return new Float64Array(p(8*t),0,t)}function w(t){return o?new Uint8ClampedArray(p(t),0,t):d(t)}function T(t){return s?new BigUint64Array(p(8*t),0,t):null}function k(t){return l?new BigInt64Array(p(8*t),0,t):null}function A(t){return new DataView(p(t),0,t)}function M(t){t=n.nextPow2(t);var e=n.log2(t),r=h[e];return r.length>0?r.pop():new i(t)}r.free=function(t){if(i.isBuffer(t))h[n.log2(t.length)].push(t);else{if("[object ArrayBuffer]"!==Object.prototype.toString.call(t)&&(t=t.buffer),!t)return;var e=t.length||t.byteLength,r=0|n.log2(e);u[r].push(t)}},r.freeUint8=r.freeUint16=r.freeUint32=r.freeBigUint64=r.freeInt8=r.freeInt16=r.freeInt32=r.freeBigInt64=r.freeFloat32=r.freeFloat=r.freeFloat64=r.freeDouble=r.freeUint8Clamped=r.freeDataView=function(t){f(t.buffer)},r.freeArrayBuffer=f,r.freeBuffer=function(t){h[n.log2(t.length)].push(t)},r.malloc=function(t,e){if(void 0===e||"arraybuffer"===e)return p(t);switch(e){case"uint8":return d(t);case"uint16":return g(t);case"uint32":return m(t);case"int8":return v(t);case"int16":return y(t);case"int32":return x(t);case"float":case"float32":return b(t);case"double":case"float64":return _(t);case"uint8_clamped":return w(t);case"bigint64":return k(t);case"biguint64":return T(t);case"buffer":return M(t);case"data":case"dataview":return A(t);default:return null}return null},r.mallocArrayBuffer=p,r.mallocUint8=d,r.mallocUint16=g,r.mallocUint32=m,r.mallocInt8=v,r.mallocInt16=y,r.mallocInt32=x,r.mallocFloat32=r.mallocFloat=b,r.mallocFloat64=r.mallocDouble=_,r.mallocUint8Clamped=w,r.mallocBigUint64=T,r.mallocBigInt64=k,r.mallocDataView=A,r.mallocBuffer=M,r.clearCache=function(){for(var t=0;t<32;++t)c.UINT8[t].length=0,c.UINT16[t].length=0,c.UINT32[t].length=0,c.INT8[t].length=0,c.INT16[t].length=0,c.INT32[t].length=0,c.FLOAT[t].length=0,c.DOUBLE[t].length=0,c.BIGUINT64[t].length=0,c.BIGINT64[t].length=0,c.UINT8C[t].length=0,u[t].length=0,h[t].length=0}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"bit-twiddle":95,buffer:108,dup:171}],548:[function(t,e,r){"use strict";function n(t){this.roots=new Array(t),this.ranks=new Array(t);for(var e=0;e<t;++e)this.roots[e]=e,this.ranks[e]=0}e.exports=n;var a=n.prototype;Object.defineProperty(a,"length",{get:function(){return this.roots.length}}),a.makeSet=function(){var t=this.roots.length;return this.roots.push(t),this.ranks.push(0),t},a.find=function(t){for(var e=t,r=this.roots;r[t]!==t;)t=r[t];for(;r[e]!==t;){var n=r[e];r[e]=t,e=n}return t},a.link=function(t,e){var r=this.find(t),n=this.find(e);if(r!==n){var a=this.ranks,i=this.roots,o=a[r],s=a[n];o<s?i[r]=n:s<o?i[n]=r:(i[n]=r,++a[r])}}},{}],549:[function(t,e,r){"use strict";e.exports=function(t,e,r){return 0===t.length?t:e?(r||t.sort(e),function(t,e){for(var r=1,n=t.length,a=t[0],i=t[0],o=1;o<n;++o)if(i=a,e(a=t[o],i)){if(o===r){r++;continue}t[r++]=a}return t.length=r,t}(t,e)):(r||t.sort(),function(t){for(var e=1,r=t.length,n=t[0],a=t[0],i=1;i<r;++i,a=n)if(a=n,(n=t[i])!==a){if(i===e){e++;continue}t[e++]=n}return t.length=e,t}(t))}},{}],550:[function(t,e,r){var n=/[\'\"]/;e.exports=function(t){return t?(n.test(t.charAt(0))&&(t=t.substr(1)),n.test(t.charAt(t.length-1))&&(t=t.substr(0,t.length-1)),t):""}},{}],551:[function(t,e,r){"use strict";e.exports=function(t,e,r){Array.isArray(r)||(r=[].slice.call(arguments,2));for(var n=0,a=r.length;n<a;n++){var i=r[n];for(var o in i)if((void 0===e[o]||Array.isArray(e[o])||t[o]!==e[o])&&o in e){var s;if(!0===i[o])s=e[o];else{if(!1===i[o])continue;if("function"==typeof i[o]&&void 0===(s=i[o](e[o],t,e)))continue}t[o]=s}}return t}},{}],552:[function(t,e,r){"use strict";e.exports=function(t,e){"object"==typeof e&&null!==e||(e={});return n(t,e.canvas||a,e.context||i,e)};var n=t("./lib/vtext"),a=null,i=null;"undefined"!=typeof document&&((a=document.createElement("canvas")).width=8192,a.height=1024,i=a.getContext("2d"))},{"./lib/vtext":553}],553:[function(t,e,r){e.exports=function(t,e,r,n){var i=64,o=1.25,s={breaklines:!1,bolds:!1,italics:!1,subscripts:!1,superscripts:!1};n&&(n.size&&n.size>0&&(i=n.size),n.lineSpacing&&n.lineSpacing>0&&(o=n.lineSpacing),n.styletags&&n.styletags.breaklines&&(s.breaklines=!!n.styletags.breaklines),n.styletags&&n.styletags.bolds&&(s.bolds=!!n.styletags.bolds),n.styletags&&n.styletags.italics&&(s.italics=!!n.styletags.italics),n.styletags&&n.styletags.subscripts&&(s.subscripts=!!n.styletags.subscripts),n.styletags&&n.styletags.superscripts&&(s.superscripts=!!n.styletags.superscripts));return r.font=[n.fontStyle,n.fontVariant,n.fontWeight,i+"px",n.font].filter((function(t){return t})).join(" "),r.textAlign="start",r.textBaseline="alphabetic",r.direction="ltr",f(function(t,e,r,n,i,o){r=r.replace(/\n/g,""),r=!0===o.breaklines?r.replace(/\<br\>/g,"\n"):r.replace(/\<br\>/g," ");var s="",l=[];for(p=0;p<r.length;++p)l[p]=s;!0===o.bolds&&(l=c("b","b|",r,l));!0===o.italics&&(l=c("i","i|",r,l));!0===o.superscripts&&(l=c("sup","+1",r,l));!0===o.subscripts&&(l=c("sub","-1",r,l));var u=[],h="";for(p=0;p<r.length;++p)null!==l[p]&&(h+=r[p],u.push(l[p]));var f,p,d,g,m,v=h.split("\n"),y=v.length,x=Math.round(i*n),b=n,_=2*n,w=0,T=y*x+_;t.height<T&&(t.height=T);e.fillStyle="#000",e.fillRect(0,0,t.width,t.height),e.fillStyle="#fff";var k=0,A="";function M(){if(""!==A){var t=e.measureText(A).width;e.fillText(A,b+d,_+g),d+=t}}function S(){return Math.round(m)+"px "}function E(t,r){var n=""+e.font;if(!0===o.subscripts){var a=t.indexOf("-"),i=r.indexOf("-"),s=a>-1?parseInt(t[1+a]):0,l=i>-1?parseInt(r[1+i]):0;s!==l&&(n=n.replace(S(),"?px "),m*=Math.pow(.75,l-s),n=n.replace("?px ",S())),g+=.25*x*(l-s)}if(!0===o.superscripts){var c=t.indexOf("+"),u=r.indexOf("+"),h=c>-1?parseInt(t[1+c]):0,f=u>-1?parseInt(r[1+u]):0;h!==f&&(n=n.replace(S(),"?px "),m*=Math.pow(.75,f-h),n=n.replace("?px ",S())),g-=.25*x*(f-h)}if(!0===o.bolds){var p=t.indexOf("b|")>-1,d=r.indexOf("b|")>-1;!p&&d&&(n=v?n.replace("italic ","italic bold "):"bold "+n),p&&!d&&(n=n.replace("bold ",""))}if(!0===o.italics){var v=t.indexOf("i|")>-1,y=r.indexOf("i|")>-1;!v&&y&&(n="italic "+n),v&&!y&&(n=n.replace("italic ",""))}e.font=n}for(f=0;f<y;++f){var C=v[f]+"\n";for(d=0,g=f*x,m=n,A="",p=0;p<C.length;++p){var L=p+k<u.length?u[p+k]:u[u.length-1];s===L?A+=C[p]:(M(),A=C[p],void 0!==L&&(E(s,L),s=L))}M(),k+=C.length;var P=0|Math.round(d+2*b);w<P&&(w=P)}var I=w,z=_+x*y;return a(e.getImageData(0,0,I,z).data,[z,I,4]).pick(-1,-1,0).transpose(1,0)}(e,r,t,i,o,s),n,i)},e.exports.processPixels=f;var n=t("surface-nets"),a=t("ndarray"),i=t("simplify-planar-graph"),o=t("clean-pslg"),s=t("cdt2d"),l=t("planar-graph-to-polyline");function c(t,e,r,n){for(var a="<"+t+">",i="</"+t+">",o=a.length,s=i.length,l="+"===e[0]||"-"===e[0],c=0,u=-s;c>-1&&-1!==(c=r.indexOf(a,c))&&-1!==(u=r.indexOf(i,c+o))&&!(u<=c);){for(var h=c;h<u+s;++h)if(h<c+o||h>=u)n[h]=null,r=r.substr(0,h)+" "+r.substr(h+1);else if(null!==n[h]){var f=n[h].indexOf(e[0]);-1===f?n[h]+=e:l&&(n[h]=n[h].substr(0,f+1)+(1+parseInt(n[h][f+1]))+n[h].substr(f+2))}var p=c+o,d=r.substr(p,u-p).indexOf(a);c=-1!==d?d:u+s}return n}function u(t,e){var r=n(t,128);return e?i(r.cells,r.positions,.25):{edges:r.cells,positions:r.positions}}function h(t,e,r,n){var a=u(t,n),i=function(t,e,r){for(var n=e.textAlign||"start",a=e.textBaseline||"alphabetic",i=[1<<30,1<<30],o=[0,0],s=t.length,l=0;l<s;++l)for(var c=t[l],u=0;u<2;++u)i[u]=0|Math.min(i[u],c[u]),o[u]=0|Math.max(o[u],c[u]);var h=0;switch(n){case"center":h=-.5*(i[0]+o[0]);break;case"right":case"end":h=-o[0];break;case"left":case"start":h=-i[0];break;default:throw new Error("vectorize-text: Unrecognized textAlign: '"+n+"'")}var f=0;switch(a){case"hanging":case"top":f=-i[1];break;case"middle":f=-.5*(i[1]+o[1]);break;case"alphabetic":case"ideographic":f=-3*r;break;case"bottom":f=-o[1];break;default:throw new Error("vectorize-text: Unrecoginized textBaseline: '"+a+"'")}var p=1/r;return"lineHeight"in e?p*=+e.lineHeight:"width"in e?p=e.width/(o[0]-i[0]):"height"in e&&(p=e.height/(o[1]-i[1])),t.map((function(t){return[p*(t[0]+h),p*(t[1]+f)]}))}(a.positions,e,r),c=a.edges,h="ccw"===e.orientation;if(o(i,c),e.polygons||e.polygon||e.polyline){for(var f=l(c,i),p=new Array(f.length),d=0;d<f.length;++d){for(var g=f[d],m=new Array(g.length),v=0;v<g.length;++v){for(var y=g[v],x=new Array(y.length),b=0;b<y.length;++b)x[b]=i[y[b]].slice();h&&x.reverse(),m[v]=x}p[d]=m}return p}return e.triangles||e.triangulate||e.triangle?{cells:s(i,c,{delaunay:!1,exterior:!1,interior:!0}),positions:i}:{edges:c,positions:i}}function f(t,e,r){try{return h(t,e,r,!0)}catch(t){}try{return h(t,e,r,!1)}catch(t){}return e.polygons||e.polyline||e.polygon?[]:e.triangles||e.triangulate||e.triangle?{cells:[],positions:[]}:{edges:[],positions:[]}}},{cdt2d:109,"clean-pslg":118,ndarray:448,"planar-graph-to-polyline":466,"simplify-planar-graph":514,"surface-nets":522}],554:[function(t,e,r){!function(){"use strict";if("undefined"==typeof ses||!ses.ok||ses.ok()){"undefined"!=typeof ses&&(ses.weakMapPermitHostObjects=g);var t=!1;if("function"==typeof WeakMap){var r=WeakMap;if("undefined"!=typeof navigator&&/Firefox/.test(navigator.userAgent));else{var n=new r,a=Object.freeze({});if(n.set(a,1),1===n.get(a))return void(e.exports=WeakMap);t=!0}}Object.prototype.hasOwnProperty;var i=Object.getOwnPropertyNames,o=Object.defineProperty,s=Object.isExtensible,l="weakmap:ident:"+Math.random()+"___";if("undefined"!=typeof crypto&&"function"==typeof crypto.getRandomValues&&"function"==typeof ArrayBuffer&&"function"==typeof Uint8Array){var c=new ArrayBuffer(25),u=new Uint8Array(c);crypto.getRandomValues(u),l="weakmap:rand:"+Array.prototype.map.call(u,(function(t){return(t%36).toString(36)})).join("")+"___"}if(o(Object,"getOwnPropertyNames",{value:function(t){return i(t).filter(m)}}),"getPropertyNames"in Object){var h=Object.getPropertyNames;o(Object,"getPropertyNames",{value:function(t){return h(t).filter(m)}})}!function(){var t=Object.freeze;o(Object,"freeze",{value:function(e){return v(e),t(e)}});var e=Object.seal;o(Object,"seal",{value:function(t){return v(t),e(t)}});var r=Object.preventExtensions;o(Object,"preventExtensions",{value:function(t){return v(t),r(t)}})}();var f=!1,p=0,d=function(){this instanceof d||x();var t=[],e=[],r=p++;return Object.create(d.prototype,{get___:{value:y((function(n,a){var i,o=v(n);return o?r in o?o[r]:a:(i=t.indexOf(n))>=0?e[i]:a}))},has___:{value:y((function(e){var n=v(e);return n?r in n:t.indexOf(e)>=0}))},set___:{value:y((function(n,a){var i,o=v(n);return o?o[r]=a:(i=t.indexOf(n))>=0?e[i]=a:(i=t.length,e[i]=a,t[i]=n),this}))},delete___:{value:y((function(n){var a,i,o=v(n);return o?r in o&&delete o[r]:!((a=t.indexOf(n))<0)&&(i=t.length-1,t[a]=void 0,e[a]=e[i],t[a]=t[i],t.length=i,e.length=i,!0)}))}})};d.prototype=Object.create(Object.prototype,{get:{value:function(t,e){return this.get___(t,e)},writable:!0,configurable:!0},has:{value:function(t){return this.has___(t)},writable:!0,configurable:!0},set:{value:function(t,e){return this.set___(t,e)},writable:!0,configurable:!0},delete:{value:function(t){return this.delete___(t)},writable:!0,configurable:!0}}),"function"==typeof r?function(){function n(){this instanceof d||x();var e,n=new r,a=void 0,i=!1;return e=t?function(t,e){return n.set(t,e),n.has(t)||(a||(a=new d),a.set(t,e)),this}:function(t,e){if(i)try{n.set(t,e)}catch(r){a||(a=new d),a.set___(t,e)}else n.set(t,e);return this},Object.create(d.prototype,{get___:{value:y((function(t,e){return a?n.has(t)?n.get(t):a.get___(t,e):n.get(t,e)}))},has___:{value:y((function(t){return n.has(t)||!!a&&a.has___(t)}))},set___:{value:y(e)},delete___:{value:y((function(t){var e=!!n.delete(t);return a&&a.delete___(t)||e}))},permitHostObjects___:{value:y((function(t){if(t!==g)throw new Error("bogus call to permitHostObjects___");i=!0}))}})}t&&"undefined"!=typeof Proxy&&(Proxy=void 0),n.prototype=d.prototype,e.exports=n,Object.defineProperty(WeakMap.prototype,"constructor",{value:WeakMap,enumerable:!1,configurable:!0,writable:!0})}():("undefined"!=typeof Proxy&&(Proxy=void 0),e.exports=d)}function g(t){t.permitHostObjects___&&t.permitHostObjects___(g)}function m(t){return!("weakmap:"==t.substr(0,"weakmap:".length)&&"___"===t.substr(t.length-3))}function v(t){if(t!==Object(t))throw new TypeError("Not an object: "+t);var e=t[l];if(e&&e.key===t)return e;if(s(t)){e={key:t};try{return o(t,l,{value:e,writable:!1,enumerable:!1,configurable:!1}),e}catch(t){return}}}function y(t){return t.prototype=null,Object.freeze(t)}function x(){f||"undefined"==typeof console||(f=!0,console.warn("WeakMap should be invoked as new WeakMap(), not WeakMap(). This will be an error in the future."))}}()},{}],555:[function(t,e,r){var n=t("./hidden-store.js");e.exports=function(){var t={};return function(e){if(("object"!=typeof e||null===e)&&"function"!=typeof e)throw new Error("Weakmap-shim: Key must be object");var r=e.valueOf(t);return r&&r.identity===t?r:n(e,t)}}},{"./hidden-store.js":556}],556:[function(t,e,r){e.exports=function(t,e){var r={identity:e},n=t.valueOf;return Object.defineProperty(t,"valueOf",{value:function(t){return t!==e?n.apply(this,arguments):r},writable:!0}),r}},{}],557:[function(t,e,r){var n=t("./create-store.js");e.exports=function(){var t=n();return{get:function(e,r){var n=t(e);return n.hasOwnProperty("value")?n.value:r},set:function(e,r){return t(e).value=r,this},has:function(e){return"value"in t(e)},delete:function(e){return delete t(e).value}}}},{"./create-store.js":555}],558:[function(t,e,r){var n=t("get-canvas-context");e.exports=function(t){return n("webgl",t)}},{"get-canvas-context":244}],559:[function(t,e,r){var n=t("../main"),a=t("object-assign"),i=n.instance();function o(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}o.prototype=new n.baseCalendar,a(o.prototype,{name:"Chinese",jdEpoch:1721425.5,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(t,e){if("string"==typeof t){var r=t.match(l);return r?r[0]:""}var n=this._validateYear(t),a=t.month(),i=""+this.toChineseMonth(n,a);return e&&i.length<2&&(i="0"+i),this.isIntercalaryMonth(n,a)&&(i+="i"),i},monthNames:function(t){if("string"==typeof t){var e=t.match(c);return e?e[0]:""}var r=this._validateYear(t),n=t.month(),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"][this.toChineseMonth(r,n)-1];return this.isIntercalaryMonth(r,n)&&(a="\u95f0"+a),a},monthNamesShort:function(t){if("string"==typeof t){var e=t.match(u);return e?e[0]:""}var r=this._validateYear(t),n=t.month(),a=["\u4e00","\u4e8c","\u4e09","\u56db","\u4e94","\u516d","\u4e03","\u516b","\u4e5d","\u5341","\u5341\u4e00","\u5341\u4e8c"][this.toChineseMonth(r,n)-1];return this.isIntercalaryMonth(r,n)&&(a="\u95f0"+a),a},parseMonth:function(t,e){t=this._validateYear(t);var r,n=parseInt(e);if(isNaN(n))"\u95f0"===e[0]&&(r=!0,e=e.substring(1)),"\u6708"===e[e.length-1]&&(e=e.substring(0,e.length-1)),n=1+["\u4e00","\u4e8c","\u4e09","\u56db","\u4e94","\u516d","\u4e03","\u516b","\u4e5d","\u5341","\u5341\u4e00","\u5341\u4e8c"].indexOf(e);else{var a=e[e.length-1];r="i"===a||"I"===a}return this.toMonthIndex(t,n,r)},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(t,e){if(t.year&&(t=t.year()),"number"!=typeof t||t<1888||t>2111)throw e.replace(/\{0\}/,this.local.name);return t},toMonthIndex:function(t,e,r){var a=this.intercalaryMonth(t);if(r&&e!==a||e<1||e>12)throw n.local.invalidMonth.replace(/\{0\}/,this.local.name);return a?!r&&e<=a?e-1:e:e-1},toChineseMonth:function(t,e){t.year&&(e=(t=t.year()).month());var r=this.intercalaryMonth(t);if(e<0||e>(r?12:11))throw n.local.invalidMonth.replace(/\{0\}/,this.local.name);return r?e<r?e+1:e:e+1},intercalaryMonth:function(t){return t=this._validateYear(t),h[t-h[0]]>>13},isIntercalaryMonth:function(t,e){t.year&&(e=(t=t.year()).month());var r=this.intercalaryMonth(t);return!!r&&r===e},leapYear:function(t){return 0!==this.intercalaryMonth(t)},weekOfYear:function(t,e,r){var a,o=this._validateYear(t,n.local.invalidyear),s=f[o-f[0]],l=s>>9&4095,c=s>>5&15,u=31&s;(a=i.newDate(l,c,u)).add(4-(a.dayOfWeek()||7),"d");var h=this.toJD(t,e,r)-a.toJD();return 1+Math.floor(h/7)},monthsInYear:function(t){return this.leapYear(t)?13:12},daysInMonth:function(t,e){t.year&&(e=t.month(),t=t.year()),t=this._validateYear(t);var r=h[t-h[0]];if(e>(r>>13?12:11))throw n.local.invalidMonth.replace(/\{0\}/,this.local.name);return r&1<<12-e?30:29},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(t,e,r){var a=this._validate(t,s,r,n.local.invalidDate);t=this._validateYear(a.year()),e=a.month(),r=a.day();var o=this.isIntercalaryMonth(t,e),s=this.toChineseMonth(t,e),l=function(t,e,r,n,a){var i,o,s;if("object"==typeof t)o=t,i=e||{};else{var l;if(!("number"==typeof t&&t>=1888&&t<=2111))throw new Error("Lunar year outside range 1888-2111");if(!("number"==typeof e&&e>=1&&e<=12))throw new Error("Lunar month outside range 1 - 12");if(!("number"==typeof r&&r>=1&&r<=30))throw new Error("Lunar day outside range 1 - 30");"object"==typeof n?(l=!1,i=n):(l=!!n,i=a||{}),o={year:t,month:e,day:r,isIntercalary:l}}s=o.day-1;var c,u=h[o.year-h[0]],p=u>>13;c=p&&(o.month>p||o.isIntercalary)?o.month:o.month-1;for(var d=0;d<c;d++){s+=u&1<<12-d?30:29}var g=f[o.year-f[0]],m=new Date(g>>9&4095,(g>>5&15)-1,(31&g)+s);return i.year=m.getFullYear(),i.month=1+m.getMonth(),i.day=m.getDate(),i}(t,s,r,o);return i.toJD(l.year,l.month,l.day)},fromJD:function(t){var e=i.fromJD(t),r=function(t,e,r,n){var a,i;if("object"==typeof t)a=t,i=e||{};else{if(!("number"==typeof t&&t>=1888&&t<=2111))throw new Error("Solar year outside range 1888-2111");if(!("number"==typeof e&&e>=1&&e<=12))throw new Error("Solar month outside range 1 - 12");if(!("number"==typeof r&&r>=1&&r<=31))throw new Error("Solar day outside range 1 - 31");a={year:t,month:e,day:r},i=n||{}}var o=f[a.year-f[0]],s=a.year<<9|a.month<<5|a.day;i.year=s>=o?a.year:a.year-1,o=f[i.year-f[0]];var l,c=new Date(o>>9&4095,(o>>5&15)-1,31&o),u=new Date(a.year,a.month-1,a.day);l=Math.round((u-c)/864e5);var p,d=h[i.year-h[0]];for(p=0;p<13;p++){var g=d&1<<12-p?30:29;if(l<g)break;l-=g}var m=d>>13;!m||p<m?(i.isIntercalary=!1,i.month=1+p):p===m?(i.isIntercalary=!0,i.month=p):(i.isIntercalary=!1,i.month=p);return i.day=1+l,i}(e.year(),e.month(),e.day()),n=this.toMonthIndex(r.year,r.month,r.isIntercalary);return this.newDate(r.year,n,r.day)},fromString:function(t){var e=t.match(s),r=this._validateYear(+e[1]),n=+e[2],a=!!e[3],i=this.toMonthIndex(r,n,a),o=+e[4];return this.newDate(r,i,o)},add:function(t,e,r){var n=t.year(),a=t.month(),i=this.isIntercalaryMonth(n,a),s=this.toChineseMonth(n,a),l=Object.getPrototypeOf(o.prototype).add.call(this,t,e,r);if("y"===r){var c=l.year(),u=l.month(),h=this.isIntercalaryMonth(c,s),f=i&&h?this.toMonthIndex(c,s,!0):this.toMonthIndex(c,s,!1);f!==u&&l.month(f)}return l}});var s=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,l=/^\d?\d[iI]?/m,c=/^\u95f0?\u5341?[\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d]?\u6708/m,u=/^\u95f0?\u5341?[\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d]?/m;n.calendars.chinese=o;var h=[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],f=[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]},{"../main":573,"object-assign":452}],560:[function(t,e,r){var n=t("../main"),a=t("object-assign");function i(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}i.prototype=new n.baseCalendar,a(i.prototype,{name:"Coptic",jdEpoch:1825029.5,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 e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);return(t=e.year()+(e.year()<0?1:0))%4==3||t%4==-1},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear||n.regionalOptions[""].invalidYear),13},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(13===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);return(t=a.year())<0&&t++,a.day()+30*(a.month()-1)+365*(t-1)+Math.floor(t/4)+this.jdEpoch-1},fromJD:function(t){var e=Math.floor(t)+.5-this.jdEpoch,r=Math.floor((e-Math.floor((e+366)/1461))/365)+1;r<=0&&r--,e=Math.floor(t)+.5-this.newDate(r,1,1).toJD();var n=Math.floor(e/30)+1,a=e-30*(n-1)+1;return this.newDate(r,n,a)}}),n.calendars.coptic=i},{"../main":573,"object-assign":452}],561:[function(t,e,r){var n=t("../main"),a=t("object-assign");function i(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}i.prototype=new n.baseCalendar,a(i.prototype,{name:"Discworld",jdEpoch:1721425.5,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(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear),!1},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear),13},daysInYear:function(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear),400},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/8)+1},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(t,e,r){return(this._validate(t,e,r,n.local.invalidDate).day()+1)%8},weekDay:function(t,e,r){var n=this.dayOfWeek(t,e,r);return n>=2&&n<=6},extraInfo:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);return{century:o[Math.floor((a.year()-1)/100)+1]||""}},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);return t=a.year()+(a.year()<0?1:0),e=a.month(),(r=a.day())+(e>1?16:0)+(e>2?32*(e-2):0)+400*(t-1)+this.jdEpoch-1},fromJD:function(t){t=Math.floor(t+.5)-Math.floor(this.jdEpoch)-1;var e=Math.floor(t/400)+1;t-=400*(e-1),t+=t>15?16:0;var r=Math.floor(t/32)+1,n=t-32*(r-1)+1;return this.newDate(e<=0?e-1:e,r,n)}});var o={20:"Fruitbat",21:"Anchovy"};n.calendars.discworld=i},{"../main":573,"object-assign":452}],562:[function(t,e,r){var n=t("../main"),a=t("object-assign");function i(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}i.prototype=new n.baseCalendar,a(i.prototype,{name:"Ethiopian",jdEpoch:1724220.5,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 e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);return(t=e.year()+(e.year()<0?1:0))%4==3||t%4==-1},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear||n.regionalOptions[""].invalidYear),13},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(13===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);return(t=a.year())<0&&t++,a.day()+30*(a.month()-1)+365*(t-1)+Math.floor(t/4)+this.jdEpoch-1},fromJD:function(t){var e=Math.floor(t)+.5-this.jdEpoch,r=Math.floor((e-Math.floor((e+366)/1461))/365)+1;r<=0&&r--,e=Math.floor(t)+.5-this.newDate(r,1,1).toJD();var n=Math.floor(e/30)+1,a=e-30*(n-1)+1;return this.newDate(r,n,a)}}),n.calendars.ethiopian=i},{"../main":573,"object-assign":452}],563:[function(t,e,r){var n=t("../main"),a=t("object-assign");function i(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}function o(t,e){return t-e*Math.floor(t/e)}i.prototype=new n.baseCalendar,a(i.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(t){var e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);return this._leapYear(e.year())},_leapYear:function(t){return o(7*(t=t<0?t+1:t)+1,19)<7},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear),this._leapYear(t.year?t.year():t)?13:12},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(t){return t=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear).year(),this.toJD(-1===t?1:t+1,7,1)-this.toJD(t,7,1)},daysInMonth:function(t,e){return t.year&&(e=t.month(),t=t.year()),this._validate(t,e,this.minDay,n.local.invalidMonth),12===e&&this.leapYear(t)||8===e&&5===o(this.daysInYear(t),10)?30:9===e&&3===o(this.daysInYear(t),10)?29:this.daysPerMonth[e-1]},weekDay:function(t,e,r){return 6!==this.dayOfWeek(t,e,r)},extraInfo:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);return{yearType:(this.leapYear(a)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(a)%10-3]}},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);t=a.year(),e=a.month(),r=a.day();var i=t<=0?t+1:t,o=this.jdEpoch+this._delay1(i)+this._delay2(i)+r+1;if(e<7){for(var s=7;s<=this.monthsInYear(t);s++)o+=this.daysInMonth(t,s);for(s=1;s<e;s++)o+=this.daysInMonth(t,s)}else for(s=7;s<e;s++)o+=this.daysInMonth(t,s);return o},_delay1:function(t){var e=Math.floor((235*t-234)/19),r=12084+13753*e,n=29*e+Math.floor(r/25920);return o(3*(n+1),7)<3&&n++,n},_delay2:function(t){var e=this._delay1(t-1),r=this._delay1(t);return this._delay1(t+1)-r==356?2:r-e==382?1:0},fromJD:function(t){t=Math.floor(t)+.5;for(var e=Math.floor(98496*(t-this.jdEpoch)/35975351)-1;t>=this.toJD(-1===e?1:e+1,7,1);)e++;for(var r=t<this.toJD(e,1,1)?7:1;t>this.toJD(e,r,this.daysInMonth(e,r));)r++;var n=t-this.toJD(e,r,1)+1;return this.newDate(e,r,n)}}),n.calendars.hebrew=i},{"../main":573,"object-assign":452}],564:[function(t,e,r){var n=t("../main"),a=t("object-assign");function i(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}i.prototype=new n.baseCalendar,a(i.prototype,{name:"Islamic",jdEpoch:1948439.5,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(t){return(11*this._validate(t,this.minMonth,this.minDay,n.local.invalidYear).year()+14)%30<11},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(t){return this.leapYear(t)?355:354},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(12===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return 5!==this.dayOfWeek(t,e,r)},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);return t=a.year(),e=a.month(),t=t<=0?t+1:t,(r=a.day())+Math.ceil(29.5*(e-1))+354*(t-1)+Math.floor((3+11*t)/30)+this.jdEpoch-1},fromJD:function(t){t=Math.floor(t)+.5;var e=Math.floor((30*(t-this.jdEpoch)+10646)/10631);e=e<=0?e-1:e;var r=Math.min(12,Math.ceil((t-29-this.toJD(e,1,1))/29.5)+1),n=t-this.toJD(e,r,1)+1;return this.newDate(e,r,n)}}),n.calendars.islamic=i},{"../main":573,"object-assign":452}],565:[function(t,e,r){var n=t("../main"),a=t("object-assign");function i(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}i.prototype=new n.baseCalendar,a(i.prototype,{name:"Julian",jdEpoch:1721423.5,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 e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);return(t=e.year()<0?e.year()+1:e.year())%4==0},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(4-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(2===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);return t=a.year(),e=a.month(),r=a.day(),t<0&&t++,e<=2&&(t--,e+=12),Math.floor(365.25*(t+4716))+Math.floor(30.6001*(e+1))+r-1524.5},fromJD:function(t){var e=Math.floor(t+.5)+1524,r=Math.floor((e-122.1)/365.25),n=Math.floor(365.25*r),a=Math.floor((e-n)/30.6001),i=a-Math.floor(a<14?1:13),o=r-Math.floor(i>2?4716:4715),s=e-n-Math.floor(30.6001*a);return o<=0&&o--,this.newDate(o,i,s)}}),n.calendars.julian=i},{"../main":573,"object-assign":452}],566:[function(t,e,r){var n=t("../main"),a=t("object-assign");function i(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}function o(t,e){return t-e*Math.floor(t/e)}function s(t,e){return o(t-1,e)+1}i.prototype=new n.baseCalendar,a(i.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(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear),!1},formatYear:function(t){t=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear).year();var e=Math.floor(t/400);return t%=400,t+=t<0?400:0,e+"."+Math.floor(t/20)+"."+t%20},forYear:function(t){if((t=t.split(".")).length<3)throw"Invalid Mayan year";for(var e=0,r=0;r<t.length;r++){var n=parseInt(t[r],10);if(Math.abs(n)>19||r>0&&n<0)throw"Invalid Mayan year";e=20*e+n}return e},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear),18},weekOfYear:function(t,e,r){return this._validate(t,e,r,n.local.invalidDate),0},daysInYear:function(t){return this._validate(t,this.minMonth,this.minDay,n.local.invalidYear),360},daysInMonth:function(t,e){return this._validate(t,e,this.minDay,n.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(t,e,r){return this._validate(t,e,r,n.local.invalidDate).day()},weekDay:function(t,e,r){return this._validate(t,e,r,n.local.invalidDate),!0},extraInfo:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate).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(t){var e=o((t-=this.jdEpoch)+8+340,365);return[Math.floor(e/20)+1,o(e,20)]},_toTzolkin:function(t){return[s((t-=this.jdEpoch)+20,20),s(t+4,13)]},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);return a.day()+20*a.month()+360*a.year()+this.jdEpoch},fromJD:function(t){t=Math.floor(t)+.5-this.jdEpoch;var e=Math.floor(t/360);t%=360,t+=t<0?360:0;var r=Math.floor(t/20),n=t%20;return this.newDate(e,r,n)}}),n.calendars.mayan=i},{"../main":573,"object-assign":452}],567:[function(t,e,r){var n=t("../main"),a=t("object-assign");function i(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}i.prototype=new n.baseCalendar;var o=n.instance("gregorian");a(i.prototype,{name:"Nanakshahi",jdEpoch:2257673.5,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(t){var e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear||n.regionalOptions[""].invalidYear);return o.leapYear(e.year()+(e.year()<1?1:0)+1469)},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(1-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(12===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidMonth);(t=a.year())<0&&t++;for(var i=a.day(),s=1;s<a.month();s++)i+=this.daysPerMonth[s-1];return i+o.toJD(t+1468,3,13)},fromJD:function(t){t=Math.floor(t+.5);for(var e=Math.floor((t-(this.jdEpoch-1))/366);t>=this.toJD(e+1,1,1);)e++;for(var r=t-Math.floor(this.toJD(e,1,1)+.5)+1,n=1;r>this.daysInMonth(e,n);)r-=this.daysInMonth(e,n),n++;return this.newDate(e,n,r)}}),n.calendars.nanakshahi=i},{"../main":573,"object-assign":452}],568:[function(t,e,r){var n=t("../main"),a=t("object-assign");function i(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}i.prototype=new n.baseCalendar,a(i.prototype,{name:"Nepali",jdEpoch:1700709.5,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(t){return this.daysInYear(t)!==this.daysPerYear},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(t){if(t=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear).year(),"undefined"==typeof this.NEPALI_CALENDAR_DATA[t])return this.daysPerYear;for(var e=0,r=this.minMonth;r<=12;r++)e+=this.NEPALI_CALENDAR_DATA[t][r];return e},daysInMonth:function(t,e){return t.year&&(e=t.month(),t=t.year()),this._validate(t,e,this.minDay,n.local.invalidMonth),"undefined"==typeof this.NEPALI_CALENDAR_DATA[t]?this.daysPerMonth[e-1]:this.NEPALI_CALENDAR_DATA[t][e]},weekDay:function(t,e,r){return 6!==this.dayOfWeek(t,e,r)},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);t=a.year(),e=a.month(),r=a.day();var i=n.instance(),o=0,s=e,l=t;this._createMissingCalendarData(t);var c=t-(s>9||9===s&&r>=this.NEPALI_CALENDAR_DATA[l][0]?56:57);for(9!==e&&(o=r,s--);9!==s;)s<=0&&(s=12,l--),o+=this.NEPALI_CALENDAR_DATA[l][s],s--;return 9===e?(o+=r-this.NEPALI_CALENDAR_DATA[l][0])<0&&(o+=i.daysInYear(c)):o+=this.NEPALI_CALENDAR_DATA[l][9]-this.NEPALI_CALENDAR_DATA[l][0],i.newDate(c,1,1).add(o,"d").toJD()},fromJD:function(t){var e=n.instance().fromJD(t),r=e.year(),a=e.dayOfYear(),i=r+56;this._createMissingCalendarData(i);for(var o=9,s=this.NEPALI_CALENDAR_DATA[i][0],l=this.NEPALI_CALENDAR_DATA[i][o]-s+1;a>l;)++o>12&&(o=1,i++),l+=this.NEPALI_CALENDAR_DATA[i][o];var c=this.NEPALI_CALENDAR_DATA[i][o]-(l-a);return this.newDate(i,o,c)},_createMissingCalendarData:function(t){var e=this.daysPerMonth.slice(0);e.unshift(17);for(var r=t-1;r<t+2;r++)"undefined"==typeof this.NEPALI_CALENDAR_DATA[r]&&(this.NEPALI_CALENDAR_DATA[r]=e)},NEPALI_CALENDAR_DATA:{1970:[18,31,31,32,31,31,31,30,29,30,29,30,30],1971:[18,31,31,32,31,32,30,30,29,30,29,30,30],1972:[17,31,32,31,32,31,30,30,30,29,29,30,30],1973:[19,30,32,31,32,31,30,30,30,29,30,29,31],1974:[19,31,31,32,30,31,31,30,29,30,29,30,30],1975:[18,31,31,32,32,30,31,30,29,30,29,30,30],1976:[17,31,32,31,32,31,30,30,30,29,29,30,31],1977:[18,31,32,31,32,31,31,29,30,29,30,29,31],1978:[18,31,31,32,31,31,31,30,29,30,29,30,30],1979:[18,31,31,32,32,31,30,30,29,30,29,30,30],1980:[17,31,32,31,32,31,30,30,30,29,29,30,31],1981:[18,31,31,31,32,31,31,29,30,30,29,30,30],1982:[18,31,31,32,31,31,31,30,29,30,29,30,30],1983:[18,31,31,32,32,31,30,30,29,30,29,30,30],1984:[17,31,32,31,32,31,30,30,30,29,29,30,31],1985:[18,31,31,31,32,31,31,29,30,30,29,30,30],1986:[18,31,31,32,31,31,31,30,29,30,29,30,30],1987:[18,31,32,31,32,31,30,30,29,30,29,30,30],1988:[17,31,32,31,32,31,30,30,30,29,29,30,31],1989:[18,31,31,31,32,31,31,30,29,30,29,30,30],1990:[18,31,31,32,31,31,31,30,29,30,29,30,30],1991:[18,31,32,31,32,31,30,30,29,30,29,30,30],1992:[17,31,32,31,32,31,30,30,30,29,30,29,31],1993:[18,31,31,31,32,31,31,30,29,30,29,30,30],1994:[18,31,31,32,31,31,31,30,29,30,29,30,30],1995:[17,31,32,31,32,31,30,30,30,29,29,30,30],1996:[17,31,32,31,32,31,30,30,30,29,30,29,31],1997:[18,31,31,32,31,31,31,30,29,30,29,30,30],1998:[18,31,31,32,31,31,31,30,29,30,29,30,30],1999:[17,31,32,31,32,31,30,30,30,29,29,30,31],2e3:[17,30,32,31,32,31,30,30,30,29,30,29,31],2001:[18,31,31,32,31,31,31,30,29,30,29,30,30],2002:[18,31,31,32,32,31,30,30,29,30,29,30,30],2003:[17,31,32,31,32,31,30,30,30,29,29,30,31],2004:[17,30,32,31,32,31,30,30,30,29,30,29,31],2005:[18,31,31,32,31,31,31,30,29,30,29,30,30],2006:[18,31,31,32,32,31,30,30,29,30,29,30,30],2007:[17,31,32,31,32,31,30,30,30,29,29,30,31],2008:[17,31,31,31,32,31,31,29,30,30,29,29,31],2009:[18,31,31,32,31,31,31,30,29,30,29,30,30],2010:[18,31,31,32,32,31,30,30,29,30,29,30,30],2011:[17,31,32,31,32,31,30,30,30,29,29,30,31],2012:[17,31,31,31,32,31,31,29,30,30,29,30,30],2013:[18,31,31,32,31,31,31,30,29,30,29,30,30],2014:[18,31,31,32,32,31,30,30,29,30,29,30,30],2015:[17,31,32,31,32,31,30,30,30,29,29,30,31],2016:[17,31,31,31,32,31,31,29,30,30,29,30,30],2017:[18,31,31,32,31,31,31,30,29,30,29,30,30],2018:[18,31,32,31,32,31,30,30,29,30,29,30,30],2019:[17,31,32,31,32,31,30,30,30,29,30,29,31],2020:[17,31,31,31,32,31,31,30,29,30,29,30,30],2021:[18,31,31,32,31,31,31,30,29,30,29,30,30],2022:[17,31,32,31,32,31,30,30,30,29,29,30,30],2023:[17,31,32,31,32,31,30,30,30,29,30,29,31],2024:[17,31,31,31,32,31,31,30,29,30,29,30,30],2025:[18,31,31,32,31,31,31,30,29,30,29,30,30],2026:[17,31,32,31,32,31,30,30,30,29,29,30,31],2027:[17,30,32,31,32,31,30,30,30,29,30,29,31],2028:[17,31,31,32,31,31,31,30,29,30,29,30,30],2029:[18,31,31,32,31,32,30,30,29,30,29,30,30],2030:[17,31,32,31,32,31,30,30,30,30,30,30,31],2031:[17,31,32,31,32,31,31,31,31,31,31,31,31],2032:[17,32,32,32,32,32,32,32,32,32,32,32,32],2033:[18,31,31,32,32,31,30,30,29,30,29,30,30],2034:[17,31,32,31,32,31,30,30,30,29,29,30,31],2035:[17,30,32,31,32,31,31,29,30,30,29,29,31],2036:[17,31,31,32,31,31,31,30,29,30,29,30,30],2037:[18,31,31,32,32,31,30,30,29,30,29,30,30],2038:[17,31,32,31,32,31,30,30,30,29,29,30,31],2039:[17,31,31,31,32,31,31,29,30,30,29,30,30],2040:[17,31,31,32,31,31,31,30,29,30,29,30,30],2041:[18,31,31,32,32,31,30,30,29,30,29,30,30],2042:[17,31,32,31,32,31,30,30,30,29,29,30,31],2043:[17,31,31,31,32,31,31,29,30,30,29,30,30],2044:[17,31,31,32,31,31,31,30,29,30,29,30,30],2045:[18,31,32,31,32,31,30,30,29,30,29,30,30],2046:[17,31,32,31,32,31,30,30,30,29,29,30,31],2047:[17,31,31,31,32,31,31,30,29,30,29,30,30],2048:[17,31,31,32,31,31,31,30,29,30,29,30,30],2049:[17,31,32,31,32,31,30,30,30,29,29,30,30],2050:[17,31,32,31,32,31,30,30,30,29,30,29,31],2051:[17,31,31,31,32,31,31,30,29,30,29,30,30],2052:[17,31,31,32,31,31,31,30,29,30,29,30,30],2053:[17,31,32,31,32,31,30,30,30,29,29,30,30],2054:[17,31,32,31,32,31,30,30,30,29,30,29,31],2055:[17,31,31,32,31,31,31,30,29,30,30,29,30],2056:[17,31,31,32,31,32,30,30,29,30,29,30,30],2057:[17,31,32,31,32,31,30,30,30,29,29,30,31],2058:[17,30,32,31,32,31,30,30,30,29,30,29,31],2059:[17,31,31,32,31,31,31,30,29,30,29,30,30],2060:[17,31,31,32,32,31,30,30,29,30,29,30,30],2061:[17,31,32,31,32,31,30,30,30,29,29,30,31],2062:[17,30,32,31,32,31,31,29,30,29,30,29,31],2063:[17,31,31,32,31,31,31,30,29,30,29,30,30],2064:[17,31,31,32,32,31,30,30,29,30,29,30,30],2065:[17,31,32,31,32,31,30,30,30,29,29,30,31],2066:[17,31,31,31,32,31,31,29,30,30,29,29,31],2067:[17,31,31,32,31,31,31,30,29,30,29,30,30],2068:[17,31,31,32,32,31,30,30,29,30,29,30,30],2069:[17,31,32,31,32,31,30,30,30,29,29,30,31],2070:[17,31,31,31,32,31,31,29,30,30,29,30,30],2071:[17,31,31,32,31,31,31,30,29,30,29,30,30],2072:[17,31,32,31,32,31,30,30,29,30,29,30,30],2073:[17,31,32,31,32,31,30,30,30,29,29,30,31],2074:[17,31,31,31,32,31,31,30,29,30,29,30,30],2075:[17,31,31,32,31,31,31,30,29,30,29,30,30],2076:[16,31,32,31,32,31,30,30,30,29,29,30,30],2077:[17,31,32,31,32,31,30,30,30,29,30,29,31],2078:[17,31,31,31,32,31,31,30,29,30,29,30,30],2079:[17,31,31,32,31,31,31,30,29,30,29,30,30],2080:[16,31,32,31,32,31,30,30,30,29,29,30,30],2081:[17,31,31,32,32,31,30,30,30,29,30,30,30],2082:[17,31,32,31,32,31,30,30,30,29,30,30,30],2083:[17,31,31,32,31,31,30,30,30,29,30,30,30],2084:[17,31,31,32,31,31,30,30,30,29,30,30,30],2085:[17,31,32,31,32,31,31,30,30,29,30,30,30],2086:[17,31,32,31,32,31,30,30,30,29,30,30,30],2087:[16,31,31,32,31,31,31,30,30,29,30,30,30],2088:[16,30,31,32,32,30,31,30,30,29,30,30,30],2089:[17,31,32,31,32,31,30,30,30,29,30,30,30],2090:[17,31,32,31,32,31,30,30,30,29,30,30,30],2091:[16,31,31,32,31,31,31,30,30,29,30,30,30],2092:[16,31,31,32,32,31,30,30,30,29,30,30,30],2093:[17,31,32,31,32,31,30,30,30,29,30,30,30],2094:[17,31,31,32,31,31,30,30,30,29,30,30,30],2095:[17,31,31,32,31,31,31,30,29,30,30,30,30],2096:[17,30,31,32,32,31,30,30,29,30,29,30,30],2097:[17,31,32,31,32,31,30,30,30,29,30,30,30],2098:[17,31,31,32,31,31,31,29,30,29,30,30,31],2099:[17,31,31,32,31,31,31,30,29,29,30,30,30],2100:[17,31,32,31,32,30,31,30,29,30,29,30,30]}}),n.calendars.nepali=i},{"../main":573,"object-assign":452}],569:[function(t,e,r){var n=t("../main"),a=t("object-assign");function i(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}function o(t,e){return t-e*Math.floor(t/e)}i.prototype=new n.baseCalendar,a(i.prototype,{name:"Persian",jdEpoch:1948320.5,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","Day","Bahman","Esfand"],monthNamesShort:["Far","Ord","Kho","Tir","Mor","Sha","Meh","Aba","Aza","Day","Bah","Esf"],dayNames:["Yekshambe","Doshambe","Seshambe","Ch\xe6harshambe","Panjshambe","Jom'e","Shambe"],dayNamesShort:["Yek","Do","Se","Ch\xe6","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);return 682*((e.year()-(e.year()>0?474:473))%2820+474+38)%2816<682},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-(n.dayOfWeek()+1)%7,"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(12===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return 5!==this.dayOfWeek(t,e,r)},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);t=a.year(),e=a.month(),r=a.day();var i=t-(t>=0?474:473),s=474+o(i,2820);return r+(e<=7?31*(e-1):30*(e-1)+6)+Math.floor((682*s-110)/2816)+365*(s-1)+1029983*Math.floor(i/2820)+this.jdEpoch-1},fromJD:function(t){var e=(t=Math.floor(t)+.5)-this.toJD(475,1,1),r=Math.floor(e/1029983),n=o(e,1029983),a=2820;if(1029982!==n){var i=Math.floor(n/366),s=o(n,366);a=Math.floor((2134*i+2816*s+2815)/1028522)+i+1}var l=a+2820*r+474;l=l<=0?l-1:l;var c=t-this.toJD(l,1,1)+1,u=c<=186?Math.ceil(c/31):Math.ceil((c-6)/30),h=t-this.toJD(l,u,1)+1;return this.newDate(l,u,h)}}),n.calendars.persian=i,n.calendars.jalali=i},{"../main":573,"object-assign":452}],570:[function(t,e,r){var n=t("../main"),a=t("object-assign"),i=n.instance();function o(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}o.prototype=new n.baseCalendar,a(o.prototype,{name:"Taiwan",jdEpoch:2419402.5,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 e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);t=this._t2gYear(e.year());return i.leapYear(t)},weekOfYear:function(t,e,r){var a=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);t=this._t2gYear(a.year());return i.weekOfYear(t,a.month(),a.day())},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(2===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);t=this._t2gYear(a.year());return i.toJD(t,a.month(),a.day())},fromJD:function(t){var e=i.fromJD(t),r=this._g2tYear(e.year());return this.newDate(r,e.month(),e.day())},_t2gYear:function(t){return t+this.yearsOffset+(t>=-this.yearsOffset&&t<=-1?1:0)},_g2tYear:function(t){return t-this.yearsOffset-(t>=1&&t<=this.yearsOffset?1:0)}}),n.calendars.taiwan=o},{"../main":573,"object-assign":452}],571:[function(t,e,r){var n=t("../main"),a=t("object-assign"),i=n.instance();function o(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}o.prototype=new n.baseCalendar,a(o.prototype,{name:"Thai",jdEpoch:1523098.5,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 e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);t=this._t2gYear(e.year());return i.leapYear(t)},weekOfYear:function(t,e,r){var a=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);t=this._t2gYear(a.year());return i.weekOfYear(t,a.month(),a.day())},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,n.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(2===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate);t=this._t2gYear(a.year());return i.toJD(t,a.month(),a.day())},fromJD:function(t){var e=i.fromJD(t),r=this._g2tYear(e.year());return this.newDate(r,e.month(),e.day())},_t2gYear:function(t){return t-this.yearsOffset-(t>=1&&t<=this.yearsOffset?1:0)},_g2tYear:function(t){return t+this.yearsOffset+(t>=-this.yearsOffset&&t<=-1?1:0)}}),n.calendars.thai=o},{"../main":573,"object-assign":452}],572:[function(t,e,r){var n=t("../main"),a=t("object-assign");function i(t){this.local=this.regionalOptions[t||""]||this.regionalOptions[""]}i.prototype=new n.baseCalendar,a(i.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(t){var e=this._validate(t,this.minMonth,this.minDay,n.local.invalidYear);return 355===this.daysInYear(e.year())},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(t){for(var e=0,r=1;r<=12;r++)e+=this.daysInMonth(t,r);return e},daysInMonth:function(t,e){for(var r=this._validate(t,e,this.minDay,n.local.invalidMonth).toJD()-24e5+.5,a=0,i=0;i<o.length;i++){if(o[i]>r)return o[a]-o[a-1];a++}return 30},weekDay:function(t,e,r){return 5!==this.dayOfWeek(t,e,r)},toJD:function(t,e,r){var a=this._validate(t,e,r,n.local.invalidDate),i=12*(a.year()-1)+a.month()-15292;return a.day()+o[i-1]-1+24e5-.5},fromJD:function(t){for(var e=t-24e5+.5,r=0,n=0;n<o.length&&!(o[n]>e);n++)r++;var a=r+15292,i=Math.floor((a-1)/12),s=i+1,l=a-12*i,c=e-o[r-1]+1;return this.newDate(s,l,c)},isValid:function(t,e,r){var a=n.baseCalendar.prototype.isValid.apply(this,arguments);return a&&(a=(t=null!=t.year?t.year:t)>=1276&&t<=1500),a},_validate:function(t,e,r,a){var i=n.baseCalendar.prototype._validate.apply(this,arguments);if(i.year<1276||i.year>1500)throw a.replace(/\{0\}/,this.local.name);return i}}),n.calendars.ummalqura=i;var o=[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]},{"../main":573,"object-assign":452}],573:[function(t,e,r){var n=t("object-assign");function a(){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={}}function i(t,e,r,n){if(this._calendar=t,this._year=e,this._month=r,this._day=n,0===this._calendar._validateLevel&&!this._calendar.isValid(this._year,this._month,this._day))throw(c.local.invalidDate||c.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function o(t,e){return"000000".substring(0,e-(t=""+t).length)+t}function s(){this.shortYearCutoff="+10"}function l(t){this.local=this.regionalOptions[t]||this.regionalOptions[""]}n(a.prototype,{instance:function(t,e){t=(t||"gregorian").toLowerCase(),e=e||"";var r=this._localCals[t+"-"+e];if(!r&&this.calendars[t]&&(r=new this.calendars[t](e),this._localCals[t+"-"+e]=r),!r)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,t);return r},newDate:function(t,e,r,n,a){return(n=(null!=t&&t.year?t.calendar():"string"==typeof n?this.instance(n,a):n)||this.instance()).newDate(t,e,r)},substituteDigits:function(t){return function(e){return(e+"").replace(/[0-9]/g,(function(e){return t[e]}))}},substituteChineseDigits:function(t,e){return function(r){for(var n="",a=0;r>0;){var i=r%10;n=(0===i?"":t[i]+e[a])+n,a++,r=Math.floor(r/10)}return 0===n.indexOf(t[1]+e[1])&&(n=n.substr(1)),n||t[0]}}}),n(i.prototype,{newDate:function(t,e,r){return this._calendar.newDate(null==t?this:t,e,r)},year:function(t){return 0===arguments.length?this._year:this.set(t,"y")},month:function(t){return 0===arguments.length?this._month:this.set(t,"m")},day:function(t){return 0===arguments.length?this._day:this.set(t,"d")},date:function(t,e,r){if(!this._calendar.isValid(t,e,r))throw(c.local.invalidDate||c.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=t,this._month=e,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(t,e){return this._calendar.add(this,t,e)},set:function(t,e){return this._calendar.set(this,t,e)},compareTo:function(t){if(this._calendar.name!==t._calendar.name)throw(c.local.differentCalendars||c.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,t._calendar.local.name);var e=this._year!==t._year?this._year-t._year:this._month!==t._month?this.monthOfYear()-t.monthOfYear():this._day-t._day;return 0===e?0:e<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(t){return this._calendar.fromJD(t)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(t){return this._calendar.fromJSDate(t)},toString:function(){return(this.year()<0?"-":"")+o(Math.abs(this.year()),4)+"-"+o(this.month(),2)+"-"+o(this.day(),2)}}),n(s.prototype,{_validateLevel:0,newDate:function(t,e,r){return null==t?this.today():(t.year&&(this._validate(t,e,r,c.local.invalidDate||c.regionalOptions[""].invalidDate),r=t.day(),e=t.month(),t=t.year()),new i(this,t,e,r))},today:function(){return this.fromJSDate(new Date)},epoch:function(t){return this._validate(t,this.minMonth,this.minDay,c.local.invalidYear||c.regionalOptions[""].invalidYear).year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,c.local.invalidYear||c.regionalOptions[""].invalidYear);return(e.year()<0?"-":"")+o(Math.abs(e.year()),4)},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,c.local.invalidYear||c.regionalOptions[""].invalidYear),12},monthOfYear:function(t,e){var r=this._validate(t,e,this.minDay,c.local.invalidMonth||c.regionalOptions[""].invalidMonth);return(r.month()+this.monthsInYear(r)-this.firstMonth)%this.monthsInYear(r)+this.minMonth},fromMonthOfYear:function(t,e){var r=(e+this.firstMonth-2*this.minMonth)%this.monthsInYear(t)+this.minMonth;return this._validate(t,r,this.minDay,c.local.invalidMonth||c.regionalOptions[""].invalidMonth),r},daysInYear:function(t){var e=this._validate(t,this.minMonth,this.minDay,c.local.invalidYear||c.regionalOptions[""].invalidYear);return this.leapYear(e)?366:365},dayOfYear:function(t,e,r){var n=this._validate(t,e,r,c.local.invalidDate||c.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(t,e,r){var n=this._validate(t,e,r,c.local.invalidDate||c.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(n))+2)%this.daysInWeek()},extraInfo:function(t,e,r){return this._validate(t,e,r,c.local.invalidDate||c.regionalOptions[""].invalidDate),{}},add:function(t,e,r){return this._validate(t,this.minMonth,this.minDay,c.local.invalidDate||c.regionalOptions[""].invalidDate),this._correctAdd(t,this._add(t,e,r),e,r)},_add:function(t,e,r){if(this._validateLevel++,"d"===r||"w"===r){var n=t.toJD()+e*("w"===r?this.daysInWeek():1),a=t.calendar().fromJD(n);return this._validateLevel--,[a.year(),a.month(),a.day()]}try{var i=t.year()+("y"===r?e:0),o=t.monthOfYear()+("m"===r?e:0);a=t.day();"y"===r?(t.month()!==this.fromMonthOfYear(i,o)&&(o=this.newDate(i,t.month(),this.minDay).monthOfYear()),o=Math.min(o,this.monthsInYear(i)),a=Math.min(a,this.daysInMonth(i,this.fromMonthOfYear(i,o)))):"m"===r&&(!function(t){for(;o<t.minMonth;)i--,o+=t.monthsInYear(i);for(var e=t.monthsInYear(i);o>e-1+t.minMonth;)i++,o-=e,e=t.monthsInYear(i)}(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(t){throw this._validateLevel--,t}},_correctAdd:function(t,e,r,n){if(!(this.hasYearZero||"y"!==n&&"m"!==n||0!==e[0]&&t.year()>0==e[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=r<0?-1:1;e=this._add(t,r*a[0]+i*a[1],a[2])}return t.date(e[0],e[1],e[2])},set:function(t,e,r){this._validate(t,this.minMonth,this.minDay,c.local.invalidDate||c.regionalOptions[""].invalidDate);var n="y"===r?e:t.year(),a="m"===r?e:t.month(),i="d"===r?e:t.day();return"y"!==r&&"m"!==r||(i=Math.min(i,this.daysInMonth(n,a))),t.date(n,a,i)},isValid:function(t,e,r){this._validateLevel++;var n=this.hasYearZero||0!==t;if(n){var a=this.newDate(t,e,this.minDay);n=e>=this.minMonth&&e-this.minMonth<this.monthsInYear(a)&&r>=this.minDay&&r-this.minDay<this.daysInMonth(a)}return this._validateLevel--,n},toJSDate:function(t,e,r){var n=this._validate(t,e,r,c.local.invalidDate||c.regionalOptions[""].invalidDate);return c.instance().fromJD(this.toJD(n)).toJSDate()},fromJSDate:function(t){return this.fromJD(c.instance().fromJSDate(t).toJD())},_validate:function(t,e,r,n){if(t.year){if(0===this._validateLevel&&this.name!==t.calendar().name)throw(c.local.differentCalendars||c.regionalOptions[""].differentCalendars).replace(/\{0\}/,this.local.name).replace(/\{1\}/,t.calendar().local.name);return t}try{if(this._validateLevel++,1===this._validateLevel&&!this.isValid(t,e,r))throw n.replace(/\{0\}/,this.local.name);var a=this.newDate(t,e,r);return this._validateLevel--,a}catch(t){throw this._validateLevel--,t}}}),l.prototype=new s,n(l.prototype,{name:"Gregorian",jdEpoch:1721425.5,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Gregorian",epochs:["BCE","CE"],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 e=this._validate(t,this.minMonth,this.minDay,c.local.invalidYear||c.regionalOptions[""].invalidYear);return(t=e.year()+(e.year()<0?1:0))%4==0&&(t%100!=0||t%400==0)},weekOfYear:function(t,e,r){var n=this.newDate(t,e,r);return n.add(4-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(t,e){var r=this._validate(t,e,this.minDay,c.local.invalidMonth||c.regionalOptions[""].invalidMonth);return this.daysPerMonth[r.month()-1]+(2===r.month()&&this.leapYear(r.year())?1:0)},weekDay:function(t,e,r){return(this.dayOfWeek(t,e,r)||7)<6},toJD:function(t,e,r){var n=this._validate(t,e,r,c.local.invalidDate||c.regionalOptions[""].invalidDate);t=n.year(),e=n.month(),r=n.day(),t<0&&t++,e<3&&(e+=12,t--);var a=Math.floor(t/100),i=2-a+Math.floor(a/4);return Math.floor(365.25*(t+4716))+Math.floor(30.6001*(e+1))+r+i-1524.5},fromJD:function(t){var e=Math.floor(t+.5),r=Math.floor((e-1867216.25)/36524.25),n=(r=e+1+r-Math.floor(r/4))+1524,a=Math.floor((n-122.1)/365.25),i=Math.floor(365.25*a),o=Math.floor((n-i)/30.6001),s=n-i-Math.floor(30.6001*o),l=o-(o>13.5?13:1),c=a-(l>2.5?4716:4715);return c<=0&&c--,this.newDate(c,l,s)},toJSDate:function(t,e,r){var n=this._validate(t,e,r,c.local.invalidDate||c.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(t){return this.newDate(t.getFullYear(),t.getMonth()+1,t.getDate())}});var c=e.exports=new a;c.cdate=i,c.baseCalendar=s,c.calendars.gregorian=l},{"object-assign":452}],574:[function(t,e,r){var n=t("object-assign"),a=t("./main");n(a.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"}),a.local=a.regionalOptions[""],n(a.cdate.prototype,{formatDate:function(t,e){return"string"!=typeof t&&(e=t,t=""),this._calendar.formatDate(t||"",this,e)}}),n(a.baseCalendar.prototype,{UNIX_EPOCH:a.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:86400,TICKS_EPOCH:a.instance().jdEpoch,TICKS_PER_DAY:864e9,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(t,e,r){if("string"!=typeof t&&(r=e,e=t,t=""),!e)return"";if(e.calendar()!==this)throw a.local.invalidFormat||a.regionalOptions[""].invalidFormat;t=t||this.local.dateFormat;for(var n,i,o,s,l=(r=r||{}).dayNamesShort||this.local.dayNamesShort,c=r.dayNames||this.local.dayNames,u=r.monthNumbers||this.local.monthNumbers,h=r.monthNamesShort||this.local.monthNamesShort,f=r.monthNames||this.local.monthNames,p=(r.calculateWeek||this.local.calculateWeek,function(e,r){for(var n=1;w+n<t.length&&t.charAt(w+n)===e;)n++;return w+=n-1,Math.floor(n/(r||1))>1}),d=function(t,e,r,n){var a=""+e;if(p(t,n))for(;a.length<r;)a="0"+a;return a},g=this,m=function(t){return"function"==typeof u?u.call(g,t,p("m")):x(d("m",t.month(),2))},v=function(t,e){return e?"function"==typeof f?f.call(g,t):f[t.month()-g.minMonth]:"function"==typeof h?h.call(g,t):h[t.month()-g.minMonth]},y=this.local.digits,x=function(t){return r.localNumbers&&y?y(t):t},b="",_=!1,w=0;w<t.length;w++)if(_)"'"!==t.charAt(w)||p("'")?b+=t.charAt(w):_=!1;else switch(t.charAt(w)){case"d":b+=x(d("d",e.day(),2));break;case"D":b+=(n="D",i=e.dayOfWeek(),o=l,s=c,p(n)?s[i]:o[i]);break;case"o":b+=d("o",e.dayOfYear(),3);break;case"w":b+=d("w",e.weekOfYear(),2);break;case"m":b+=m(e);break;case"M":b+=v(e,p("M"));break;case"y":b+=p("y",2)?e.year():(e.year()%100<10?"0":"")+e.year()%100;break;case"Y":p("Y",2),b+=e.formatYear();break;case"J":b+=e.toJD();break;case"@":b+=(e.toJD()-this.UNIX_EPOCH)*this.SECS_PER_DAY;break;case"!":b+=(e.toJD()-this.TICKS_EPOCH)*this.TICKS_PER_DAY;break;case"'":p("'")?b+="'":_=!0;break;default:b+=t.charAt(w)}return b},parseDate:function(t,e,r){if(null==e)throw a.local.invalidArguments||a.regionalOptions[""].invalidArguments;if(""===(e="object"==typeof e?e.toString():e+""))return null;t=t||this.local.dateFormat;var n=(r=r||{}).shortYearCutoff||this.shortYearCutoff;n="string"!=typeof n?n:this.today().year()%100+parseInt(n,10);for(var i=r.dayNamesShort||this.local.dayNamesShort,o=r.dayNames||this.local.dayNames,s=r.parseMonth||this.local.parseMonth,l=r.monthNumbers||this.local.monthNumbers,c=r.monthNamesShort||this.local.monthNamesShort,u=r.monthNames||this.local.monthNames,h=-1,f=-1,p=-1,d=-1,g=-1,m=!1,v=!1,y=function(e,r){for(var n=1;M+n<t.length&&t.charAt(M+n)===e;)n++;return M+=n-1,Math.floor(n/(r||1))>1},x=function(t,r){var n=y(t,r),i=[2,3,n?4:2,n?4:2,10,11,20]["oyYJ@!".indexOf(t)+1],o=new RegExp("^-?\\d{1,"+i+"}"),s=e.substring(A).match(o);if(!s)throw(a.local.missingNumberAt||a.regionalOptions[""].missingNumberAt).replace(/\{0\}/,A);return A+=s[0].length,parseInt(s[0],10)},b=this,_=function(){if("function"==typeof l){y("m");var t=l.call(b,e.substring(A));return A+=t.length,t}return x("m")},w=function(t,r,n,i){for(var o=y(t,i)?n:r,s=0;s<o.length;s++)if(e.substr(A,o[s].length).toLowerCase()===o[s].toLowerCase())return A+=o[s].length,s+b.minMonth;throw(a.local.unknownNameAt||a.regionalOptions[""].unknownNameAt).replace(/\{0\}/,A)},T=function(){if("function"==typeof u){var t=y("M")?u.call(b,e.substring(A)):c.call(b,e.substring(A));return A+=t.length,t}return w("M",c,u)},k=function(){if(e.charAt(A)!==t.charAt(M))throw(a.local.unexpectedLiteralAt||a.regionalOptions[""].unexpectedLiteralAt).replace(/\{0\}/,A);A++},A=0,M=0;M<t.length;M++)if(v)"'"!==t.charAt(M)||y("'")?k():v=!1;else switch(t.charAt(M)){case"d":d=x("d");break;case"D":w("D",i,o);break;case"o":g=x("o");break;case"w":x("w");break;case"m":p=_();break;case"M":p=T();break;case"y":var S=M;m=!y("y",2),M=S,f=x("y",2);break;case"Y":f=x("Y",2);break;case"J":h=x("J")+.5,"."===e.charAt(A)&&(A++,x("J"));break;case"@":h=x("@")/this.SECS_PER_DAY+this.UNIX_EPOCH;break;case"!":h=x("!")/this.TICKS_PER_DAY+this.TICKS_EPOCH;break;case"*":A=e.length;break;case"'":y("'")?k():v=!0;break;default:k()}if(A<e.length)throw a.local.unexpectedText||a.regionalOptions[""].unexpectedText;if(-1===f?f=this.today().year():f<100&&m&&(f+=-1===n?1900:this.today().year()-this.today().year()%100-(f<=n?0:100)),"string"==typeof p&&(p=s.call(this,f,p)),g>-1){p=1,d=g;for(var E=this.daysInMonth(f,p);d>E;E=this.daysInMonth(f,p))p++,d-=E}return h>-1?this.fromJD(h):this.newDate(f,p,d)},determineDate:function(t,e,r,n,a){r&&"object"!=typeof r&&(a=n,n=r,r=null),"string"!=typeof n&&(a=n,n="");var i=this;return e=e?e.newDate():null,t=null==t?e:"string"==typeof t?function(t){try{return i.parseDate(n,t,a)}catch(t){}for(var e=((t=t.toLowerCase()).match(/^c/)&&r?r.newDate():null)||i.today(),o=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,s=o.exec(t);s;)e.add(parseInt(s[1],10),s[2]||"d"),s=o.exec(t);return e}(t):"number"==typeof t?isNaN(t)||t===1/0||t===-1/0?e:i.today().add(t,"d"):i.newDate(t)}})},{"./main":573,"object-assign":452}],575:[function(t,e,r){e.exports=t("cwise-compiler")({args:["array",{offset:[1],array:0},"scalar","scalar","index"],pre:{body:"{}",args:[],thisVars:[],localVars:[]},post:{body:"{}",args:[],thisVars:[],localVars:[]},body:{body:"{\n var _inline_1_da = _inline_1_arg0_ - _inline_1_arg3_\n var _inline_1_db = _inline_1_arg1_ - _inline_1_arg3_\n if((_inline_1_da >= 0) !== (_inline_1_db >= 0)) {\n _inline_1_arg2_.push(_inline_1_arg4_[0] + 0.5 + 0.5 * (_inline_1_da + _inline_1_db) / (_inline_1_da - _inline_1_db))\n }\n }",args:[{name:"_inline_1_arg0_",lvalue:!1,rvalue:!0,count:1},{name:"_inline_1_arg1_",lvalue:!1,rvalue:!0,count:1},{name:"_inline_1_arg2_",lvalue:!1,rvalue:!0,count:1},{name:"_inline_1_arg3_",lvalue:!1,rvalue:!0,count:2},{name:"_inline_1_arg4_",lvalue:!1,rvalue:!0,count:1}],thisVars:[],localVars:["_inline_1_da","_inline_1_db"]},funcName:"zeroCrossings"})},{"cwise-compiler":148}],576:[function(t,e,r){"use strict";e.exports=function(t,e){var r=[];return e=+e||0,n(t.hi(t.shape[0]-1),r,e),r};var n=t("./lib/zc-core")},{"./lib/zc-core":575}],577:[function(t,e,r){"use strict";e.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}]},{}],578:[function(t,e,r){"use strict";var n=t("./arrow_paths"),a=t("../../plots/font_attributes"),i=t("../../plots/cartesian/constants"),o=t("../../plot_api/plot_template").templatedArray;e.exports=o("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:a({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:n.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:n.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",i.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",i.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",i.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",i.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:a({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc",_deprecated:{ref:{valType:"string",editType:"calc"}}})},{"../../plot_api/plot_template":766,"../../plots/cartesian/constants":782,"../../plots/font_attributes":804,"./arrow_paths":577}],579:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../plots/cartesian/axes"),i=t("./draw").draw;function o(t){var e=t._fullLayout;n.filterVisible(e.annotations).forEach((function(e){var r=a.getFromId(t,e.xref),n=a.getFromId(t,e.yref);e._extremes={},r&&s(e,r),n&&s(e,n)}))}function s(t,e){var r,n=e._id,i=n.charAt(0),o=t[i],s=t["a"+i],l=t[i+"ref"],c=t["a"+i+"ref"],u=t["_"+i+"padplus"],h=t["_"+i+"padminus"],f={x:1,y:-1}[i]*t[i+"shift"],p=3*t.arrowsize*t.arrowwidth||0,d=p+f,g=p-f,m=3*t.startarrowsize*t.arrowwidth||0,v=m+f,y=m-f;if(c===l){var x=a.findExtremes(e,[e.r2c(o)],{ppadplus:d,ppadminus:g}),b=a.findExtremes(e,[e.r2c(s)],{ppadplus:Math.max(u,v),ppadminus:Math.max(h,y)});r={min:[x.min[0],b.min[0]],max:[x.max[0],b.max[0]]}}else v=s?v+s:v,y=s?y-s:y,r=a.findExtremes(e,[e.r2c(o)],{ppadplus:Math.max(u,d,v),ppadminus:Math.max(h,g,y)});t._extremes[n]=r}e.exports=function(t){var e=t._fullLayout;if(n.filterVisible(e.annotations).length&&t._fullData.length)return n.syncOrAsync([i,o],t)}},{"../../lib":728,"../../plots/cartesian/axes":776,"./draw":584}],580:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../registry"),i=t("../../plot_api/plot_template").arrayEditor;function o(t,e){var r,n,a,i,o,l,c,u=t._fullLayout.annotations,h=[],f=[],p=[],d=(e||[]).length;for(r=0;r<u.length;r++)if(i=(a=u[r]).clicktoshow){for(n=0;n<d;n++)if(l=(o=e[n]).xaxis,c=o.yaxis,l._id===a.xref&&c._id===a.yref&&l.d2r(o.x)===s(a._xclick,l)&&c.d2r(o.y)===s(a._yclick,c)){(a.visible?"onout"===i?f:p:h).push(r);break}n===d&&a.visible&&"onout"===i&&f.push(r)}return{on:h,off:f,explicitOff:p}}function s(t,e){return"log"===e.type?e.l2r(t):e.d2r(t)}e.exports={hasClickToShow:function(t,e){var r=o(t,e);return r.on.length>0||r.explicitOff.length>0},onClick:function(t,e){var r,s,l=o(t,e),c=l.on,u=l.off.concat(l.explicitOff),h={},f=t._fullLayout.annotations;if(!c.length&&!u.length)return;for(r=0;r<c.length;r++)(s=i(t.layout,"annotations",f[c[r]])).modifyItem("visible",!0),n.extendFlat(h,s.getUpdateObj());for(r=0;r<u.length;r++)(s=i(t.layout,"annotations",f[u[r]])).modifyItem("visible",!1),n.extendFlat(h,s.getUpdateObj());return a.call("update",t,{},h)}}},{"../../lib":728,"../../plot_api/plot_template":766,"../../registry":859}],581:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../color");e.exports=function(t,e,r,i){i("opacity");var o=i("bgcolor"),s=i("bordercolor"),l=a.opacity(s);i("borderpad");var c=i("borderwidth"),u=i("showarrow");if(i("text",u?" ":r._dfltTitle.annotation),i("textangle"),n.coerceFont(i,"font",r.font),i("width"),i("align"),i("height")&&i("valign"),u){var h,f,p=i("arrowside");-1!==p.indexOf("end")&&(h=i("arrowhead"),f=i("arrowsize")),-1!==p.indexOf("start")&&(i("startarrowhead",h),i("startarrowsize",f)),i("arrowcolor",l?e.bordercolor:a.defaultLine),i("arrowwidth",2*(l&&c||1)),i("standoff"),i("startstandoff")}var d=i("hovertext"),g=r.hoverlabel||{};if(d){var m=i("hoverlabel.bgcolor",g.bgcolor||(a.opacity(o)?a.rgb(o):a.defaultLine)),v=i("hoverlabel.bordercolor",g.bordercolor||a.contrast(m));n.coerceFont(i,"hoverlabel.font",{family:g.font.family,size:g.font.size,color:g.font.color||v})}i("captureevents",!!d)}},{"../../lib":728,"../color":595}],582:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../../lib/to_log_range");e.exports=function(t,e,r,i){e=e||{};var o="log"===r&&"linear"===e.type,s="linear"===r&&"log"===e.type;if(o||s)for(var l,c,u=t._fullLayout.annotations,h=e._id.charAt(0),f=0;f<u.length;f++)l=u[f],c="annotations["+f+"].",l[h+"ref"]===e._id&&p(h),l["a"+h+"ref"]===e._id&&p("a"+h);function p(t){var r=l[t],s=null;s=o?a(r,e.range):Math.pow(10,r),n(s)||(s=null),i(c+t,s)}}},{"../../lib/to_log_range":754,"fast-isnumeric":236}],583:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../plots/cartesian/axes"),i=t("../../plots/array_container_defaults"),o=t("./common_defaults"),s=t("./attributes");function l(t,e,r){function i(r,a){return n.coerce(t,e,s,r,a)}var l=i("visible"),c=i("clicktoshow");if(l||c){o(t,e,r,i);for(var u=e.showarrow,h=["x","y"],f=[-10,-30],p={_fullLayout:r},d=0;d<2;d++){var g=h[d],m=a.coerceRef(t,e,p,g,"","paper");if("paper"!==m)a.getFromId(p,m)._annIndices.push(e._index);if(a.coercePosition(e,p,i,m,g,.5),u){var v="a"+g,y=a.coerceRef(t,e,p,v,"pixel");"pixel"!==y&&y!==m&&(y=e[v]="pixel");var x="pixel"===y?f[d]:.4;a.coercePosition(e,p,i,y,v,x)}i(g+"anchor"),i(g+"shift")}if(n.noneOrAll(t,e,["x","y"]),u&&n.noneOrAll(t,e,["ax","ay"]),c){var b=i("xclick"),_=i("yclick");e._xclick=void 0===b?e.x:a.cleanPosition(b,p,e.xref),e._yclick=void 0===_?e.y:a.cleanPosition(_,p,e.yref)}}}e.exports=function(t,e){i(t,e,{name:"annotations",handleItemDefaults:l})}},{"../../lib":728,"../../plots/array_container_defaults":772,"../../plots/cartesian/axes":776,"./attributes":578,"./common_defaults":581}],584:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../registry"),i=t("../../plots/plots"),o=t("../../lib"),s=t("../../plots/cartesian/axes"),l=t("../color"),c=t("../drawing"),u=t("../fx"),h=t("../../lib/svg_text_utils"),f=t("../../lib/setcursor"),p=t("../dragelement"),d=t("../../plot_api/plot_template").arrayEditor,g=t("./draw_arrow_head");function m(t,e){var r=t._fullLayout.annotations[e]||{},n=s.getFromId(t,r.xref),a=s.getFromId(t,r.yref);n&&n.setScale(),a&&a.setScale(),v(t,r,e,!1,n,a)}function v(t,e,r,i,s,m){var v,y,x=t._fullLayout,b=t._fullLayout._size,_=t._context.edits;i?(v="annotation-"+i,y=i+".annotations"):(v="annotation",y="annotations");var w=d(t.layout,y,e),T=w.modifyBase,k=w.modifyItem,A=w.getUpdateObj;x._infolayer.selectAll("."+v+'[data-index="'+r+'"]').remove();var M="clip"+x._uid+"_ann"+r;if(e._input&&!1!==e.visible){var S={x:{},y:{}},E=+e.textangle||0,C=x._infolayer.append("g").classed(v,!0).attr("data-index",String(r)).style("opacity",e.opacity),L=C.append("g").classed("annotation-text-g",!0),P=_[e.showarrow?"annotationTail":"annotationPosition"],I=e.captureevents||_.annotationText||P,z=L.append("g").style("pointer-events",I?"all":null).call(f,"pointer").on("click",(function(){t._dragging=!1,t.emit("plotly_clickannotation",q(n.event))}));e.hovertext&&z.on("mouseover",(function(){var r=e.hoverlabel,n=r.font,a=this.getBoundingClientRect(),i=t.getBoundingClientRect();u.loneHover({x0:a.left-i.left,x1:a.right-i.left,y:(a.top+a.bottom)/2-i.top,text:e.hovertext,color:r.bgcolor,borderColor:r.bordercolor,fontFamily:n.family,fontSize:n.size,fontColor:n.color},{container:x._hoverlayer.node(),outerContainer:x._paper.node(),gd:t})})).on("mouseout",(function(){u.loneUnhover(x._hoverlayer.node())}));var O=e.borderwidth,D=e.borderpad,R=O+D,F=z.append("rect").attr("class","bg").style("stroke-width",O+"px").call(l.stroke,e.bordercolor).call(l.fill,e.bgcolor),B=e.width||e.height,N=x._topclips.selectAll("#"+M).data(B?[0]:[]);N.enter().append("clipPath").classed("annclip",!0).attr("id",M).append("rect"),N.exit().remove();var j=e.font,V=x._meta?o.templateString(e.text,x._meta):e.text,U=z.append("text").classed("annotation-text",!0).text(V);_.annotationText?U.call(h.makeEditable,{delegate:z,gd:t}).call(H).on("edit",(function(r){e.text=r,this.call(H),k("text",r),s&&s.autorange&&T(s._name+".autorange",!0),m&&m.autorange&&T(m._name+".autorange",!0),a.call("_guiRelayout",t,A())})):U.call(H)}else n.selectAll("#"+M).remove();function q(t){var n={index:r,annotation:e._input,fullAnnotation:e,event:t};return i&&(n.subplotId=i),n}function H(r){return r.call(c.font,j).attr({"text-anchor":{left:"start",right:"end"}[e.align]||"middle"}),h.convertToTspans(r,t,G),r}function G(){var r=U.selectAll("a");1===r.size()&&r.text()===U.text()&&z.insert("a",":first-child").attr({"xlink:xlink:href":r.attr("xlink:href"),"xlink:xlink:show":r.attr("xlink:show")}).style({cursor:"pointer"}).node().appendChild(F.node());var n=z.select(".annotation-text-math-group"),u=!n.empty(),d=c.bBox((u?n:U).node()),v=d.width,y=d.height,w=e.width||v,I=e.height||y,D=Math.round(w+2*R),j=Math.round(I+2*R);function V(t,e){return"auto"===e&&(e=t<1/3?"left":t>2/3?"right":"center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[e]}for(var H=!1,G=["x","y"],Y=0;Y<G.length;Y++){var W,Z,X,J,K,Q=G[Y],$=e[Q+"ref"]||Q,tt=e["a"+Q+"ref"],et={x:s,y:m}[Q],rt=(E+("x"===Q?0:-90))*Math.PI/180,nt=D*Math.cos(rt),at=j*Math.sin(rt),it=Math.abs(nt)+Math.abs(at),ot=e[Q+"anchor"],st=e[Q+"shift"]*("x"===Q?1:-1),lt=S[Q];if(et){var ct=et.r2fraction(e[Q]);(ct<0||ct>1)&&(tt===$?((ct=et.r2fraction(e["a"+Q]))<0||ct>1)&&(H=!0):H=!0),W=et._offset+et.r2p(e[Q]),J=.5}else"x"===Q?(X=e[Q],W=b.l+b.w*X):(X=1-e[Q],W=b.t+b.h*X),J=e.showarrow?.5:X;if(e.showarrow){lt.head=W;var ut=e["a"+Q];K=nt*V(.5,e.xanchor)-at*V(.5,e.yanchor),tt===$?(lt.tail=et._offset+et.r2p(ut),Z=K):(lt.tail=W+ut,Z=K+ut),lt.text=lt.tail+K;var ht=x["x"===Q?"width":"height"];if("paper"===$&&(lt.head=o.constrain(lt.head,1,ht-1)),"pixel"===tt){var ft=-Math.max(lt.tail-3,lt.text),pt=Math.min(lt.tail+3,lt.text)-ht;ft>0?(lt.tail+=ft,lt.text+=ft):pt>0&&(lt.tail-=pt,lt.text-=pt)}lt.tail+=st,lt.head+=st}else Z=K=it*V(J,ot),lt.text=W+K;lt.text+=st,K+=st,Z+=st,e["_"+Q+"padplus"]=it/2+Z,e["_"+Q+"padminus"]=it/2-Z,e["_"+Q+"size"]=it,e["_"+Q+"shift"]=K}if(H)z.remove();else{var dt=0,gt=0;if("left"!==e.align&&(dt=(w-v)*("center"===e.align?.5:1)),"top"!==e.valign&&(gt=(I-y)*("middle"===e.valign?.5:1)),u)n.select("svg").attr({x:R+dt-1,y:R+gt}).call(c.setClipUrl,B?M:null,t);else{var mt=R+gt-d.top,vt=R+dt-d.left;U.call(h.positionText,vt,mt).call(c.setClipUrl,B?M:null,t)}N.select("rect").call(c.setRect,R,R,w,I),F.call(c.setRect,O/2,O/2,D-O,j-O),z.call(c.setTranslate,Math.round(S.x.text-D/2),Math.round(S.y.text-j/2)),L.attr({transform:"rotate("+E+","+S.x.text+","+S.y.text+")"});var yt,xt=function(r,n){C.selectAll(".annotation-arrow-g").remove();var u=S.x.head,h=S.y.head,f=S.x.tail+r,d=S.y.tail+n,v=S.x.text+r,y=S.y.text+n,x=o.rotationXYMatrix(E,v,y),w=o.apply2DTransform(x),M=o.apply2DTransform2(x),P=+F.attr("width"),I=+F.attr("height"),O=v-.5*P,D=O+P,R=y-.5*I,B=R+I,N=[[O,R,O,B],[O,B,D,B],[D,B,D,R],[D,R,O,R]].map(M);if(!N.reduce((function(t,e){return t^!!o.segmentsIntersect(u,h,u+1e6,h+1e6,e[0],e[1],e[2],e[3])}),!1)){N.forEach((function(t){var e=o.segmentsIntersect(f,d,u,h,t[0],t[1],t[2],t[3]);e&&(f=e.x,d=e.y)}));var j=e.arrowwidth,V=e.arrowcolor,U=e.arrowside,q=C.append("g").style({opacity:l.opacity(V)}).classed("annotation-arrow-g",!0),H=q.append("path").attr("d","M"+f+","+d+"L"+u+","+h).style("stroke-width",j+"px").call(l.stroke,l.rgb(V));if(g(H,U,e),_.annotationPosition&&H.node().parentNode&&!i){var G=u,Y=h;if(e.standoff){var W=Math.sqrt(Math.pow(u-f,2)+Math.pow(h-d,2));G+=e.standoff*(f-u)/W,Y+=e.standoff*(d-h)/W}var Z,X,J=q.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(f-G)+","+(d-Y),transform:"translate("+G+","+Y+")"}).style("stroke-width",j+6+"px").call(l.stroke,"rgba(0,0,0,0)").call(l.fill,"rgba(0,0,0,0)");p.init({element:J.node(),gd:t,prepFn:function(){var t=c.getTranslate(z);Z=t.x,X=t.y,s&&s.autorange&&T(s._name+".autorange",!0),m&&m.autorange&&T(m._name+".autorange",!0)},moveFn:function(t,r){var n=w(Z,X),a=n[0]+t,i=n[1]+r;z.call(c.setTranslate,a,i),k("x",s?s.p2r(s.r2p(e.x)+t):e.x+t/b.w),k("y",m?m.p2r(m.r2p(e.y)+r):e.y-r/b.h),e.axref===e.xref&&k("ax",s.p2r(s.r2p(e.ax)+t)),e.ayref===e.yref&&k("ay",m.p2r(m.r2p(e.ay)+r)),q.attr("transform","translate("+t+","+r+")"),L.attr({transform:"rotate("+E+","+a+","+i+")"})},doneFn:function(){a.call("_guiRelayout",t,A());var e=document.querySelector(".js-notes-box-panel");e&&e.redraw(e.selectedObj)}})}}};if(e.showarrow&&xt(0,0),P)p.init({element:z.node(),gd:t,prepFn:function(){yt=L.attr("transform")},moveFn:function(t,r){var n="pointer";if(e.showarrow)e.axref===e.xref?k("ax",s.p2r(s.r2p(e.ax)+t)):k("ax",e.ax+t),e.ayref===e.yref?k("ay",m.p2r(m.r2p(e.ay)+r)):k("ay",e.ay+r),xt(t,r);else{if(i)return;var a,o;if(s)a=s.p2r(s.r2p(e.x)+t);else{var l=e._xsize/b.w,c=e.x+(e._xshift-e.xshift)/b.w-l/2;a=p.align(c+t/b.w,l,0,1,e.xanchor)}if(m)o=m.p2r(m.r2p(e.y)+r);else{var u=e._ysize/b.h,h=e.y-(e._yshift+e.yshift)/b.h-u/2;o=p.align(h-r/b.h,u,0,1,e.yanchor)}k("x",a),k("y",o),s&&m||(n=p.getCursor(s?.5:a,m?.5:o,e.xanchor,e.yanchor))}L.attr({transform:"translate("+t+","+r+")"+yt}),f(z,n)},clickFn:function(r,n){e.captureevents&&t.emit("plotly_clickannotation",q(n))},doneFn:function(){f(z),a.call("_guiRelayout",t,A());var e=document.querySelector(".js-notes-box-panel");e&&e.redraw(e.selectedObj)}})}}}e.exports={draw:function(t){var e=t._fullLayout;e._infolayer.selectAll(".annotation").remove();for(var r=0;r<e.annotations.length;r++)e.annotations[r].visible&&m(t,r);return i.previousPromises(t)},drawOne:m,drawRaw:v}},{"../../lib":728,"../../lib/setcursor":748,"../../lib/svg_text_utils":752,"../../plot_api/plot_template":766,"../../plots/cartesian/axes":776,"../../plots/plots":839,"../../registry":859,"../color":595,"../dragelement":614,"../drawing":617,"../fx":635,"./draw_arrow_head":585,d3:164}],585:[function(t,e,r){"use strict";var n=t("d3"),a=t("../color"),i=t("./arrow_paths");e.exports=function(t,e,r){var o,s,l,c,u=t.node(),h=i[r.arrowhead||0],f=i[r.startarrowhead||0],p=(r.arrowwidth||1)*(r.arrowsize||1),d=(r.arrowwidth||1)*(r.startarrowsize||1),g=e.indexOf("start")>=0,m=e.indexOf("end")>=0,v=h.backoff*p+r.standoff,y=f.backoff*d+r.startstandoff;if("line"===u.nodeName){o={x:+t.attr("x1"),y:+t.attr("y1")},s={x:+t.attr("x2"),y:+t.attr("y2")};var x=o.x-s.x,b=o.y-s.y;if(c=(l=Math.atan2(b,x))+Math.PI,v&&y&&v+y>Math.sqrt(x*x+b*b))return void P();if(v){if(v*v>x*x+b*b)return void P();var _=v*Math.cos(l),w=v*Math.sin(l);s.x+=_,s.y+=w,t.attr({x2:s.x,y2:s.y})}if(y){if(y*y>x*x+b*b)return void P();var T=y*Math.cos(l),k=y*Math.sin(l);o.x-=T,o.y-=k,t.attr({x1:o.x,y1:o.y})}}else if("path"===u.nodeName){var A=u.getTotalLength(),M="";if(A<v+y)return void P();var S=u.getPointAtLength(0),E=u.getPointAtLength(.1);l=Math.atan2(S.y-E.y,S.x-E.x),o=u.getPointAtLength(Math.min(y,A)),M="0px,"+y+"px,";var C=u.getPointAtLength(A),L=u.getPointAtLength(A-.1);c=Math.atan2(C.y-L.y,C.x-L.x),s=u.getPointAtLength(Math.max(0,A-v)),M+=A-(M?y+v:v)+"px,"+A+"px",t.style("stroke-dasharray",M)}function P(){t.style("stroke-dasharray","0px,100px")}function I(e,i,o,s){e.path&&(e.noRotate&&(o=0),n.select(u.parentNode).append("path").attr({class:t.attr("class"),d:e.path,transform:"translate("+i.x+","+i.y+")"+(o?"rotate("+180*o/Math.PI+")":"")+"scale("+s+")"}).style({fill:a.rgb(r.arrowcolor),"stroke-width":0}))}g&&I(f,o,l,d),m&&I(h,s,c,p)}},{"../color":595,"./arrow_paths":577,d3:164}],586:[function(t,e,r){"use strict";var n=t("./draw"),a=t("./click");e.exports={moduleType:"component",name:"annotations",layoutAttributes:t("./attributes"),supplyLayoutDefaults:t("./defaults"),includeBasePlot:t("../../plots/cartesian/include_components")("annotations"),calcAutorange:t("./calc_autorange"),draw:n.draw,drawOne:n.drawOne,drawRaw:n.drawRaw,hasClickToShow:a.hasClickToShow,onClick:a.onClick,convertCoords:t("./convert_coords")}},{"../../plots/cartesian/include_components":788,"./attributes":578,"./calc_autorange":579,"./click":580,"./convert_coords":582,"./defaults":583,"./draw":584}],587:[function(t,e,r){"use strict";var n=t("../annotations/attributes"),a=t("../../plot_api/edit_types").overrideAll,i=t("../../plot_api/plot_template").templatedArray;e.exports=a(i("annotation",{visible:n.visible,x:{valType:"any"},y:{valType:"any"},z:{valType:"any"},ax:{valType:"number"},ay:{valType:"number"},xanchor:n.xanchor,xshift:n.xshift,yanchor:n.yanchor,yshift:n.yshift,text:n.text,textangle:n.textangle,font:n.font,width:n.width,height:n.height,opacity:n.opacity,align:n.align,valign:n.valign,bgcolor:n.bgcolor,bordercolor:n.bordercolor,borderpad:n.borderpad,borderwidth:n.borderwidth,showarrow:n.showarrow,arrowcolor:n.arrowcolor,arrowhead:n.arrowhead,startarrowhead:n.startarrowhead,arrowside:n.arrowside,arrowsize:n.arrowsize,startarrowsize:n.startarrowsize,arrowwidth:n.arrowwidth,standoff:n.standoff,startstandoff:n.startstandoff,hovertext:n.hovertext,hoverlabel:n.hoverlabel,captureevents:n.captureevents}),"calc","from-root")},{"../../plot_api/edit_types":759,"../../plot_api/plot_template":766,"../annotations/attributes":578}],588:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../plots/cartesian/axes");function i(t,e){var r=e.fullSceneLayout.domain,i=e.fullLayout._size,o={pdata:null,type:"linear",autorange:!1,range:[-1/0,1/0]};t._xa={},n.extendFlat(t._xa,o),a.setConvert(t._xa),t._xa._offset=i.l+r.x[0]*i.w,t._xa.l2p=function(){return.5*(1+t._pdata[0]/t._pdata[3])*i.w*(r.x[1]-r.x[0])},t._ya={},n.extendFlat(t._ya,o),a.setConvert(t._ya),t._ya._offset=i.t+(1-r.y[1])*i.h,t._ya.l2p=function(){return.5*(1-t._pdata[1]/t._pdata[3])*i.h*(r.y[1]-r.y[0])}}e.exports=function(t){for(var e=t.fullSceneLayout.annotations,r=0;r<e.length;r++)i(e[r],t);t.fullLayout._infolayer.selectAll(".annotation-"+t.id).remove()}},{"../../lib":728,"../../plots/cartesian/axes":776}],589:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../plots/cartesian/axes"),i=t("../../plots/array_container_defaults"),o=t("../annotations/common_defaults"),s=t("./attributes");function l(t,e,r,i){function l(r,a){return n.coerce(t,e,s,r,a)}function c(t){var n=t+"axis",i={_fullLayout:{}};return i._fullLayout[n]=r[n],a.coercePosition(e,i,l,t,t,.5)}l("visible")&&(o(t,e,i.fullLayout,l),c("x"),c("y"),c("z"),n.noneOrAll(t,e,["x","y","z"]),e.xref="x",e.yref="y",e.zref="z",l("xanchor"),l("yanchor"),l("xshift"),l("yshift"),e.showarrow&&(e.axref="pixel",e.ayref="pixel",l("ax",-10),l("ay",-30),n.noneOrAll(t,e,["ax","ay"])))}e.exports=function(t,e,r){i(t,e,{name:"annotations",handleItemDefaults:l,fullLayout:r.fullLayout})}},{"../../lib":728,"../../plots/array_container_defaults":772,"../../plots/cartesian/axes":776,"../annotations/common_defaults":581,"./attributes":587}],590:[function(t,e,r){"use strict";var n=t("../annotations/draw").drawRaw,a=t("../../plots/gl3d/project"),i=["x","y","z"];e.exports=function(t){for(var e=t.fullSceneLayout,r=t.dataScale,o=e.annotations,s=0;s<o.length;s++){for(var l=o[s],c=!1,u=0;u<3;u++){var h=i[u],f=l[h],p=e[h+"axis"].r2fraction(f);if(p<0||p>1){c=!0;break}}c?t.fullLayout._infolayer.select(".annotation-"+t.id+'[data-index="'+s+'"]').remove():(l._pdata=a(t.glplot.cameraParams,[e.xaxis.r2l(l.x)*r[0],e.yaxis.r2l(l.y)*r[1],e.zaxis.r2l(l.z)*r[2]]),n(t.graphDiv,l,s,t.id,l._xa,l._ya))}}},{"../../plots/gl3d/project":827,"../annotations/draw":584}],591:[function(t,e,r){"use strict";var n=t("../../registry"),a=t("../../lib");e.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:t("./attributes")}}},layoutAttributes:t("./attributes"),handleDefaults:t("./defaults"),includeBasePlot:function(t,e){var r=n.subplotsRegistry.gl3d;if(!r)return;for(var i=r.attrRegex,o=Object.keys(t),s=0;s<o.length;s++){var l=o[s];i.test(l)&&(t[l].annotations||[]).length&&(a.pushUnique(e._basePlotModules,r),a.pushUnique(e._subplots.gl3d,l))}},convert:t("./convert"),draw:t("./draw")}},{"../../lib":728,"../../registry":859,"./attributes":587,"./convert":588,"./defaults":589,"./draw":590}],592:[function(t,e,r){"use strict";e.exports=t("world-calendars/dist/main"),t("world-calendars/dist/plus"),t("world-calendars/dist/calendars/chinese"),t("world-calendars/dist/calendars/coptic"),t("world-calendars/dist/calendars/discworld"),t("world-calendars/dist/calendars/ethiopian"),t("world-calendars/dist/calendars/hebrew"),t("world-calendars/dist/calendars/islamic"),t("world-calendars/dist/calendars/julian"),t("world-calendars/dist/calendars/mayan"),t("world-calendars/dist/calendars/nanakshahi"),t("world-calendars/dist/calendars/nepali"),t("world-calendars/dist/calendars/persian"),t("world-calendars/dist/calendars/taiwan"),t("world-calendars/dist/calendars/thai"),t("world-calendars/dist/calendars/ummalqura")},{"world-calendars/dist/calendars/chinese":559,"world-calendars/dist/calendars/coptic":560,"world-calendars/dist/calendars/discworld":561,"world-calendars/dist/calendars/ethiopian":562,"world-calendars/dist/calendars/hebrew":563,"world-calendars/dist/calendars/islamic":564,"world-calendars/dist/calendars/julian":565,"world-calendars/dist/calendars/mayan":566,"world-calendars/dist/calendars/nanakshahi":567,"world-calendars/dist/calendars/nepali":568,"world-calendars/dist/calendars/persian":569,"world-calendars/dist/calendars/taiwan":570,"world-calendars/dist/calendars/thai":571,"world-calendars/dist/calendars/ummalqura":572,"world-calendars/dist/main":573,"world-calendars/dist/plus":574}],593:[function(t,e,r){"use strict";var n=t("./calendars"),a=t("../../lib"),i=t("../../constants/numerical"),o=i.EPOCHJD,s=i.ONEDAY,l={valType:"enumerated",values:Object.keys(n.calendars),editType:"calc",dflt:"gregorian"},c=function(t,e,r,n){var i={};return i[r]=l,a.coerce(t,e,i,r,n)},u={d:{0:"dd","-":"d"},e:{0:"d","-":"d"},a:{0:"D","-":"D"},A:{0:"DD","-":"DD"},j:{0:"oo","-":"o"},W:{0:"ww","-":"w"},m:{0:"mm","-":"m"},b:{0:"M","-":"M"},B:{0:"MM","-":"MM"},y:{0:"yy","-":"yy"},Y:{0:"yyyy","-":"yyyy"},U:"##",w:"##",c:{0:"D M d %X yyyy","-":"D M d %X yyyy"},x:{0:"mm/dd/yyyy","-":"mm/dd/yyyy"}};var h={};function f(t){var e=h[t];return e||(e=h[t]=n.instance(t))}function p(t){return a.extendFlat({},l,{description:t})}function d(t){return"Sets the calendar system to use with”+t+”date data."}var g={xcalendar:p(d("x"))},m=a.extendFlat({},g,{ycalendar:p(d("y"))}),v=a.extendFlat({},m,{zcalendar:p(d("z"))}),y=p(["Sets the calendar system to use forrangeandtick0","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 globallayout.calendar"].join(" "));e.exports={moduleType:"component",name:"calendars",schema:{traces:{scatter:m,bar:m,box:m,heatmap:m,contour:m,histogram:m,histogram2d:m,histogram2dcontour:m,scatter3d:v,surface:v,mesh3d:v,scattergl:m,ohlc:g,candlestick:g},layout:{calendar:p(["Sets the default calendar system to use for interpreting and","displaying dates throughout the plot."].join(" "))},subplots:{xaxis:{calendar:y},yaxis:{calendar:y},scene:{xaxis:{calendar:y},yaxis:{calendar:y},zaxis:{calendar:y}},polar:{radialaxis:{calendar:y}}},transforms:{filter:{valuecalendar:p(["Sets the calendar system to use forvalue, if it is a date."].join(" ")),targetcalendar:p(["Sets the calendar system to use fortarget, if it is an","array of dates. Iftargetis a string (eg *x*) we use the","corresponding trace attribute (egxcalendar) if it exists,","even iftargetcalendaris provided."].join(" "))}}},layoutAttributes:l,handleDefaults:c,handleTraceDefaults:function(t,e,r,n){for(var a=0;a<r.length;a++)c(t,e,r[a]+"calendar",n.calendar)},CANONICAL_SUNDAY:{chinese:"2000-01-02",coptic:"2000-01-03",discworld:"2000-01-03",ethiopian:"2000-01-05",hebrew:"5000-01-01",islamic:"1000-01-02",julian:"2000-01-03",mayan:"5000-01-01",nanakshahi:"1000-01-05",nepali:"2000-01-05",persian:"1000-01-01",jalali:"1000-01-01",taiwan:"1000-01-04",thai:"2000-01-04",ummalqura:"1400-01-06"},CANONICAL_TICK:{chinese:"2000-01-01",coptic:"2000-01-01",discworld:"2000-01-01",ethiopian:"2000-01-01",hebrew:"5000-01-01",islamic:"1000-01-01",julian:"2000-01-01",mayan:"5000-01-01",nanakshahi:"1000-01-01",nepali:"2000-01-01",persian:"1000-01-01",jalali:"1000-01-01",taiwan:"1000-01-01",thai:"2000-01-01",ummalqura:"1400-01-01"},DFLTRANGE:{chinese:["2000-01-01","2001-01-01"],coptic:["1700-01-01","1701-01-01"],discworld:["1800-01-01","1801-01-01"],ethiopian:["2000-01-01","2001-01-01"],hebrew:["5700-01-01","5701-01-01"],islamic:["1400-01-01","1401-01-01"],julian:["2000-01-01","2001-01-01"],mayan:["5200-01-01","5201-01-01"],nanakshahi:["0500-01-01","0501-01-01"],nepali:["2000-01-01","2001-01-01"],persian:["1400-01-01","1401-01-01"],jalali:["1400-01-01","1401-01-01"],taiwan:["0100-01-01","0101-01-01"],thai:["2500-01-01","2501-01-01"],ummalqura:["1400-01-01","1401-01-01"]},getCal:f,worldCalFmt:function(t,e,r){for(var n,a,i,l,c,h=Math.floor((e+.05)/s)+o,p=f(r).fromJD(h),d=0;-1!==(d=t.indexOf("%",d));)"0"===(n=t.charAt(d+1))||"-"===n||"_"===n?(i=3,a=t.charAt(d+2),"_"===n&&(n="-")):(a=n,n="0",i=2),(l=u[a])?(c="##"===l?"##":p.formatDate(l[n]),t=t.substr(0,d)+c+t.substr(d+i),d+=c.length):d+=i;return t}}},{"../../constants/numerical":704,"../../lib":728,"./calendars":592}],594:[function(t,e,r){"use strict";r.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"],r.defaultLine="#444",r.lightLine="#eee",r.background="#fff",r.borderLine="#BEC8D9",r.lightFraction=1e3/11},{}],595:[function(t,e,r){"use strict";var n=t("tinycolor2"),a=t("fast-isnumeric"),i=e.exports={},o=t("./attributes");i.defaults=o.defaults;var s=i.defaultLine=o.defaultLine;i.lightLine=o.lightLine;var l=i.background=o.background;function c(t){if(a(t)||"string"!=typeof t)return t;var e=t.trim();if("rgb"!==e.substr(0,3))return t;var r=e.match(/^rgba?\s*\(([^()]*)\)$/);if(!r)return t;var n=r[1].trim().split(/\s*[\s,]\s*/),i="a"===e.charAt(3)&&4===n.length;if(!i&&3!==n.length)return t;for(var o=0;o<n.length;o++){if(!n[o].length)return t;if(n[o]=Number(n[o]),!(n[o]>=0))return t;if(3===o)n[o]>1&&(n[o]=1);else if(n[o]>=1)return t}var s=Math.round(255*n[0])+", "+Math.round(255*n[1])+", "+Math.round(255*n[2]);return i?"rgba("+s+", "+n[3]+")":"rgb("+s+")"}i.tinyRGB=function(t){var e=t.toRgb();return"rgb("+Math.round(e.r)+", "+Math.round(e.g)+", "+Math.round(e.b)+")"},i.rgb=function(t){return i.tinyRGB(n(t))},i.opacity=function(t){return t?n(t).getAlpha():0},i.addOpacity=function(t,e){var r=n(t).toRgb();return"rgba("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+", "+e+")"},i.combine=function(t,e){var r=n(t).toRgb();if(1===r.a)return n(t).toRgbString();var a=n(e||l).toRgb(),i=1===a.a?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},o={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 n(o).toRgbString()},i.contrast=function(t,e,r){var a=n(t);return 1!==a.getAlpha()&&(a=n(i.combine(t,l))),(a.isDark()?e?a.lighten(e):l:r?a.darken(r):s).toString()},i.stroke=function(t,e){var r=n(e);t.style({stroke:i.tinyRGB(r),"stroke-opacity":r.getAlpha()})},i.fill=function(t,e){var r=n(e);t.style({fill:i.tinyRGB(r),"fill-opacity":r.getAlpha()})},i.clean=function(t){if(t&&"object"==typeof t){var e,r,n,a,o=Object.keys(t);for(e=0;e<o.length;e++)if(a=t[n=o[e]],"color"===n.substr(n.length-5))if(Array.isArray(a))for(r=0;r<a.length;r++)a[r]=c(a[r]);else t[n]=c(a);else if("colorscale"===n.substr(n.length-10)&&Array.isArray(a))for(r=0;r<a.length;r++)Array.isArray(a[r])&&(a[r][1]=c(a[r][1]));else if(Array.isArray(a)){var s=a[0];if(!Array.isArray(s)&&s&&"object"==typeof s)for(r=0;r<a.length;r++)i.clean(a[r])}else a&&"object"==typeof a&&i.clean(a)}}},{"./attributes":594,"fast-isnumeric":236,tinycolor2:528}],596:[function(t,e,r){"use strict";var n=t("../../plots/cartesian/layout_attributes"),a=t("../../plots/font_attributes"),i=t("../../lib/extend").extendFlat,o=t("../../plot_api/edit_types").overrideAll;e.exports=o({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",dflt:1.02,min:-2,max:3},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left"},xpad:{valType:"number",min:0,dflt:10},y:{valType:"number",dflt:.5,min:-2,max:3},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle"},ypad:{valType:"number",min:0,dflt:10},outlinecolor:n.linecolor,outlinewidth:n.linewidth,bordercolor:n.linecolor,borderwidth:{valType:"number",min:0,dflt:0},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},tickmode:n.tickmode,nticks:n.nticks,tick0:n.tick0,dtick:n.dtick,tickvals:n.tickvals,ticktext:n.ticktext,ticks:i({},n.ticks,{dflt:""}),ticklen:n.ticklen,tickwidth:n.tickwidth,tickcolor:n.tickcolor,showticklabels:n.showticklabels,tickfont:a({}),tickangle:n.tickangle,tickformat:n.tickformat,tickformatstops:n.tickformatstops,tickprefix:n.tickprefix,showtickprefix:n.showtickprefix,ticksuffix:n.ticksuffix,showticksuffix:n.showticksuffix,separatethousands:n.separatethousands,exponentformat:n.exponentformat,showexponent:n.showexponent,title:{text:{valType:"string"},font:a({}),side:{valType:"enumerated",values:["right","top","bottom"],dflt:"top"}},_deprecated:{title:{valType:"string"},titlefont:a({}),titleside:{valType:"enumerated",values:["right","top","bottom"],dflt:"top"}}},"colorbars","from-root")},{"../../lib/extend":719,"../../plot_api/edit_types":759,"../../plots/cartesian/layout_attributes":790,"../../plots/font_attributes":804}],597:[function(t,e,r){"use strict";e.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"}}},{}],598:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../plot_api/plot_template"),i=t("../../plots/cartesian/tick_value_defaults"),o=t("../../plots/cartesian/tick_mark_defaults"),s=t("../../plots/cartesian/tick_label_defaults"),l=t("./attributes");e.exports=function(t,e,r){var c=a.newContainer(e,"colorbar"),u=t.colorbar||{};function h(t,e){return n.coerce(u,c,l,t,e)}var f=h("thicknessmode");h("thickness","fraction"===f?30/(r.width-r.margin.l-r.margin.r):30);var p=h("lenmode");h("len","fraction"===p?1:r.height-r.margin.t-r.margin.b),h("x"),h("xanchor"),h("xpad"),h("y"),h("yanchor"),h("ypad"),n.noneOrAll(u,c,["x","y"]),h("outlinecolor"),h("outlinewidth"),h("bordercolor"),h("borderwidth"),h("bgcolor"),i(u,c,h,"linear");var d={outerTicks:!1,font:r.font};s(u,c,h,"linear",d),o(u,c,h,"linear",d),h("title.text",r._dfltTitle.colorbar),n.coerceFont(h,"title.font",r.font),h("title.side")}},{"../../lib":728,"../../plot_api/plot_template":766,"../../plots/cartesian/tick_label_defaults":797,"../../plots/cartesian/tick_mark_defaults":798,"../../plots/cartesian/tick_value_defaults":799,"./attributes":596}],599:[function(t,e,r){"use strict";var n=t("d3"),a=t("tinycolor2"),i=t("../../plots/plots"),o=t("../../registry"),s=t("../../plots/cartesian/axes"),l=t("../dragelement"),c=t("../../lib"),u=t("../../lib/extend").extendFlat,h=t("../../lib/setcursor"),f=t("../drawing"),p=t("../color"),d=t("../titles"),g=t("../../lib/svg_text_utils"),m=t("../colorscale/helpers").flipScale,v=t("../../plots/cartesian/axis_defaults"),y=t("../../plots/cartesian/position_defaults"),x=t("../../plots/cartesian/layout_attributes"),b=t("../../constants/alignment"),_=b.LINE_SPACING,w=b.FROM_TL,T=b.FROM_BR,k=t("./constants").cn;e.exports={draw:function(t){var e=t._fullLayout._infolayer.selectAll("g."+k.colorbar).data(function(t){var e,r,n,a,i=t._fullLayout,o=t.calcdata,s=[];function l(t){return u(t,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function c(){"function"==typeof a.calc?a.calc(t,n,e):(e._fillgradient=r.reversescale?m(r.colorscale):r.colorscale,e._zrange=[r[a.min],r[a.max]])}for(var h=0;h<o.length;h++){var f=o[h],p=(n=f[0].trace)._module.colorbar;if(!0===n.visible&&p)for(var d=Array.isArray(p),g=d?p:[p],v=0;v<g.length;v++){var y=(a=g[v]).container;(r=y?n[y]:n)&&r.showscale&&((e=l(r.colorbar))._id="cb"+n.uid+(d&&y?"-"+y:""),e._traceIndex=n.index,e._propPrefix=(y?y+".":"")+"colorbar.",e._meta=n._meta,c(),s.push(e))}}for(var x in i._colorAxes)if((r=i[x]).showscale){var b=i._colorAxes[x];(e=l(r.colorbar))._id="cb"+x,e._propPrefix=x+".colorbar.",e._meta=i._meta,a={min:"cmin",max:"cmax"},"heatmap"!==b[0]&&(n=b[1],a.calc=n._module.colorbar.calc),c(),s.push(e)}return s}(t),(function(t){return t._id}));e.enter().append("g").attr("class",(function(t){return t._id})).classed(k.colorbar,!0),e.each((function(e){var r=n.select(this);c.ensureSingle(r,"rect",k.cbbg),c.ensureSingle(r,"g",k.cbfills),c.ensureSingle(r,"g",k.cblines),c.ensureSingle(r,"g",k.cbaxis,(function(t){t.classed(k.crisp,!0)})),c.ensureSingle(r,"g",k.cbtitleunshift,(function(t){t.append("g").classed(k.cbtitle,!0)})),c.ensureSingle(r,"rect",k.cboutline);var m=function(t,e,r){var o=r._fullLayout,l=o._size,h=e._fillcolor,m=e._line,b=e.title,A=b.side,M=e._zrange||n.extent(("function"==typeof h?h:m.color).domain()),S="function"==typeof m.color?m.color:function(){return m.color},E="function"==typeof h?h:function(){return h},C=e._levels,L=function(t,e,r){var n,a,i=e._levels,o=[],s=[],l=i.end+i.size/100,c=i.size,u=1.001*r[0]-.001*r[1],h=1.001*r[1]-.001*r[0];for(a=0;a<1e5&&(n=i.start+a*c,!(c>0?n>=l:n<=l));a++)n>u&&n<h&&o.push(n);if(e._fillgradient)s=[0];else if("function"==typeof e._fillcolor){var f=e._filllevels;if(f)for(l=f.end+f.size/100,c=f.size,a=0;a<1e5&&(n=f.start+a*c,!(c>0?n>=l:n<=l));a++)n>r[0]&&n<r[1]&&s.push(n);else(s=o.map((function(t){return t-i.size/2}))).push(s[s.length-1]+i.size)}else e._fillcolor&&"string"==typeof e._fillcolor&&(s=[0]);i.size<0&&(o.reverse(),s.reverse());return{line:o,fill:s}}(0,e,M),P=L.fill,I=L.line,z=Math.round(e.thickness*("fraction"===e.thicknessmode?l.w:1)),O=z/l.w,D=Math.round(e.len*("fraction"===e.lenmode?l.h:1)),R=D/l.h,F=e.xpad/l.w,B=(e.borderwidth+e.outlinewidth)/2,N=e.ypad/l.h,j=Math.round(e.x*l.w+e.xpad),V=e.x-O*({middle:.5,right:1}[e.xanchor]||0),U=e.y+R*(({top:-.5,bottom:.5}[e.yanchor]||0)-.5),q=Math.round(l.h*(1-U)),H=q-D;e._lenFrac=R,e._thickFrac=O,e._xLeftFrac=V,e._yBottomFrac=U;var G=e._axis=function(t,e,r){var n=t._fullLayout,a={type:"linear",range:r,tickmode:e.tickmode,nticks:e.nticks,tick0:e.tick0,dtick:e.dtick,tickvals:e.tickvals,ticktext:e.ticktext,ticks:e.ticks,ticklen:e.ticklen,tickwidth:e.tickwidth,tickcolor:e.tickcolor,showticklabels:e.showticklabels,tickfont:e.tickfont,tickangle:e.tickangle,tickformat:e.tickformat,exponentformat:e.exponentformat,separatethousands:e.separatethousands,showexponent:e.showexponent,showtickprefix:e.showtickprefix,tickprefix:e.tickprefix,showticksuffix:e.showticksuffix,ticksuffix:e.ticksuffix,title:e.title,showline:!0,anchor:"free",side:"right",position:1},i={type:"linear",_id:"y"+e._id},o={letter:"y",font:n.font,noHover:!0,noTickson:!0,calendar:n.calendar};function s(t,e){return c.coerce(a,i,x,t,e)}return v(a,i,s,o,n),y(a,i,s,o),i}(r,e,M);G.position=e.x+F+O,-1!==["top","bottom"].indexOf(A)&&(G.title.side=A,G.titlex=e.x+F,G.titley=U+("top"===b.side?R-N:N));if(m.color&&"auto"===e.tickmode){G.tickmode="linear",G.tick0=C.start;var Y=C.size,W=c.constrain((q-H)/50,4,15)+1,Z=(M[1]-M[0])/((e.nticks||W)*Y);if(Z>1){var X=Math.pow(10,Math.floor(Math.log(Z)/Math.LN10));Y*=X*c.roundUp(Z/X,[2,5,10]),(Math.abs(C.start)/C.size+1e-6)%1<2e-6&&(G.tick0=0)}G.dtick=Y}G.domain=[U+N,U+R-N],G.setScale(),t.attr("transform","translate("+Math.round(l.l)+","+Math.round(l.t)+")");var J,K=t.select("."+k.cbtitleunshift).attr("transform","translate(-"+Math.round(l.l)+",-"+Math.round(l.t)+")"),Q=t.select("."+k.cbaxis),$=0;function tt(n,a){var i={propContainer:G,propName:e._propPrefix+"title",traceIndex:e._traceIndex,_meta:e._meta,placeholder:o._dfltTitle.colorbar,containerGroup:t.select("."+k.cbtitle)},s="h"===n.charAt(0)?n.substr(1):"h"+n;t.selectAll("."+s+",."+s+"-math-group").remove(),d.draw(r,n,u(i,a||{}))}return c.syncOrAsync([i.previousPromises,function(){if(-1!==["top","bottom"].indexOf(A)){var t,r=l.l+(e.x+F)*l.w,n=G.title.font.size;t="top"===A?(1-(U+R-N))*l.h+l.t+3+.75*n:(1-(U+N))*l.h+l.t-3-.25*n,tt(G._id+"title",{attributes:{x:r,y:t,"text-anchor":"start"}})}},function(){if(-1!==["top","bottom"].indexOf(A)){var i=t.select("."+k.cbtitle),o=i.select("text"),u=[-e.outlinewidth/2,e.outlinewidth/2],h=i.select(".h"+G._id+"title-math-group").node(),p=15.6;if(o.node()&&(p=parseInt(o.node().style.fontSize,10)*_),h?($=f.bBox(h).height)>p&&(u[1]-=($-p)/2):o.node()&&!o.classed(k.jsPlaceholder)&&($=f.bBox(o.node()).height),$){if($+=5,"top"===A)G.domain[1]-=$/l.h,u[1]*=-1;else{G.domain[0]+=$/l.h;var d=g.lineCount(o);u[1]+=(1-d)*p}i.attr("transform","translate("+u+")"),G.setScale()}}t.selectAll("."+k.cbfills+",."+k.cblines).attr("transform","translate(0,"+Math.round(l.h*(1-G.domain[1]))+")"),Q.attr("transform","translate(0,"+Math.round(-l.t)+")");var v=t.select("."+k.cbfills).selectAll("rect."+k.cbfill).data(P);v.enter().append("rect").classed(k.cbfill,!0).style("stroke","none"),v.exit().remove();var y=M.map(G.c2p).map(Math.round).sort((function(t,e){return t-e}));v.each((function(t,i){var o=[0===i?M[0]:(P[i]+P[i-1])/2,i===P.length-1?M[1]:(P[i]+P[i+1])/2].map(G.c2p).map(Math.round);o[1]=c.constrain(o[1]+(o[1]>o[0])?1:-1,y[0],y[1]);var s=n.select(this).attr({x:j,width:Math.max(z,2),y:n.min(o),height:Math.max(n.max(o)-n.min(o),2)});if(e._fillgradient)f.gradient(s,r,e._id,"vertical",e._fillgradient,"fill");else{var l=E(t).replace("e-","");s.attr("fill",a(l).toHexString())}}));var x=t.select("."+k.cblines).selectAll("path."+k.cbline).data(m.color&&m.width?I:[]);x.enter().append("path").classed(k.cbline,!0),x.exit().remove(),x.each((function(t){n.select(this).attr("d","M"+j+","+(Math.round(G.c2p(t))+m.width/2%1)+"h"+z).call(f.lineGroupStyle,m.width,S(t),m.dash)})),Q.selectAll("g."+G._id+"tick,path").remove();var b=j+z+(e.outlinewidth||0)/2-("outside"===e.ticks?1:0),w=s.calcTicks(G),T=s.makeTransFn(G),C=s.getTickSigns(G)[2];return s.drawTicks(r,G,{vals:"inside"===G.ticks?s.clipEnds(G,w):w,layer:Q,path:s.makeTickPath(G,b,C),transFn:T}),s.drawLabels(r,G,{vals:w,layer:Q,transFn:T,labelFns:s.makeLabelFns(G,b)})},function(){if(-1===["top","bottom"].indexOf(A)){var t=G.title.font.size,e=G._offset+G._length/2,a=l.l+(G.position||0)*l.w+("right"===G.side?10+t*(G.showticklabels?1:.5):-10-t*(G.showticklabels?.5:0));tt("h"+G._id+"title",{avoid:{selection:n.select(r).selectAll("g."+G._id+"tick"),side:A,offsetLeft:l.l,offsetTop:0,maxShift:o.width},attributes:{x:a,y:e,"text-anchor":"middle"},transform:{rotate:"-90",offset:0}})}},i.previousPromises,function(){var n=z+e.outlinewidth/2+f.bBox(Q.node()).width;if((J=K.select("text")).node()&&!J.classed(k.jsPlaceholder)){var a,o=K.select(".h"+G._id+"title-math-group").node();a=o&&-1!==["top","bottom"].indexOf(A)?f.bBox(o).width:f.bBox(K.node()).right-j-l.l,n=Math.max(n,a)}var s=2*e.xpad+n+e.borderwidth+e.outlinewidth/2,c=q-H;t.select("."+k.cbbg).attr({x:j-e.xpad-(e.borderwidth+e.outlinewidth)/2,y:H-B,width:Math.max(s,2),height:Math.max(c+2*B,2)}).call(p.fill,e.bgcolor).call(p.stroke,e.bordercolor).style("stroke-width",e.borderwidth),t.selectAll("."+k.cboutline).attr({x:j,y:H+e.ypad+("top"===A?$:0),width:Math.max(z,2),height:Math.max(c-2*e.ypad-$,2)}).call(p.stroke,e.outlinecolor).style({fill:"none","stroke-width":e.outlinewidth});var u=({center:.5,right:1}[e.xanchor]||0)*s;t.attr("transform","translate("+(l.l-u)+","+l.t+")");var h={},d=w[e.yanchor],g=T[e.yanchor];"pixels"===e.lenmode?(h.y=e.y,h.t=c*d,h.b=c*g):(h.t=h.b=0,h.yt=e.y+e.len*d,h.yb=e.y-e.len*g);var m=w[e.xanchor],v=T[e.xanchor];if("pixels"===e.thicknessmode)h.x=e.x,h.l=s*m,h.r=s*v;else{var y=s-z;h.l=y*m,h.r=y*v,h.xl=e.x-e.thickness*m,h.xr=e.x+e.thickness*v}i.autoMargin(r,e._id,h)}],r)}(r,e,t);m&&m.then&&(t._promises||[]).push(m),t._context.edits.colorbarPosition&&function(t,e,r){var n,a,i,s=r._fullLayout._size;l.init({element:t.node(),gd:r,prepFn:function(){n=t.attr("transform"),h(t)},moveFn:function(r,o){t.attr("transform",n+" translate("+r+","+o+")"),a=l.align(e._xLeftFrac+r/s.w,e._thickFrac,0,1,e.xanchor),i=l.align(e._yBottomFrac-o/s.h,e._lenFrac,0,1,e.yanchor);var c=l.getCursor(a,i,e.xanchor,e.yanchor);h(t,c)},doneFn:function(){if(h(t),void 0!==a&&void 0!==i){var n={};n[e._propPrefix+"x"]=a,n[e._propPrefix+"y"]=i,void 0!==e._traceIndex?o.call("_guiRestyle",r,n,e._traceIndex):o.call("_guiRelayout",r,n)}}})}(r,e,t)})),e.exit().each((function(e){i.autoMargin(t,e._id)})).remove(),e.order()}}},{"../../constants/alignment":697,"../../lib":728,"../../lib/extend":719,"../../lib/setcursor":748,"../../lib/svg_text_utils":752,"../../plots/cartesian/axes":776,"../../plots/cartesian/axis_defaults":778,"../../plots/cartesian/layout_attributes":790,"../../plots/cartesian/position_defaults":793,"../../plots/plots":839,"../../registry":859,"../color":595,"../colorscale/helpers":606,"../dragelement":614,"../drawing":617,"../titles":690,"./constants":597,d3:164,tinycolor2:528}],600:[function(t,e,r){"use strict";var n=t("../../lib");e.exports=function(t){return n.isPlainObject(t.colorbar)}},{"../../lib":728}],601:[function(t,e,r){"use strict";e.exports={moduleType:"component",name:"colorbar",attributes:t("./attributes"),supplyDefaults:t("./defaults"),draw:t("./draw").draw,hasColorbar:t("./has_colorbar")}},{"./attributes":596,"./defaults":598,"./draw":599,"./has_colorbar":600}],602:[function(t,e,r){"use strict";var n=t("../colorbar/attributes"),a=t("../../lib/regex").counter,i=t("./scales.js").scales;Object.keys(i);function o(t){return"”+t+”"}e.exports=function(t,e){t=t||"";var r,s=(e=e||{}).cLetter||"c",l=("onlyIfNumerical"in e?e.onlyIfNumerical:Boolean(t),"noScale"in e?e.noScale:"marker.line"===t),c="showScaleDflt"in e?e.showScaleDflt:"z"===s,u="string"==typeof e.colorscaleDflt?i[e.colorscaleDflt]:null,h=e.editTypeOverride||"",f=t?t+".":"";"colorAttr"in e?(r=e.colorAttr,e.colorAttr):o(f+(r={z:"z",c:"color"}[s]));var p=s+"auto",d=s+"min",g=s+"max",m=s+"mid",v=(o(f+p),o(f+d),o(f+g),{});v[d]=v[g]=void 0;var y={};y[p]=!1;var x={};return"color"===r&&(x.color={valType:"color",arrayOk:!0,editType:h||"style"},e.anim&&(x.color.anim=!0)),x[p]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:v},x[d]={valType:"number",dflt:null,editType:h||"plot",impliedEdits:y},x[g]={valType:"number",dflt:null,editType:h||"plot",impliedEdits:y},x[m]={valType:"number",dflt:null,editType:"calc",impliedEdits:v},x.colorscale={valType:"colorscale",editType:"calc",dflt:u,impliedEdits:{autocolorscale:!1}},x.autocolorscale={valType:"boolean",dflt:!1!==e.autoColorDflt,editType:"calc",impliedEdits:{colorscale:void 0}},x.reversescale={valType:"boolean",dflt:!1,editType:"plot"},l||(x.showscale={valType:"boolean",dflt:c,editType:"calc"},x.colorbar=n),e.noColorAxis||(x.coloraxis={valType:"subplotid",regex:a("coloraxis"),dflt:null,editType:"calc"}),x}},{"../../lib/regex":744,"../colorbar/attributes":596,"./scales.js":610}],603:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../../lib"),i=t("./helpers").extractOpts;e.exports=function(t,e,r){var o,s=t._fullLayout,l=r.vals,c=r.containerStr,u=c?a.nestedProperty(e,c).get():e,h=i(u),f=!1!==h.auto,p=h.min,d=h.max,g=h.mid,m=function(){return a.aggNums(Math.min,null,l)},v=function(){return a.aggNums(Math.max,null,l)};(void 0===p?p=m():f&&(p=u._colorAx&&n(p)?Math.min(p,m()):m()),void 0===d?d=v():f&&(d=u._colorAx&&n(d)?Math.max(d,v()):v()),f&&void 0!==g&&(d-g>g-p?p=g-(d-g):d-g<g-p&&(d=g+(g-p))),p===d&&(p-=.5,d+=.5),h._sync("min",p),h._sync("max",d),h.autocolorscale)&&(o=p*d<0?s.colorscale.diverging:p>=0?s.colorscale.sequential:s.colorscale.sequentialminus,h._sync("colorscale",o))}},{"../../lib":728,"./helpers":606,"fast-isnumeric":236}],604:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./helpers").hasColorscale,i=t("./helpers").extractOpts;e.exports=function(t,e){function r(t,e){var r=t["_"+e];void 0!==r&&(t[e]=r)}function o(t,a){var o=a.container?n.nestedProperty(t,a.container).get():t;if(o)if(o.coloraxis)o._colorAx=e[o.coloraxis];else{var s=i(o),l=s.auto;(l||void 0===s.min)&&r(o,a.min),(l||void 0===s.max)&&r(o,a.max),s.autocolorscale&&r(o,"colorscale")}}for(var s=0;s<t.length;s++){var l=t[s],c=l._module.colorbar;if(c)if(Array.isArray(c))for(var u=0;u<c.length;u++)o(l,c[u]);else o(l,c);a(l,"marker.line")&&o(l,{container:"marker.line",min:"cmin",max:"cmax"})}for(var h in e._colorAxes)o(e[h],{min:"cmin",max:"cmax"})}},{"../../lib":728,"./helpers":606}],605:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../../lib"),i=t("../colorbar/has_colorbar"),o=t("../colorbar/defaults"),s=t("./scales").isValid,l=t("../../registry").traceIs;function c(t,e){var r=e.slice(0,e.length-1);return e?a.nestedProperty(t,r).get()||{}:t}e.exports=function t(e,r,u,h,f){var p=f.prefix,d=f.cLetter,g="_module"in r,m=c(e,p),v=c(r,p),y=c(r._template||{},p)||{},x=function(){return delete e.coloraxis,delete r.coloraxis,t(e,r,u,h,f)};if(g){var b=u._colorAxes||{},_=h(p+"coloraxis");if(_){var w=l(r,"contour")&&a.nestedProperty(r,"contours.coloring").get()||"heatmap",T=b[_];return void(T?(T[2].push(x),T[0]!==w&&(T[0]=!1,a.warn(["Ignoring coloraxis:",_,"setting","as it is linked to incompatible colorscales."].join(" ")))):b[_]=[w,r,[x]])}}var k=m[d+"min"],A=m[d+"max"],M=n(k)&&n(A)&&k<A;h(p+d+"auto",!M)?h(p+d+"mid"):(h(p+d+"min"),h(p+d+"max"));var S,E,C=m.colorscale,L=y.colorscale;(void 0!==C&&(S=!s(C)),void 0!==L&&(S=!s(L)),h(p+"autocolorscale",S),h(p+"colorscale"),h(p+"reversescale"),"marker.line."!==p)&&(p&&g&&(E=i(m)),h(p+"showscale",E)&&(p&&y&&(v._template=y),o(m,v,u)))}},{"../../lib":728,"../../registry":859,"../colorbar/defaults":598,"../colorbar/has_colorbar":600,"./scales":610,"fast-isnumeric":236}],606:[function(t,e,r){"use strict";var n=t("d3"),a=t("tinycolor2"),i=t("fast-isnumeric"),o=t("../../lib"),s=t("../color"),l=t("./scales").isValid;var c=["showscale","autocolorscale","colorscale","reversescale","colorbar"],u=["min","max","mid","auto"];function h(t){var e,r,n,a=t._colorAx,i=a||t,o={};for(r=0;r<c.length;r++)o[n=c[r]]=i[n];if(a)for(e="c",r=0;r<u.length;r++)o[n=u[r]]=i["c"+n];else{var s;for(r=0;r<u.length;r++)((s="c"+(n=u[r]))in i||(s="z"+n)in i)&&(o[n]=i[s]);e=s.charAt(0)}return o._sync=function(t,r){var n=-1!==u.indexOf(t)?e+t:t;i[n]=i["_"+n]=r},o}function f(t){for(var e=h(t),r=e.min,n=e.max,a=e.reversescale?p(e.colorscale):e.colorscale,i=a.length,o=new Array(i),s=new Array(i),l=0;l<i;l++){var c=a[l];o[l]=r+c[0]*(n-r),s[l]=c[1]}return{domain:o,range:s}}function p(t){for(var e=t.length,r=new Array(e),n=e-1,a=0;n>=0;n--,a++){var i=t[n];r[a]=[1-i[0],i[1]]}return r}function d(t,e){e=e||{};for(var r=t.domain,o=t.range,l=o.length,c=new Array(l),u=0;u<l;u++){var h=a(o[u]).toRgb();c[u]=[h.r,h.g,h.b,h.a]}var f,p=n.scale.linear().domain(r).range(c).clamp(!0),d=e.noNumericCheck,m=e.returnArray;return(f=d&&m?p:d?function(t){return g(p(t))}:m?function(t){return i(t)?p(t):a(t).isValid()?t:s.defaultLine}:function(t){return i(t)?g(p(t)):a(t).isValid()?t:s.defaultLine}).domain=p.domain,f.range=function(){return o},f}function g(t){var e={r:t[0],g:t[1],b:t[2],a:t[3]};return a(e).toRgbString()}e.exports={hasColorscale:function(t,e,r){var n=e?o.nestedProperty(t,e).get()||{}:t,a=n[r||"color"],s=!1;if(o.isArrayOrTypedArray(a))for(var c=0;c<a.length;c++)if(i(a[c])){s=!0;break}return o.isPlainObject(n)&&(s||!0===n.showscale||i(n.cmin)&&i(n.cmax)||l(n.colorscale)||o.isPlainObject(n.colorbar))},extractOpts:h,extractScale:f,flipScale:p,makeColorScaleFunc:d,makeColorScaleFuncFromTrace:function(t,e){return d(f(t),e)}}},{"../../lib":728,"../color":595,"./scales":610,d3:164,"fast-isnumeric":236,tinycolor2:528}],607:[function(t,e,r){"use strict";var n=t("./scales"),a=t("./helpers");e.exports={moduleType:"component",name:"colorscale",attributes:t("./attributes"),layoutAttributes:t("./layout_attributes"),supplyLayoutDefaults:t("./layout_defaults"),handleDefaults:t("./defaults"),crossTraceDefaults:t("./cross_trace_defaults"),calc:t("./calc"),scales:n.scales,defaultScale:n.defaultScale,getScale:n.get,isValidScale:n.isValid,hasColorscale:a.hasColorscale,extractOpts:a.extractOpts,extractScale:a.extractScale,flipScale:a.flipScale,makeColorScaleFunc:a.makeColorScaleFunc,makeColorScaleFuncFromTrace:a.makeColorScaleFuncFromTrace}},{"./attributes":602,"./calc":603,"./cross_trace_defaults":604,"./defaults":605,"./helpers":606,"./layout_attributes":608,"./layout_defaults":609,"./scales":610}],608:[function(t,e,r){"use strict";var n=t("../../lib/extend").extendFlat,a=t("./attributes"),i=t("./scales").scales;e.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:i.Reds,editType:"calc"},sequentialminus:{valType:"colorscale",dflt:i.Blues,editType:"calc"},diverging:{valType:"colorscale",dflt:i.RdBu,editType:"calc"}},coloraxis:n({_isSubplotObj:!0,editType:"calc"},a("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}},{"../../lib/extend":719,"./attributes":602,"./scales":610}],609:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../plot_api/plot_template"),i=t("./layout_attributes"),o=t("./defaults");e.exports=function(t,e){function r(r,a){return n.coerce(t,e,i,r,a)}r("colorscale.sequential"),r("colorscale.sequentialminus"),r("colorscale.diverging");var s,l,c=e._colorAxes;function u(t,e){return n.coerce(s,l,i.coloraxis,t,e)}for(var h in c){var f=c[h];if(f[0])s=t[h]||{},(l=a.newContainer(e,h,"coloraxis"))._name=h,o(s,l,e,u,{prefix:"",cLetter:"c"});else{for(var p=0;p<f[2].length;p++)f[2][p]();delete e._colorAxes[h]}}}},{"../../lib":728,"../../plot_api/plot_template":766,"./defaults":605,"./layout_attributes":608}],610:[function(t,e,r){"use strict";var n=t("tinycolor2"),a={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)"]]},i=a.RdBu;function o(t){var e=0;if(!Array.isArray(t)||t.length<2)return!1;if(!t[0]||!t[t.length-1])return!1;if(0!=+t[0][0]||1!=+t[t.length-1][0])return!1;for(var r=0;r<t.length;r++){var a=t[r];if(2!==a.length||+a[0]<e||!n(a[1]).isValid())return!1;e=+a[0]}return!0}e.exports={scales:a,defaultScale:i,get:function(t,e){if(e||(e=i),!t)return e;function r(){try{t=a[t]||JSON.parse(t)}catch(r){t=e}}return"string"==typeof t&&(r(),"string"==typeof t&&r()),o(t)?t:e},isValid:function(t){return void 0!==a[t]||o(t)}}},{tinycolor2:528}],611:[function(t,e,r){"use strict";e.exports=function(t,e,r,n,a){var i=(t-r)/(n-r),o=i+e/(n-r),s=(i+o)/2;return"left"===a||"bottom"===a?i:"center"===a||"middle"===a?s:"right"===a||"top"===a?o:i<2/3-s?i:o>4/3-s?o:s}},{}],612:[function(t,e,r){"use strict";var n=t("../../lib"),a=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];e.exports=function(t,e,r,i){return t="left"===r?0:"center"===r?1:"right"===r?2:n.constrain(Math.floor(3*t),0,2),e="bottom"===i?0:"middle"===i?1:"top"===i?2:n.constrain(Math.floor(3*e),0,2),a[e][t]}},{"../../lib":728}],613:[function(t,e,r){"use strict";r.selectMode=function(t){return"lasso"===t||"select"===t},r.drawMode=function(t){return"drawclosedpath"===t||"drawopenpath"===t||"drawline"===t||"drawrect"===t||"drawcircle"===t},r.openMode=function(t){return"drawline"===t||"drawopenpath"===t},r.rectMode=function(t){return"select"===t||"drawline"===t||"drawrect"===t||"drawcircle"===t},r.freeMode=function(t){return"lasso"===t||"drawclosedpath"===t||"drawopenpath"===t},r.selectingOrDrawing=function(t){return r.freeMode(t)||r.rectMode(t)}},{}],614:[function(t,e,r){"use strict";var n=t("mouse-event-offset"),a=t("has-hover"),i=t("has-passive-events"),o=t("../../lib").removeElement,s=t("../../plots/cartesian/constants"),l=e.exports={};l.align=t("./align"),l.getCursor=t("./cursor");var c=t("./unhover");function u(){var t=document.createElement("div");t.className="dragcover";var e=t.style;return e.position="fixed",e.left=0,e.right=0,e.top=0,e.bottom=0,e.zIndex=999999999,e.background="none",document.body.appendChild(t),t}function h(t){return n(t.changedTouches?t.changedTouches[0]:t,document.body)}l.unhover=c.wrapped,l.unhoverRaw=c.raw,l.init=function(t){var e,r,n,c,f,p,d,g,m=t.gd,v=1,y=m._context.doubleClickDelay,x=t.element;m._mouseDownTime||(m._mouseDownTime=0),x.style.pointerEvents="all",x.onmousedown=_,i?(x._ontouchstart&&x.removeEventListener("touchstart",x._ontouchstart),x._ontouchstart=_,x.addEventListener("touchstart",_,{passive:!1})):x.ontouchstart=_;var b=t.clampFn||function(t,e,r){return Math.abs(t)<r&&(t=0),Math.abs(e)<r&&(e=0),[t,e]};function _(i){m._dragged=!1,m._dragging=!0;var o=h(i);e=o[0],r=o[1],d=i.target,p=i,g=2===i.buttons||i.ctrlKey,"undefined"==typeof i.clientX&&"undefined"==typeof i.clientY&&(i.clientX=e,i.clientY=r),(n=(new Date).getTime())-m._mouseDownTime<y?v+=1:(v=1,m._mouseDownTime=n),t.prepFn&&t.prepFn(i,e,r),a&&!g?(f=u()).style.cursor=window.getComputedStyle(x).cursor:a||(f=document,c=window.getComputedStyle(document.documentElement).cursor,document.documentElement.style.cursor=window.getComputedStyle(x).cursor),document.addEventListener("mouseup",T),document.addEventListener("touchend",T),!1!==t.dragmode&&(i.preventDefault(),document.addEventListener("mousemove",w),document.addEventListener("touchmove",w,{passive:!1}))}function w(n){n.preventDefault();var a=h(n),i=t.minDrag||s.MINDRAG,o=b(a[0]-e,a[1]-r,i),c=o[0],u=o[1];(c||u)&&(m._dragged=!0,l.unhover(m)),m._dragged&&t.moveFn&&!g&&(m._dragdata={element:x,dx:c,dy:u},t.moveFn(c,u))}function T(e){if(delete m._dragdata,!1!==t.dragmode&&(e.preventDefault(),document.removeEventListener("mousemove",w),document.removeEventListener("touchmove",w)),document.removeEventListener("mouseup",T),document.removeEventListener("touchend",T),a?o(f):c&&(f.documentElement.style.cursor=c,c=null),m._dragging){if(m._dragging=!1,(new Date).getTime()-m._mouseDownTime>y&&(v=Math.max(v-1,1)),m._dragged)t.doneFn&&t.doneFn();else if(t.clickFn&&t.clickFn(v,p),!g){var r;try{r=new MouseEvent("click",e)}catch(t){var n=h(e);(r=document.createEvent("MouseEvents")).initMouseEvent("click",e.bubbles,e.cancelable,e.view,e.detail,e.screenX,e.screenY,n[0],n[1],e.ctrlKey,e.altKey,e.shiftKey,e.metaKey,e.button,e.relatedTarget)}d.dispatchEvent(r)}m._dragging=!1,m._dragged=!1}else m._dragged=!1}},l.coverSlip=u},{"../../lib":728,"../../plots/cartesian/constants":782,"./align":611,"./cursor":612,"./unhover":615,"has-hover":409,"has-passive-events":410,"mouse-event-offset":437}],615:[function(t,e,r){"use strict";var n=t("../../lib/events"),a=t("../../lib/throttle"),i=t("../../lib/dom").getGraphDiv,o=t("../fx/constants"),s=e.exports={};s.wrapped=function(t,e,r){(t=i(t))._fullLayout&&a.clear(t._fullLayout._uid+o.HOVERID),s.raw(t,e,r)},s.raw=function(t,e){var r=t._fullLayout,a=t._hoverdata;e||(e={}),e.target&&!1===n.triggerHandler(t,"plotly_beforehover",e)||(r._hoverlayer.selectAll("g").remove(),r._hoverlayer.selectAll("line").remove(),r._hoverlayer.selectAll("circle").remove(),t._hoverdata=void 0,e.target&&a&&t.emit("plotly_unhover",{event:e,points:a}))}},{"../../lib/dom":717,"../../lib/events":718,"../../lib/throttle":753,"../fx/constants":629}],616:[function(t,e,r){"use strict";r.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"}},{}],617:[function(t,e,r){"use strict";var n=t("d3"),a=t("fast-isnumeric"),i=t("tinycolor2"),o=t("../../registry"),s=t("../color"),l=t("../colorscale"),c=t("../../lib"),u=t("../../lib/svg_text_utils"),h=t("../../constants/xmlns_namespaces"),f=t("../../constants/alignment").LINE_SPACING,p=t("../../constants/interactions").DESELECTDIM,d=t("../../traces/scatter/subtypes"),g=t("../../traces/scatter/make_bubble_size_func"),m=t("../../components/fx/helpers").appendArrayPointValue,v=e.exports={};v.font=function(t,e,r,n){c.isPlainObject(e)&&(n=e.color,r=e.size,e=e.family),e&&t.style("font-family",e),r+1&&t.style("font-size",r+"px"),n&&t.call(s.fill,n)},v.setPosition=function(t,e,r){t.attr("x",e).attr("y",r)},v.setSize=function(t,e,r){t.attr("width",e).attr("height",r)},v.setRect=function(t,e,r,n,a){t.call(v.setPosition,e,r).call(v.setSize,n,a)},v.translatePoint=function(t,e,r,n){var i=r.c2p(t.x),o=n.c2p(t.y);return!!(a(i)&&a(o)&&e.node())&&("text"===e.node().nodeName?e.attr("x",i).attr("y",o):e.attr("transform","translate("+i+","+o+")"),!0)},v.translatePoints=function(t,e,r){t.each((function(t){var a=n.select(this);v.translatePoint(t,a,e,r)}))},v.hideOutsideRangePoint=function(t,e,r,n,a,i){e.attr("display",r.isPtWithinRange(t,a)&&n.isPtWithinRange(t,i)?null:"none")},v.hideOutsideRangePoints=function(t,e){if(e._hasClipOnAxisFalse){var r=e.xaxis,a=e.yaxis;t.each((function(e){var i=e[0].trace,s=i.xcalendar,l=i.ycalendar,c=o.traceIs(i,"bar-like")?".bartext":".point,.textpoint";t.selectAll(c).each((function(t){v.hideOutsideRangePoint(t,n.select(this),r,a,s,l)}))}))}},v.crispRound=function(t,e,r){return e&&a(e)?t._context.staticPlot?e:e<1?1:Math.round(e):r||0},v.singleLineStyle=function(t,e,r,n,a){e.style("fill","none");var i=(((t||[])[0]||{}).trace||{}).line||{},o=r||i.width||0,l=a||i.dash||"";s.stroke(e,n||i.color),v.dashLine(e,l,o)},v.lineGroupStyle=function(t,e,r,a){t.style("fill","none").each((function(t){var i=(((t||[])[0]||{}).trace||{}).line||{},o=e||i.width||0,l=a||i.dash||"";n.select(this).call(s.stroke,r||i.color).call(v.dashLine,l,o)}))},v.dashLine=function(t,e,r){r=+r||0,e=v.dashStyle(e,r),t.style({"stroke-dasharray":e,"stroke-width":r+"px"})},v.dashStyle=function(t,e){e=+e||1;var r=Math.max(e,3);return"solid"===t?t="":"dot"===t?t=r+"px,"+r+"px":"dash"===t?t=3*r+"px,"+3*r+"px":"longdash"===t?t=5*r+"px,"+5*r+"px":"dashdot"===t?t=3*r+"px,"+r+"px,"+r+"px,"+r+"px":"longdashdot"===t&&(t=5*r+"px,"+2*r+"px,"+r+"px,"+2*r+"px"),t},v.singleFillStyle=function(t){var e=(((n.select(t.node()).data()[0]||[])[0]||{}).trace||{}).fillcolor;e&&t.call(s.fill,e)},v.fillGroupStyle=function(t){t.style("stroke-width",0).each((function(t){var e=n.select(this);t[0].trace&&e.call(s.fill,t[0].trace.fillcolor)}))};var y=t("./symbol_defs");v.symbolNames=[],v.symbolFuncs=[],v.symbolNeedLines={},v.symbolNoDot={},v.symbolNoFill={},v.symbolList=[],Object.keys(y).forEach((function(t){var e=y[t],r=e.n;v.symbolList.push(r,t,r+100,t+"-open"),v.symbolNames[r]=t,v.symbolFuncs[r]=e.f,e.needLine&&(v.symbolNeedLines[r]=!0),e.noDot?v.symbolNoDot[r]=!0:v.symbolList.push(r+200,t+"-dot",r+300,t+"-open-dot"),e.noFill&&(v.symbolNoFill[r]=!0)}));var x=v.symbolNames.length;function b(t,e){var r=t%100;return v.symbolFuncs[r](e)+(t>=200?"M0,0.5L0.5,0L0,-0.5L-0.5,0Z":"")}v.symbolNumber=function(t){if("string"==typeof t){var e=0;t.indexOf("-open")>0&&(e=100,t=t.replace("-open","")),t.indexOf("-dot")>0&&(e+=200,t=t.replace("-dot","")),(t=v.symbolNames.indexOf(t))>=0&&(t+=e)}return t%100>=x||t>=400?0:Math.floor(Math.max(t,0))};var _={x1:1,x2:0,y1:0,y2:0},w={x1:0,x2:0,y1:1,y2:0},T=n.format("~.1f"),k={radial:{node:"radialGradient"},radialreversed:{node:"radialGradient",reversed:!0},horizontal:{node:"linearGradient",attrs:_},horizontalreversed:{node:"linearGradient",attrs:_,reversed:!0},vertical:{node:"linearGradient",attrs:w},verticalreversed:{node:"linearGradient",attrs:w,reversed:!0}};v.gradient=function(t,e,r,a,o,l){for(var u=o.length,h=k[a],f=new Array(u),p=0;p<u;p++)h.reversed?f[u-1-p]=[T(100*(1-o[p][0])),o[p][1]]:f[p]=[T(100*o[p][0]),o[p][1]];var d=e._fullLayout,g="g"+d._uid+"-"+r,m=d._defs.select(".gradients").selectAll("#"+g).data([a+f.join(";")],c.identity);m.exit().remove(),m.enter().append(h.node).each((function(){var t=n.select(this);h.attrs&&t.attr(h.attrs),t.attr("id",g);var e=t.selectAll("stop").data(f);e.exit().remove(),e.enter().append("stop"),e.each((function(t){var e=i(t[1]);n.select(this).attr({offset:t[0]+"%","stop-color":s.tinyRGB(e),"stop-opacity":e.getAlpha()})}))})),t.style(l,z(g,e)).style(l+"-opacity",null);var v=function(t){return"."+t.attr("class").replace(/\s/g,".")},y=v(n.select(t.node().parentNode))+">"+v(t);d._gradientUrlQueryParts[y]=1},v.initGradients=function(t){var e=t._fullLayout;c.ensureSingle(e._defs,"g","gradients").selectAll("linearGradient,radialGradient").remove(),e._gradientUrlQueryParts={}},v.pointStyle=function(t,e,r){if(t.size()){var a=v.makePointStyleFns(e);t.each((function(t){v.singlePointStyle(t,n.select(this),e,a,r)}))}},v.singlePointStyle=function(t,e,r,n,a){var i=r.marker,o=i.line;if(e.style("opacity",n.selectedOpacityFn?n.selectedOpacityFn(t):void 0===t.mo?i.opacity:t.mo),n.ms2mrc){var l;l="various"===t.ms||"various"===i.size?3:n.ms2mrc(t.ms),t.mrc=l,n.selectedSizeFn&&(l=t.mrc=n.selectedSizeFn(t));var u=v.symbolNumber(t.mx||i.symbol)||0;t.om=u%200>=100,e.attr("d",b(u,l))}var h,f,p,d=!1;if(t.so)p=o.outlierwidth,f=o.outliercolor,h=i.outliercolor;else{var g=(o||{}).width;p=(t.mlw+1||g+1||(t.trace?(t.trace.marker.line||{}).width:0)+1)-1||0,f="mlc"in t?t.mlcc=n.lineScale(t.mlc):c.isArrayOrTypedArray(o.color)?s.defaultLine:o.color,c.isArrayOrTypedArray(i.color)&&(h=s.defaultLine,d=!0),h="mc"in t?t.mcc=n.markerScale(t.mc):i.color||"rgba(0,0,0,0)",n.selectedColorFn&&(h=n.selectedColorFn(t))}if(t.om)e.call(s.stroke,h).style({"stroke-width":(p||1)+"px",fill:"none"});else{e.style("stroke-width",(t.isBlank?0:p)+"px");var m=i.gradient,y=t.mgt;if(y?d=!0:y=m&&m.type,Array.isArray(y)&&(y=y[0],k[y]||(y=0)),y&&"none"!==y){var x=t.mgc;x?d=!0:x=m.color;var _=r.uid;d&&(_+="-"+t.i),v.gradient(e,a,_,y,[[0,x],[1,h]],"fill")}else s.fill(e,h);p&&s.stroke(e,f)}},v.makePointStyleFns=function(t){var e={},r=t.marker;return e.markerScale=v.tryColorscale(r,""),e.lineScale=v.tryColorscale(r,"line"),o.traceIs(t,"symbols")&&(e.ms2mrc=d.isBubble(t)?g(t):function(){return(r.size||6)/2}),t.selectedpoints&&c.extendFlat(e,v.makeSelectedPointStyleFns(t)),e},v.makeSelectedPointStyleFns=function(t){var e={},r=t.selected||{},n=t.unselected||{},a=t.marker||{},i=r.marker||{},s=n.marker||{},l=a.opacity,u=i.opacity,h=s.opacity,f=void 0!==u,d=void 0!==h;(c.isArrayOrTypedArray(l)||f||d)&&(e.selectedOpacityFn=function(t){var e=void 0===t.mo?a.opacity:t.mo;return t.selected?f?u:e:d?h:p*e});var g=a.color,m=i.color,v=s.color;(m||v)&&(e.selectedColorFn=function(t){var e=t.mcc||g;return t.selected?m||e:v||e});var y=a.size,x=i.size,b=s.size,_=void 0!==x,w=void 0!==b;return o.traceIs(t,"symbols")&&(_||w)&&(e.selectedSizeFn=function(t){var e=t.mrc||y/2;return t.selected?_?x/2:e:w?b/2:e}),e},v.makeSelectedTextStyleFns=function(t){var e={},r=t.selected||{},n=t.unselected||{},a=t.textfont||{},i=r.textfont||{},o=n.textfont||{},l=a.color,c=i.color,u=o.color;return e.selectedTextColorFn=function(t){var e=t.tc||l;return t.selected?c||e:u||(c?e:s.addOpacity(e,p))},e},v.selectedPointStyle=function(t,e){if(t.size()&&e.selectedpoints){var r=v.makeSelectedPointStyleFns(e),a=e.marker||{},i=[];r.selectedOpacityFn&&i.push((function(t,e){t.style("opacity",r.selectedOpacityFn(e))})),r.selectedColorFn&&i.push((function(t,e){s.fill(t,r.selectedColorFn(e))})),r.selectedSizeFn&&i.push((function(t,e){var n=e.mx||a.symbol||0,i=r.selectedSizeFn(e);t.attr("d",b(v.symbolNumber(n),i)),e.mrc2=i})),i.length&&t.each((function(t){for(var e=n.select(this),r=0;r<i.length;r++)i[r](e,t)}))}},v.tryColorscale=function(t,e){var r=e?c.nestedProperty(t,e).get():t;if(r){var n=r.color;if((r.colorscale||r._colorAx)&&c.isArrayOrTypedArray(n))return l.makeColorScaleFuncFromTrace(r)}return c.identity};var A={start:1,end:-1,middle:0,bottom:1,top:-1};function M(t,e,r,a){var i=n.select(t.node().parentNode),o=-1!==e.indexOf("top")?"top":-1!==e.indexOf("bottom")?"bottom":"middle",s=-1!==e.indexOf("left")?"end":-1!==e.indexOf("right")?"start":"middle",l=a?a/.8+1:0,c=(u.lineCount(t)-1)*f+1,h=A[s]*l,p=.75*r+A[o]*l+(A[o]-1)*c*r/2;t.attr("text-anchor",s),i.attr("transform","translate("+h+","+p+")")}function S(t,e){var r=t.ts||e.textfont.size;return a(r)&&r>0?r:0}v.textPointStyle=function(t,e,r){if(t.size()){var a;if(e.selectedpoints){var i=v.makeSelectedTextStyleFns(e);a=i.selectedTextColorFn}var o=e.texttemplate,s=r._fullLayout;t.each((function(t){var i=n.select(this),l=o?c.extractOption(t,e,"txt","texttemplate"):c.extractOption(t,e,"tx","text");if(l||0===l){if(o){var h=e._module.formatLabels?e._module.formatLabels(t,e,s):{},f={};m(f,e,t.i);var p=e._meta||{};l=c.texttemplateString(l,h,s._d3locale,f,t,p)}var d=t.tp||e.textposition,g=S(t,e),y=a?a(t):t.tc||e.textfont.color;i.call(v.font,t.tf||e.textfont.family,g,y).text(l).call(u.convertToTspans,r).call(M,d,g,t.mrc)}else i.remove()}))}},v.selectedTextStyle=function(t,e){if(t.size()&&e.selectedpoints){var r=v.makeSelectedTextStyleFns(e);t.each((function(t){var a=n.select(this),i=r.selectedTextColorFn(t),o=t.tp||e.textposition,l=S(t,e);s.fill(a,i),M(a,o,l,t.mrc2||t.mrc)}))}};function E(t,e,r,a){var i=t[0]-e[0],o=t[1]-e[1],s=r[0]-e[0],l=r[1]-e[1],c=Math.pow(i*i+o*o,.25),u=Math.pow(s*s+l*l,.25),h=(u*u*i-c*c*s)*a,f=(u*u*o-c*c*l)*a,p=3*u*(c+u),d=3*c*(c+u);return[[n.round(e[0]+(p&&h/p),2),n.round(e[1]+(p&&f/p),2)],[n.round(e[0]-(d&&h/d),2),n.round(e[1]-(d&&f/d),2)]]}v.smoothopen=function(t,e){if(t.length<3)return"M"+t.join("L");var r,n="M"+t[0],a=[];for(r=1;r<t.length-1;r++)a.push(E(t[r-1],t[r],t[r+1],e));for(n+="Q"+a[0][0]+" "+t[1],r=2;r<t.length-1;r++)n+="C"+a[r-2][1]+" "+a[r-1][0]+" "+t[r];return n+="Q"+a[t.length-3][1]+" "+t[t.length-1]},v.smoothclosed=function(t,e){if(t.length<3)return"M"+t.join("L")+"Z";var r,n="M"+t[0],a=t.length-1,i=[E(t[a],t[0],t[1],e)];for(r=1;r<a;r++)i.push(E(t[r-1],t[r],t[r+1],e));for(i.push(E(t[a-1],t[a],t[0],e)),r=1;r<=a;r++)n+="C"+i[r-1][1]+" "+i[r][0]+" "+t[r];return n+="C"+i[a][1]+" "+i[0][0]+" "+t[0]+"Z"};var C={hv:function(t,e){return"H"+n.round(e[0],2)+"V"+n.round(e[1],2)},vh:function(t,e){return"V"+n.round(e[1],2)+"H"+n.round(e[0],2)},hvh:function(t,e){return"H"+n.round((t[0]+e[0])/2,2)+"V"+n.round(e[1],2)+"H"+n.round(e[0],2)},vhv:function(t,e){return"V"+n.round((t[1]+e[1])/2,2)+"H"+n.round(e[0],2)+"V"+n.round(e[1],2)}},L=function(t,e){return"L"+n.round(e[0],2)+","+n.round(e[1],2)};v.steps=function(t){var e=C[t]||L;return function(t){for(var r="M"+n.round(t[0][0],2)+","+n.round(t[0][1],2),a=1;a<t.length;a++)r+=e(t[a-1],t[a]);return r}},v.makeTester=function(){var t=c.ensureSingleById(n.select("body"),"svg","js-plotly-tester",(function(t){t.attr(h.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})})),e=c.ensureSingle(t,"path","js-reference-point",(function(t){t.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})}));v.tester=t,v.testref=e},v.savedBBoxes={};var P=0;function I(t){var e=t.getAttribute("data-unformatted");if(null!==e)return e+t.getAttribute("data-math")+t.getAttribute("text-anchor")+t.getAttribute("style")}function z(t,e){if(!t)return null;var r=e._context;return"url('"+(r._exportedPlot?"":r._baseUrl||"")+"#"+t+"')"}v.bBox=function(t,e,r){var a,i,o;if(r||(r=I(t)),r){if(a=v.savedBBoxes[r])return c.extendFlat({},a)}else if(1===t.childNodes.length){var s=t.childNodes[0];if(r=I(s)){var l=+s.getAttribute("x")||0,h=+s.getAttribute("y")||0,f=s.getAttribute("transform");if(!f){var p=v.bBox(s,!1,r);return l&&(p.left+=l,p.right+=l),h&&(p.top+=h,p.bottom+=h),p}if(r+="~"+l+"~"+h+"~"+f,a=v.savedBBoxes[r])return c.extendFlat({},a)}}e?i=t:(o=v.tester.node(),i=t.cloneNode(!0),o.appendChild(i)),n.select(i).attr("transform",null).call(u.positionText,0,0);var d=i.getBoundingClientRect(),g=v.testref.node().getBoundingClientRect();e||o.removeChild(i);var m={height:d.height,width:d.width,left:d.left-g.left,top:d.top-g.top,right:d.right-g.left,bottom:d.bottom-g.top};return P>=1e4&&(v.savedBBoxes={},P=0),r&&(v.savedBBoxes[r]=m),P++,c.extendFlat({},m)},v.setClipUrl=function(t,e,r){t.attr("clip-path",z(e,r))},v.getTranslate=function(t){var e=(t[t.attr?"attr":"getAttribute"]("transform")||"").replace(/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,(function(t,e,r){return[e,r].join(" ")})).split(" ");return{x:+e[0]||0,y:+e[1]||0}},v.setTranslate=function(t,e,r){var n=t.attr?"attr":"getAttribute",a=t.attr?"attr":"setAttribute",i=t[n]("transform")||"";return e=e||0,r=r||0,i=i.replace(/(\btranslate\(.*?\);?)/,"").trim(),i=(i+=" translate("+e+", "+r+")").trim(),t[a]("transform",i),i},v.getScale=function(t){var e=(t[t.attr?"attr":"getAttribute"]("transform")||"").replace(/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,(function(t,e,r){return[e,r].join(" ")})).split(" ");return{x:+e[0]||1,y:+e[1]||1}},v.setScale=function(t,e,r){var n=t.attr?"attr":"getAttribute",a=t.attr?"attr":"setAttribute",i=t[n]("transform")||"";return e=e||1,r=r||1,i=i.replace(/(\bscale\(.*?\);?)/,"").trim(),i=(i+=" scale("+e+", "+r+")").trim(),t[a]("transform",i),i};var O=/\s*sc.*/;v.setPointGroupScale=function(t,e,r){if(e=e||1,r=r||1,t){var n=1===e&&1===r?"":" scale("+e+","+r+")";t.each((function(){var t=(this.getAttribute("transform")||"").replace(O,"");t=(t+=n).trim(),this.setAttribute("transform",t)}))}};var D=/translate\([^)]*\)\s*$/;v.setTextPointsScale=function(t,e,r){t&&t.each((function(){var t,a=n.select(this),i=a.select("text");if(i.node()){var o=parseFloat(i.attr("x")||0),s=parseFloat(i.attr("y")||0),l=(a.attr("transform")||"").match(D);t=1===e&&1===r?[]:["translate("+o+","+s+")","scale("+e+","+r+")","translate("+-o+","+-s+")"],l&&t.push(l),a.attr("transform",t.join(" "))}}))}},{"../../components/fx/helpers":631,"../../constants/alignment":697,"../../constants/interactions":703,"../../constants/xmlns_namespaces":705,"../../lib":728,"../../lib/svg_text_utils":752,"../../registry":859,"../../traces/scatter/make_bubble_size_func":1151,"../../traces/scatter/subtypes":1158,"../color":595,"../colorscale":607,"./symbol_defs":618,d3:164,"fast-isnumeric":236,tinycolor2:528}],618:[function(t,e,r){"use strict";var n=t("d3");e.exports={circle:{n:0,f:function(t){var e=n.round(t,2);return"M"+e+",0A"+e+","+e+" 0 1,1 0,-"+e+"A"+e+","+e+" 0 0,1 "+e+",0Z"}},square:{n:1,f:function(t){var e=n.round(t,2);return"M"+e+","+e+"H-"+e+"V-"+e+"H"+e+"Z"}},diamond:{n:2,f:function(t){var e=n.round(1.3*t,2);return"M"+e+",0L0,"+e+"L-"+e+",0L0,-"+e+"Z"}},cross:{n:3,f:function(t){var e=n.round(.4*t,2),r=n.round(1.2*t,2);return"M"+r+","+e+"H"+e+"V"+r+"H-"+e+"V"+e+"H-"+r+"V-"+e+"H-"+e+"V-"+r+"H"+e+"V-"+e+"H"+r+"Z"}},x:{n:4,f:function(t){var e=n.round(.8*t/Math.sqrt(2),2),r="l"+e+","+e,a="l"+e+",-"+e,i="l-"+e+",-"+e,o="l-"+e+","+e;return"M0,"+e+r+a+i+a+i+o+i+o+r+o+r+"Z"}},"triangle-up":{n:5,f:function(t){var e=n.round(2*t/Math.sqrt(3),2);return"M-"+e+","+n.round(t/2,2)+"H"+e+"L0,-"+n.round(t,2)+"Z"}},"triangle-down":{n:6,f:function(t){var e=n.round(2*t/Math.sqrt(3),2);return"M-"+e+",-"+n.round(t/2,2)+"H"+e+"L0,"+n.round(t,2)+"Z"}},"triangle-left":{n:7,f:function(t){var e=n.round(2*t/Math.sqrt(3),2);return"M"+n.round(t/2,2)+",-"+e+"V"+e+"L-"+n.round(t,2)+",0Z"}},"triangle-right":{n:8,f:function(t){var e=n.round(2*t/Math.sqrt(3),2);return"M-"+n.round(t/2,2)+",-"+e+"V"+e+"L"+n.round(t,2)+",0Z"}},"triangle-ne":{n:9,f:function(t){var e=n.round(.6*t,2),r=n.round(1.2*t,2);return"M-"+r+",-"+e+"H"+e+"V"+r+"Z"}},"triangle-se":{n:10,f:function(t){var e=n.round(.6*t,2),r=n.round(1.2*t,2);return"M"+e+",-"+r+"V"+e+"H-"+r+"Z"}},"triangle-sw":{n:11,f:function(t){var e=n.round(.6*t,2),r=n.round(1.2*t,2);return"M"+r+","+e+"H-"+e+"V-"+r+"Z"}},"triangle-nw":{n:12,f:function(t){var e=n.round(.6*t,2),r=n.round(1.2*t,2);return"M-"+e+","+r+"V-"+e+"H"+r+"Z"}},pentagon:{n:13,f:function(t){var e=n.round(.951*t,2),r=n.round(.588*t,2),a=n.round(-t,2),i=n.round(-.309*t,2);return"M"+e+","+i+"L"+r+","+n.round(.809*t,2)+"H-"+r+"L-"+e+","+i+"L0,"+a+"Z"}},hexagon:{n:14,f:function(t){var e=n.round(t,2),r=n.round(t/2,2),a=n.round(t*Math.sqrt(3)/2,2);return"M"+a+",-"+r+"V"+r+"L0,"+e+"L-"+a+","+r+"V-"+r+"L0,-"+e+"Z"}},hexagon2:{n:15,f:function(t){var e=n.round(t,2),r=n.round(t/2,2),a=n.round(t*Math.sqrt(3)/2,2);return"M-"+r+","+a+"H"+r+"L"+e+",0L"+r+",-"+a+"H-"+r+"L-"+e+",0Z"}},octagon:{n:16,f:function(t){var e=n.round(.924*t,2),r=n.round(.383*t,2);return"M-"+r+",-"+e+"H"+r+"L"+e+",-"+r+"V"+r+"L"+r+","+e+"H-"+r+"L-"+e+","+r+"V-"+r+"Z"}},star:{n:17,f:function(t){var e=1.4*t,r=n.round(.225*e,2),a=n.round(.951*e,2),i=n.round(.363*e,2),o=n.round(.588*e,2),s=n.round(-e,2),l=n.round(-.309*e,2),c=n.round(.118*e,2),u=n.round(.809*e,2);return"M"+r+","+l+"H"+a+"L"+i+","+c+"L"+o+","+u+"L0,"+n.round(.382*e,2)+"L-"+o+","+u+"L-"+i+","+c+"L-"+a+","+l+"H-"+r+"L0,"+s+"Z"}},hexagram:{n:18,f:function(t){var e=n.round(.66*t,2),r=n.round(.38*t,2),a=n.round(.76*t,2);return"M-"+a+",0l-"+r+",-"+e+"h"+a+"l"+r+",-"+e+"l"+r+","+e+"h"+a+"l-"+r+","+e+"l"+r+","+e+"h-"+a+"l-"+r+","+e+"l-"+r+",-"+e+"h-"+a+"Z"}},"star-triangle-up":{n:19,f:function(t){var e=n.round(t*Math.sqrt(3)*.8,2),r=n.round(.8*t,2),a=n.round(1.6*t,2),i=n.round(4*t,2),o="A "+i+","+i+" 0 0 1 ";return"M-"+e+","+r+o+e+","+r+o+"0,-"+a+o+"-"+e+","+r+"Z"}},"star-triangle-down":{n:20,f:function(t){var e=n.round(t*Math.sqrt(3)*.8,2),r=n.round(.8*t,2),a=n.round(1.6*t,2),i=n.round(4*t,2),o="A "+i+","+i+" 0 0 1 ";return"M"+e+",-"+r+o+"-"+e+",-"+r+o+"0,"+a+o+e+",-"+r+"Z"}},"star-square":{n:21,f:function(t){var e=n.round(1.1*t,2),r=n.round(2*t,2),a="A "+r+","+r+" 0 0 1 ";return"M-"+e+",-"+e+a+"-"+e+","+e+a+e+","+e+a+e+",-"+e+a+"-"+e+",-"+e+"Z"}},"star-diamond":{n:22,f:function(t){var e=n.round(1.4*t,2),r=n.round(1.9*t,2),a="A "+r+","+r+" 0 0 1 ";return"M-"+e+",0"+a+"0,"+e+a+e+",0"+a+"0,-"+e+a+"-"+e+",0Z"}},"diamond-tall":{n:23,f:function(t){var e=n.round(.7*t,2),r=n.round(1.4*t,2);return"M0,"+r+"L"+e+",0L0,-"+r+"L-"+e+",0Z"}},"diamond-wide":{n:24,f:function(t){var e=n.round(1.4*t,2),r=n.round(.7*t,2);return"M0,"+r+"L"+e+",0L0,-"+r+"L-"+e+",0Z"}},hourglass:{n:25,f:function(t){var e=n.round(t,2);return"M"+e+","+e+"H-"+e+"L"+e+",-"+e+"H-"+e+"Z"},noDot:!0},bowtie:{n:26,f:function(t){var e=n.round(t,2);return"M"+e+","+e+"V-"+e+"L-"+e+","+e+"V-"+e+"Z"},noDot:!0},"circle-cross":{n:27,f:function(t){var e=n.round(t,2);return"M0,"+e+"V-"+e+"M"+e+",0H-"+e+"M"+e+",0A"+e+","+e+" 0 1,1 0,-"+e+"A"+e+","+e+" 0 0,1 "+e+",0Z"},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(t){var e=n.round(t,2),r=n.round(t/Math.sqrt(2),2);return"M"+r+","+r+"L-"+r+",-"+r+"M"+r+",-"+r+"L-"+r+","+r+"M"+e+",0A"+e+","+e+" 0 1,1 0,-"+e+"A"+e+","+e+" 0 0,1 "+e+",0Z"},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(t){var e=n.round(t,2);return"M0,"+e+"V-"+e+"M"+e+",0H-"+e+"M"+e+","+e+"H-"+e+"V-"+e+"H"+e+"Z"},needLine:!0,noDot:!0},"square-x":{n:30,f:function(t){var e=n.round(t,2);return"M"+e+","+e+"L-"+e+",-"+e+"M"+e+",-"+e+"L-"+e+","+e+"M"+e+","+e+"H-"+e+"V-"+e+"H"+e+"Z"},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(t){var e=n.round(1.3*t,2);return"M"+e+",0L0,"+e+"L-"+e+",0L0,-"+e+"ZM0,-"+e+"V"+e+"M-"+e+",0H"+e},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(t){var e=n.round(1.3*t,2),r=n.round(.65*t,2);return"M"+e+",0L0,"+e+"L-"+e+",0L0,-"+e+"ZM-"+r+",-"+r+"L"+r+","+r+"M-"+r+","+r+"L"+r+",-"+r},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(t){var e=n.round(1.4*t,2);return"M0,"+e+"V-"+e+"M"+e+",0H-"+e},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(t){var e=n.round(t,2);return"M"+e+","+e+"L-"+e+",-"+e+"M"+e+",-"+e+"L-"+e+","+e},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(t){var e=n.round(1.2*t,2),r=n.round(.85*t,2);return"M0,"+e+"V-"+e+"M"+e+",0H-"+e+"M"+r+","+r+"L-"+r+",-"+r+"M"+r+",-"+r+"L-"+r+","+r},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(t){var e=n.round(t/2,2),r=n.round(t,2);return"M"+e+","+r+"V-"+r+"m-"+r+",0V"+r+"M"+r+","+e+"H-"+r+"m0,-"+r+"H"+r},needLine:!0,noFill:!0},"y-up":{n:37,f:function(t){var e=n.round(1.2*t,2),r=n.round(1.6*t,2),a=n.round(.8*t,2);return"M-"+e+","+a+"L0,0M"+e+","+a+"L0,0M0,-"+r+"L0,0"},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(t){var e=n.round(1.2*t,2),r=n.round(1.6*t,2),a=n.round(.8*t,2);return"M-"+e+",-"+a+"L0,0M"+e+",-"+a+"L0,0M0,"+r+"L0,0"},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(t){var e=n.round(1.2*t,2),r=n.round(1.6*t,2),a=n.round(.8*t,2);return"M"+a+","+e+"L0,0M"+a+",-"+e+"L0,0M-"+r+",0L0,0"},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(t){var e=n.round(1.2*t,2),r=n.round(1.6*t,2),a=n.round(.8*t,2);return"M-"+a+","+e+"L0,0M-"+a+",-"+e+"L0,0M"+r+",0L0,0"},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(t){var e=n.round(1.4*t,2);return"M"+e+",0H-"+e},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(t){var e=n.round(1.4*t,2);return"M0,"+e+"V-"+e},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(t){var e=n.round(t,2);return"M"+e+",-"+e+"L-"+e+","+e},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(t){var e=n.round(t,2);return"M"+e+","+e+"L-"+e+",-"+e},needLine:!0,noDot:!0,noFill:!0}}},{d3:164}],619:[function(t,e,r){"use strict";e.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",_deprecated:{opacity:{valType:"number",editType:"style"}}}},{}],620:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../../registry"),i=t("../../plots/cartesian/axes"),o=t("../../lib"),s=t("./compute_error");function l(t,e,r,a){var l=e["error_"+a]||{},c=[];if(l.visible&&-1!==["linear","log"].indexOf(r.type)){for(var u=s(l),h=0;h<t.length;h++){var f=t[h],p=f.i;if(void 0===p)p=h;else if(null===p)continue;var d=f[a];if(n(r.c2l(d))){var g=u(d,p);if(n(g[0])&&n(g[1])){var m=f[a+"s"]=d-g[0],v=f[a+"h"]=d+g[1];c.push(m,v)}}}var y=r._id,x=e._extremes[y],b=i.findExtremes(r,c,o.extendFlat({tozero:x.opts.tozero},{padded:!0}));x.min=x.min.concat(b.min),x.max=x.max.concat(b.max)}}e.exports=function(t){for(var e=t.calcdata,r=0;r<e.length;r++){var n=e[r],o=n[0].trace;if(!0===o.visible&&a.traceIs(o,"errorBarsOK")){var s=i.getFromId(t,o.xaxis),c=i.getFromId(t,o.yaxis);l(n,o,s,"x"),l(n,o,c,"y")}}}},{"../../lib":728,"../../plots/cartesian/axes":776,"../../registry":859,"./compute_error":621,"fast-isnumeric":236}],621:[function(t,e,r){"use strict";function n(t,e){return"percent"===t?function(t){return Math.abs(t*e/100)}:"constant"===t?function(){return Math.abs(e)}:"sqrt"===t?function(t){return Math.sqrt(Math.abs(t))}:void 0}e.exports=function(t){var e=t.type,r=t.symmetric;if("data"===e){var a=t.array||[];if(r)return function(t,e){var r=+a[e];return[r,r]};var i=t.arrayminus||[];return function(t,e){var r=+a[e],n=+i[e];return isNaN(r)&&isNaN(n)?[NaN,NaN]:[n||0,r||0]}}var o=n(e,t.value),s=n(e,t.valueminus);return r||void 0===t.valueminus?function(t){var e=o(t);return[e,e]}:function(t){return[s(t),o(t)]}}},{}],622:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../../registry"),i=t("../../lib"),o=t("../../plot_api/plot_template"),s=t("./attributes");e.exports=function(t,e,r,l){var c="error_"+l.axis,u=o.newContainer(e,c),h=t[c]||{};function f(t,e){return i.coerce(h,u,s,t,e)}if(!1!==f("visible",void 0!==h.array||void 0!==h.value||"sqrt"===h.type)){var p=f("type","array"in h?"data":"percent"),d=!0;"sqrt"!==p&&(d=f("symmetric",!(("data"===p?"arrayminus":"valueminus")in h))),"data"===p?(f("array"),f("traceref"),d||(f("arrayminus"),f("tracerefminus"))):"percent"!==p&&"constant"!==p||(f("value"),d||f("valueminus"));var g="copy_"+l.inherit+"style";if(l.inherit)(e["error_"+l.inherit]||{}).visible&&f(g,!(h.color||n(h.thickness)||n(h.width)));l.inherit&&u[g]||(f("color",r),f("thickness"),f("width",a.traceIs(e,"gl3d")?0:4))}}},{"../../lib":728,"../../plot_api/plot_template":766,"../../registry":859,"./attributes":619,"fast-isnumeric":236}],623:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../plot_api/edit_types").overrideAll,i=t("./attributes"),o={error_x:n.extendFlat({},i),error_y:n.extendFlat({},i)};delete o.error_x.copy_zstyle,delete o.error_y.copy_zstyle,delete o.error_y.copy_ystyle;var s={error_x:n.extendFlat({},i),error_y:n.extendFlat({},i),error_z:n.extendFlat({},i)};delete s.error_x.copy_ystyle,delete s.error_y.copy_ystyle,delete s.error_z.copy_ystyle,delete s.error_z.copy_zstyle,e.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:o,bar:o,histogram:o,scatter3d:a(s,"calc","nested"),scattergl:a(o,"calc","nested")}},supplyDefaults:t("./defaults"),calc:t("./calc"),makeComputeError:t("./compute_error"),plot:t("./plot"),style:t("./style"),hoverInfo:function(t,e,r){(e.error_y||{}).visible&&(r.yerr=t.yh-t.y,e.error_y.symmetric||(r.yerrneg=t.y-t.ys));(e.error_x||{}).visible&&(r.xerr=t.xh-t.x,e.error_x.symmetric||(r.xerrneg=t.x-t.xs))}}},{"../../lib":728,"../../plot_api/edit_types":759,"./attributes":619,"./calc":620,"./compute_error":621,"./defaults":622,"./plot":624,"./style":625}],624:[function(t,e,r){"use strict";var n=t("d3"),a=t("fast-isnumeric"),i=t("../drawing"),o=t("../../traces/scatter/subtypes");e.exports=function(t,e,r,s){var l=r.xaxis,c=r.yaxis,u=s&&s.duration>0;e.each((function(e){var h,f=e[0].trace,p=f.error_x||{},d=f.error_y||{};f.ids&&(h=function(t){return t.id});var g=o.hasMarkers(f)&&f.marker.maxdisplayed>0;d.visible||p.visible||(e=[]);var m=n.select(this).selectAll("g.errorbar").data(e,h);if(m.exit().remove(),e.length){p.visible||m.selectAll("path.xerror").remove(),d.visible||m.selectAll("path.yerror").remove(),m.style("opacity",1);var v=m.enter().append("g").classed("errorbar",!0);u&&v.style("opacity",0).transition().duration(s.duration).style("opacity",1),i.setClipUrl(m,r.layerClipId,t),m.each((function(t){var e=n.select(this),r=function(t,e,r){var n={x:e.c2p(t.x),y:r.c2p(t.y)};void 0!==t.yh&&(n.yh=r.c2p(t.yh),n.ys=r.c2p(t.ys),a(n.ys)||(n.noYS=!0,n.ys=r.c2p(t.ys,!0)));void 0!==t.xh&&(n.xh=e.c2p(t.xh),n.xs=e.c2p(t.xs),a(n.xs)||(n.noXS=!0,n.xs=e.c2p(t.xs,!0)));return n}(t,l,c);if(!g||t.vis){var i,o=e.select("path.yerror");if(d.visible&&a(r.x)&&a(r.yh)&&a(r.ys)){var h=d.width;i="M"+(r.x-h)+","+r.yh+"h"+2*h+"m-"+h+",0V"+r.ys,r.noYS||(i+="m-"+h+",0h"+2*h),!o.size()?o=e.append("path").style("vector-effect","non-scaling-stroke").classed("yerror",!0):u&&(o=o.transition().duration(s.duration).ease(s.easing)),o.attr("d",i)}else o.remove();var f=e.select("path.xerror");if(p.visible&&a(r.y)&&a(r.xh)&&a(r.xs)){var m=(p.copy_ystyle?d:p).width;i="M"+r.xh+","+(r.y-m)+"v"+2*m+"m0,-"+m+"H"+r.xs,r.noXS||(i+="m0,-"+m+"v"+2*m),!f.size()?f=e.append("path").style("vector-effect","non-scaling-stroke").classed("xerror",!0):u&&(f=f.transition().duration(s.duration).ease(s.easing)),f.attr("d",i)}else f.remove()}}))}}))}},{"../../traces/scatter/subtypes":1158,"../drawing":617,d3:164,"fast-isnumeric":236}],625:[function(t,e,r){"use strict";var n=t("d3"),a=t("../color");e.exports=function(t){t.each((function(t){var e=t[0].trace,r=e.error_y||{},i=e.error_x||{},o=n.select(this);o.selectAll("path.yerror").style("stroke-width",r.thickness+"px").call(a.stroke,r.color),i.copy_ystyle&&(i=r),o.selectAll("path.xerror").style("stroke-width",i.thickness+"px").call(a.stroke,i.color)}))}},{"../color":595,d3:164}],626:[function(t,e,r){"use strict";var n=t("../../plots/font_attributes"),a=t("./layout_attributes").hoverlabel,i=t("../../lib/extend").extendFlat;e.exports={hoverlabel:{bgcolor:i({},a.bgcolor,{arrayOk:!0}),bordercolor:i({},a.bordercolor,{arrayOk:!0}),font:n({arrayOk:!0,editType:"none"}),align:i({},a.align,{arrayOk:!0}),namelength:i({},a.namelength,{arrayOk:!0}),editType:"none"}}},{"../../lib/extend":719,"../../plots/font_attributes":804,"./layout_attributes":636}],627:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../registry");function i(t,e,r,a){a=a||n.identity,Array.isArray(t)&&(e[0][r]=a(t))}e.exports=function(t){var e=t.calcdata,r=t._fullLayout;function o(t){return function(e){return n.coerceHoverinfo({hoverinfo:e},{_module:t._module},r)}}for(var s=0;s<e.length;s++){var l=e[s],c=l[0].trace;if(!a.traceIs(c,"pie-like")){var u=a.traceIs(c,"2dMap")?i:n.fillArray;u(c.hoverinfo,l,"hi",o(c)),c.hovertemplate&&u(c.hovertemplate,l,"ht"),c.hoverlabel&&(u(c.hoverlabel.bgcolor,l,"hbg"),u(c.hoverlabel.bordercolor,l,"hbc"),u(c.hoverlabel.font.size,l,"hts"),u(c.hoverlabel.font.color,l,"htc"),u(c.hoverlabel.font.family,l,"htf"),u(c.hoverlabel.namelength,l,"hnl"),u(c.hoverlabel.align,l,"hta"))}}}},{"../../lib":728,"../../registry":859}],628:[function(t,e,r){"use strict";var n=t("../../registry"),a=t("./hover").hover;e.exports=function(t,e,r){var i=n.getComponentMethod("annotations","onClick")(t,t._hoverdata);function o(){t.emit("plotly_click",{points:t._hoverdata,event:e})}void 0!==r&&a(t,e,r,!0),t._hoverdata&&e&&e.target&&(i&&i.then?i.then(o):o(),e.stopImmediatePropagation&&e.stopImmediatePropagation())}},{"../../registry":859,"./hover":632}],629:[function(t,e,r){"use strict";e.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}},{}],630:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./attributes"),i=t("./hoverlabel_defaults");e.exports=function(t,e,r,o){var s=n.extendFlat({},o.hoverlabel);e.hovertemplate&&(s.namelength=-1),i(t,e,(function(r,i){return n.coerce(t,e,a,r,i)}),s)}},{"../../lib":728,"./attributes":626,"./hoverlabel_defaults":633}],631:[function(t,e,r){"use strict";var n=t("../../lib");r.getSubplot=function(t){return t.subplot||t.xaxis+t.yaxis||t.geo},r.isTraceInSubplots=function(t,e){if("splom"===t.type){for(var n=t.xaxes||[],a=t.yaxes||[],i=0;i<n.length;i++)for(var o=0;o<a.length;o++)if(-1!==e.indexOf(n[i]+a[o]))return!0;return!1}return-1!==e.indexOf(r.getSubplot(t))},r.flat=function(t,e){for(var r=new Array(t.length),n=0;n<t.length;n++)r[n]=e;return r},r.p2c=function(t,e){for(var r=new Array(t.length),n=0;n<t.length;n++)r[n]=t[n].p2c(e);return r},r.getDistanceFunction=function(t,e,n,a){return"closest"===t?a||r.quadrature(e,n):"x"===t.charAt(0)?e:n},r.getClosest=function(t,e,r){if(!1!==r.index)r.index>=0&&r.index<t.length?r.distance=0:r.index=!1;else for(var n=0;n<t.length;n++){var a=e(t[n]);a<=r.distance&&(r.index=n,r.distance=a)}return r},r.inbox=function(t,e,r){return t*e<0||0===t?r:1/0},r.quadrature=function(t,e){return function(r){var n=t(r),a=e(r);return Math.sqrt(n*n+a*a)}},r.makeEventData=function(t,e,n){var a="index"in t?t.index:t.pointNumber,i={data:e._input,fullData:e,curveNumber:e.index,pointNumber:a};if(e._indexToPoints){var o=e._indexToPoints[a];1===o.length?i.pointIndex=o[0]:i.pointIndices=o}else i.pointIndex=a;return e._module.eventData?i=e._module.eventData(i,t,e,n,a):("xVal"in t?i.x=t.xVal:"x"in t&&(i.x=t.x),"yVal"in t?i.y=t.yVal:"y"in t&&(i.y=t.y),t.xa&&(i.xaxis=t.xa),t.ya&&(i.yaxis=t.ya),void 0!==t.zLabelVal&&(i.z=t.zLabelVal)),r.appendArrayPointValue(i,e,a),i},r.appendArrayPointValue=function(t,e,r){var a=e._arrayAttrs;if(a)for(var s=0;s<a.length;s++){var l=a[s],c=i(l);if(void 0===t[c]){var u=o(n.nestedProperty(e,l).get(),r);void 0!==u&&(t[c]=u)}}},r.appendArrayMultiPointValues=function(t,e,r){var a=e._arrayAttrs;if(a)for(var s=0;s<a.length;s++){var l=a[s],c=i(l);if(void 0===t[c]){for(var u=n.nestedProperty(e,l).get(),h=new Array(r.length),f=0;f<r.length;f++)h[f]=o(u,r[f]);t[c]=h}}};var a={ids:"id",locations:"location",labels:"label",values:"value","marker.colors":"color",parents:"parent"};function i(t){return a[t]||t}function o(t,e){return Array.isArray(e)?Array.isArray(t)&&Array.isArray(t[e[0]])?t[e[0]][e[1]]:void 0:t[e]}var s={x:!0,y:!0},l={"x unified":!0,"y unified":!0};r.isUnifiedHover=function(t){return"string"==typeof t&&!!l[t]},r.isXYhover=function(t){return"string"==typeof t&&!!s[t]}},{"../../lib":728}],632:[function(t,e,r){"use strict";var n=t("d3"),a=t("fast-isnumeric"),i=t("tinycolor2"),o=t("../../lib"),s=t("../../lib/events"),l=t("../../lib/svg_text_utils"),c=t("../../lib/override_cursor"),u=t("../drawing"),h=t("../color"),f=t("../dragelement"),p=t("../../plots/cartesian/axes"),d=t("../../registry"),g=t("./helpers"),m=t("./constants"),v=t("../legend/defaults"),y=t("../legend/draw"),x=m.YANGLE,b=Math.PI*x/180,_=1/Math.sin(b),w=Math.cos(b),T=Math.sin(b),k=m.HOVERARROWSIZE,A=m.HOVERTEXTPAD;function M(t){return[t.trace.index,t.index,t.x0,t.y0,t.name,t.attr,t.xa,t.ya||""].join(",")}r.hover=function(t,e,r,i){t=o.getGraphDiv(t),o.throttle(t._fullLayout._uid+m.HOVERID,m.HOVERMINTIME,(function(){!function(t,e,r,i){r||(r="xy");var l=Array.isArray(r)?r:[r],u=t._fullLayout,p=u._plots||[],m=p[r],v=u._has("cartesian");if(m){var y=m.overlays.map((function(t){return t.id}));l=l.concat(y)}for(var x=l.length,b=new Array(x),w=new Array(x),T=!1,k=0;k<x;k++){var A=l[k];if(p[A])T=!0,b[k]=p[A].xaxis,w[k]=p[A].yaxis;else{if(!u[A]||!u[A]._subplot)return void o.warn("Unrecognized subplot: "+A);var S=u[A]._subplot;b[k]=S.xaxis,w[k]=S.yaxis}}var C=e.hovermode||u.hovermode;C&&!T&&(C="closest");if(-1===["x","y","closest","x unified","y unified"].indexOf(C)||!t.calcdata||t.querySelector(".zoombox")||t._dragging)return f.unhoverRaw(t,e);var O,D,R,F,B,N,j,V,U,q,H,G,Y,W=-1===u.hoverdistance?1/0:u.hoverdistance,Z=-1===u.spikedistance?1/0:u.spikedistance,X=[],J=[],K={hLinePoint:null,vLinePoint:null},Q=!1;if(Array.isArray(e))for(C="array",R=0;R<e.length;R++)(B=t.calcdata[e[R].curveNumber||0])&&(N=B[0].trace,"skip"!==B[0].trace.hoverinfo&&(J.push(B),"h"===N.orientation&&(Q=!0)));else{for(F=0;F<t.calcdata.length;F++)B=t.calcdata[F],"skip"!==(N=B[0].trace).hoverinfo&&g.isTraceInSubplots(N,l)&&(J.push(B),"h"===N.orientation&&(Q=!0));var $,tt;if(!e.target)$="xpx"in e?e.xpx:b[0]._length/2,tt="ypx"in e?e.ypx:w[0]._length/2;else{if(!1===s.triggerHandler(t,"plotly_beforehover",e))return;var et=e.target.getBoundingClientRect();if($=e.clientX-et.left,tt=e.clientY-et.top,$<0||$>b[0]._length||tt<0||tt>w[0]._length)return f.unhoverRaw(t,e)}if(e.pointerX=$+b[0]._offset,e.pointerY=tt+w[0]._offset,O="xval"in e?g.flat(l,e.xval):g.p2c(b,$),D="yval"in e?g.flat(l,e.yval):g.p2c(w,tt),!a(O[0])||!a(D[0]))return o.warn("Fx.hover failed",e,t),f.unhoverRaw(t,e)}var rt=1/0;function nt(t,r){for(F=0;F<J.length;F++)if((B=J[F])&&B[0]&&B[0].trace&&!0===(N=B[0].trace).visible&&0!==N._length&&-1===["carpet","contourcarpet"].indexOf(N._module.name)){if("splom"===N.type?j=l[V=0]:(j=g.getSubplot(N),V=l.indexOf(j)),U=C,g.isUnifiedHover(U)&&(U=U.charAt(0)),G={cd:B,trace:N,xa:b[V],ya:w[V],maxHoverDistance:W,maxSpikeDistance:Z,index:!1,distance:Math.min(rt,W),spikeDistance:1/0,xSpike:void 0,ySpike:void 0,color:h.defaultLine,name:N.name,x0:void 0,x1:void 0,y0:void 0,y1:void 0,xLabelVal:void 0,yLabelVal:void 0,zLabelVal:void 0,text:void 0},u[j]&&(G.subplot=u[j]._subplot),u._splomScenes&&u._splomScenes[N.uid]&&(G.scene=u._splomScenes[N.uid]),Y=X.length,"array"===U){var n=e[F];"pointNumber"in n?(G.index=n.pointNumber,U="closest"):(U="","xval"in n&&(q=n.xval,U="x"),"yval"in n&&(H=n.yval,U=U?"closest":"y"))}else void 0!==t&&void 0!==r?(q=t,H=r):(q=O[V],H=D[V]);if(0!==W)if(N._module&&N._module.hoverPoints){var i=N._module.hoverPoints(G,q,H,U,u._hoverlayer);if(i)for(var s,c=0;c<i.length;c++)s=i[c],a(s.x0)&&a(s.y0)&&X.push(P(s,C))}else o.log("Unrecognized trace type in hover:",N);if("closest"===C&&X.length>Y&&(X.splice(0,Y),rt=X[0].distance),v&&0!==Z&&0===X.length){G.distance=Z,G.index=!1;var f=N._module.hoverPoints(G,q,H,"closest",u._hoverlayer);if(f&&(f=f.filter((function(t){return t.spikeDistance<=Z}))),f&&f.length){var p,d=f.filter((function(t){return t.xa.showspikes&&"hovered data"!==t.xa.spikesnap}));if(d.length){var m=d[0];a(m.x0)&&a(m.y0)&&(p=it(m),(!K.vLinePoint||K.vLinePoint.spikeDistance>p.spikeDistance)&&(K.vLinePoint=p))}var y=f.filter((function(t){return t.ya.showspikes&&"hovered data"!==t.ya.spikesnap}));if(y.length){var x=y[0];a(x.x0)&&a(x.y0)&&(p=it(x),(!K.hLinePoint||K.hLinePoint.spikeDistance>p.spikeDistance)&&(K.hLinePoint=p))}}}}}function at(t,e){for(var r,n=null,a=1/0,i=0;i<t.length;i++)(r=t[i].spikeDistance)<=a&&r<=e&&(n=t[i],a=r);return n}function it(t){return t?{xa:t.xa,ya:t.ya,x:void 0!==t.xSpike?t.xSpike:(t.x0+t.x1)/2,y:void 0!==t.ySpike?t.ySpike:(t.y0+t.y1)/2,distance:t.distance,spikeDistance:t.spikeDistance,curveNumber:t.trace.index,color:t.color,pointNumber:t.index}:null}nt();var ot={fullLayout:u,container:u._hoverlayer,outerContainer:u._paperdiv,event:e},st=t._spikepoints,lt={vLinePoint:K.vLinePoint,hLinePoint:K.hLinePoint};if(t._spikepoints=lt,v&&0!==Z&&0!==X.length){var ct=at(X.filter((function(t){return t.ya.showspikes})),Z);K.hLinePoint=it(ct);var ut=at(X.filter((function(t){return t.xa.showspikes})),Z);K.vLinePoint=it(ut)}if(0===X.length){var ht=f.unhoverRaw(t,e);return!v||null===K.hLinePoint&&null===K.vLinePoint||z(st)&&I(t,K,ot),ht}v&&z(st)&&I(t,K,ot);if(X.sort((function(t,e){return t.distance-e.distance})),g.isXYhover(U)&&0!==X[0].length&&"splom"!==X[0].trace.type){var ft=X[0],pt=ft.cd[ft.index],dt="group"===u.boxmode||"group"===u.violinmode,gt=ft.xVal,mt=ft.xa;"category"===mt.type&&(gt=mt._categoriesMap[gt]),"date"===mt.type&&(gt=mt.d2c(gt)),pt&&pt.t&&pt.t.posLetter===mt._id&&dt&&(gt+=pt.t.dPos);var vt=ft.yVal;"category"===(mt=ft.ya).type&&(vt=mt._categoriesMap[vt]),"date"===mt.type&&(vt=mt.d2c(vt)),pt&&pt.t&&pt.t.posLetter===mt._id&&dt&&(vt+=pt.t.dPos),nt(gt,vt);var yt={};X=X.filter((function(t){var e=M(t);if(!yt[e])return yt[e]=!0,yt[e]}))}var xt=t._hoverdata,bt=[];for(R=0;R<X.length;R++){var _t=X[R],wt=g.makeEventData(_t,_t.trace,_t.cd);if(!1!==_t.hovertemplate){var Tt=!1;_t.cd[_t.index]&&_t.cd[_t.index].ht&&(Tt=_t.cd[_t.index].ht),_t.hovertemplate=Tt||_t.trace.hovertemplate||!1}_t.eventData=[wt],bt.push(wt)}t._hoverdata=bt;var kt="y"===C&&(J.length>1||X.length>1)||"closest"===C&&Q&&X.length>1,At=h.combine(u.plot_bgcolor||h.background,u.paper_bgcolor),Mt={hovermode:C,rotateLabels:kt,bgColor:At,container:u._hoverlayer,outerContainer:u._paperdiv,commonLabelOpts:u.hoverlabel,hoverdistance:u.hoverdistance},St=E(X,Mt,t);g.isUnifiedHover(C)||(!function(t,e,r){var n,a,i,o,s,l,c,u=0,h=1,f=t.size(),p=new Array(f),d=0;function g(t){var e=t[0],r=t[t.length-1];if(a=e.pmin-e.pos-e.dp+e.size,i=r.pos+r.dp+r.size-e.pmax,a>.01){for(s=t.length-1;s>=0;s--)t[s].dp+=a;n=!1}if(!(i<.01)){if(a<-.01){for(s=t.length-1;s>=0;s--)t[s].dp-=i;n=!1}if(n){var c=0;for(o=0;o<t.length;o++)(l=t[o]).pos+l.dp+l.size>e.pmax&&c++;for(o=t.length-1;o>=0&&!(c<=0);o--)(l=t[o]).pos>e.pmax-1&&(l.del=!0,c--);for(o=0;o<t.length&&!(c<=0);o++)if((l=t[o]).pos<e.pmin+1)for(l.del=!0,c--,i=2*l.size,s=t.length-1;s>=0;s--)t[s].dp-=i;for(o=t.length-1;o>=0&&!(c<=0);o--)(l=t[o]).pos+l.dp+l.size>e.pmax&&(l.del=!0,c--)}}}t.each((function(t){var n=t[e],a="x"===n._id.charAt(0),i=n.range;0===d&&i&&i[0]>i[1]!==a&&(h=-1),p[d++]=[{datum:t,traceIndex:t.trace.index,dp:0,pos:t.pos,posref:t.posref,size:t.by*(a?_:1)/2,pmin:0,pmax:a?r.width:r.height}]})),p.sort((function(t,e){return t[0].posref-e[0].posref||h*(e[0].traceIndex-t[0].traceIndex)}));for(;!n&&u<=f;){for(u++,n=!0,o=0;o<p.length-1;){var m=p[o],v=p[o+1],y=m[m.length-1],x=v[0];if((a=y.pos+y.dp+y.size-x.pos-x.dp+x.size)>.01&&y.pmin===x.pmin&&y.pmax===x.pmax){for(s=v.length-1;s>=0;s--)v[s].dp+=a;for(m.push.apply(m,v),p.splice(o+1,1),c=0,s=m.length-1;s>=0;s--)c+=m[s].dp;for(i=c/m.length,s=m.length-1;s>=0;s--)m[s].dp-=i;n=!1}else o++}p.forEach(g)}for(o=p.length-1;o>=0;o--){var b=p[o];for(s=b.length-1;s>=0;s--){var w=b[s],T=w.datum;T.offset=w.dp,T.del=w.del}}}(St,kt?"xa":"ya",u),L(St,kt));if(e.target&&e.target.tagName){var Et=d.getComponentMethod("annotations","hasClickToShow")(t,bt);c(n.select(e.target),Et?"pointer":"")}if(!e.target||i||!function(t,e,r){if(!r||r.length!==t._hoverdata.length)return!0;for(var n=r.length-1;n>=0;n--){var a=r[n],i=t._hoverdata[n];if(a.curveNumber!==i.curveNumber||String(a.pointNumber)!==String(i.pointNumber)||String(a.pointNumbers)!==String(i.pointNumbers))return!0}return!1}(t,0,xt))return;xt&&t.emit("plotly_unhover",{event:e,points:xt});t.emit("plotly_hover",{event:e,points:t._hoverdata,xaxes:b,yaxes:w,xvals:O,yvals:D})}(t,e,r,i)}))},r.loneHover=function(t,e){var r=!0;Array.isArray(t)||(r=!1,t=[t]);var a=t.map((function(t){return{color:t.color||h.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,nameLength:t.nameLength,textAlign:t.textAlign,trace:t.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:t.hovertemplate||!1,eventData:t.eventData||!1,hovertemplateLabels:t.hovertemplateLabels||!1}})),i=n.select(e.container),o=e.outerContainer?n.select(e.outerContainer):i,s={hovermode:"closest",rotateLabels:!1,bgColor:e.bgColor||h.background,container:i,outerContainer:o},l=E(a,s,e.gd),c=0,u=0;return l.sort((function(t,e){return t.y0-e.y0})).each((function(t,r){var n=t.y0-t.by/2;t.offset=n-5<c?c-n+5:0,c=n+t.by+t.offset,r===e.anchorIndex&&(u=t.offset)})).each((function(t){t.offset-=u})),L(l,s.rotateLabels),r?l:l.node()};var S=/<extra>([\s\S]*)<\/extra>/;function E(t,e,r){var a=r._fullLayout,i=e.hovermode,s=e.rotateLabels,c=e.bgColor,f=e.container,p=e.outerContainer,d=e.commonLabelOpts||{},b=e.fontFamily||m.HOVERFONT,_=e.fontSize||m.HOVERFONTSIZE,w=t[0],T=w.xa,S=w.ya,E="y"===i.charAt(0)?"yLabel":"xLabel",L=w[E],P=(String(L)||"").split(" ")[0],I=p.node().getBoundingClientRect(),z=I.top,O=I.width,D=I.height,R=void 0!==L&&w.distance<=e.hoverdistance&&("x"===i||"y"===i);if(R){var F,B,N=!0;for(F=0;F<t.length;F++)if(N&&void 0===t[F].zLabel&&(N=!1),B=t[F].hoverinfo||t[F].trace.hoverinfo){var j=Array.isArray(B)?B:B.split("+");if(-1===j.indexOf("all")&&-1===j.indexOf(i)){R=!1;break}}N&&(R=!1)}var V=f.selectAll("g.axistext").data(R?[0]:[]);function U(t){return t.filter((function(t){return void 0!==t.zLabelVal||(t[E]||"").split(" ")[0]===P}))}if(V.enter().append("g").classed("axistext",!0),V.exit().remove(),V.each((function(){var e=n.select(this),s=o.ensureSingle(e,"path","",(function(t){t.style({"stroke-width":"1px"})})),c=o.ensureSingle(e,"text","",(function(t){t.attr("data-notex",1)})),f=d.bgcolor||h.defaultLine,p=d.bordercolor||h.contrast(f),g=h.contrast(f),m={family:d.font.family||b,size:d.font.size||_,color:d.font.color||g};s.style({fill:f,stroke:p}),c.text(L).call(u.font,m).call(l.positionText,0,0).call(l.convertToTspans,r),e.attr("transform","");var v,y,x=c.node().getBoundingClientRect();if("x"===i){var M="top"===T.side?"-":"";c.attr("text-anchor","middle").call(l.positionText,0,"top"===T.side?z-x.bottom-k-A:z-x.top+k+A),v=T._offset+(w.x0+w.x1)/2,y=S._offset+("top"===T.side?0:S._length);var E=x.width/2+A;v<E?(v=E,s.attr("d","M-"+(E-k)+",0L-"+(E-2*k)+","+M+k+"H"+(A+x.width/2)+"v"+M+(2*A+x.height)+"H-"+E+"V"+M+k+"Z")):v>a.width-E?(v=a.width-E,s.attr("d","M"+(E-k)+",0L"+E+","+M+k+"v"+M+(2*A+x.height)+"H-"+E+"V"+M+k+"H"+(E-2*k)+"Z")):s.attr("d","M0,0L"+k+","+M+k+"H"+(A+x.width/2)+"v"+M+(2*A+x.height)+"H-"+(A+x.width/2)+"V"+M+k+"H-"+k+"Z")}else{var C,P,I;"right"===S.side?(C="start",P=1,I="",v=T._offset+T._length):(C="end",P=-1,I="-",v=T._offset),y=S._offset+(w.y0+w.y1)/2,c.attr("text-anchor",C),s.attr("d","M0,0L"+I+k+","+k+"V"+(A+x.height/2)+"h"+I+(2*A+x.width)+"V-"+(A+x.height/2)+"H"+I+k+"V-"+k+"Z");var O,D=x.height/2,R=z-x.top-D,F="clip"+a._uid+"commonlabel"+S._id;if(v<x.width+2*A+k){O="M-"+(k+A)+"-"+D+"h-"+(x.width-A)+"V"+D+"h"+(x.width-A)+"Z";var B=x.width-v+A;l.positionText(c,B,R),"end"===C&&c.selectAll("tspan").each((function(){var t=n.select(this),e=u.tester.append("text").text(t.text()).call(u.font,m),r=e.node().getBoundingClientRect();Math.round(r.width)<Math.round(x.width)&&t.attr("x",B-r.width),e.remove()}))}else l.positionText(c,P*(A+k),R),O=null;var N=a._topclips.selectAll("#"+F).data(O?[0]:[]);N.enter().append("clipPath").attr("id",F).append("path"),N.exit().remove(),N.select("path").attr("d",O),u.setClipUrl(c,O?F:null,r)}e.attr("transform","translate("+v+","+y+")"),t=U(t)})),g.isUnifiedHover(i)){if(f.selectAll("g.hovertext").remove(),void 0!==L&&w.distance<=e.hoverdistance&&(t=U(t)),0===t.length)return;var q={showlegend:!0,legend:{title:{text:L,font:a.hoverlabel.font},font:a.hoverlabel.font,bgcolor:a.hoverlabel.bgcolor,bordercolor:a.hoverlabel.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:a.legend?a.legend.traceorder:void 0,orientation:"v"}},H={};v(q,H,r._fullData);var G=H.legend;G.entries=[];for(var Y=0;Y<t.length;Y++){var W=C(t[Y],!0,i,a,L),Z=W[0],X=W[1],J=t[Y];J.name=X,J.text=""!==X?X+" : "+Z:Z;var K=J.cd[J.index];K&&(K.mc&&(J.mc=K.mc),K.mcc&&(J.mc=K.mcc),K.mlc&&(J.mlc=K.mlc),K.mlcc&&(J.mlc=K.mlcc),K.mlw&&(J.mlw=K.mlw),K.mrc&&(J.mrc=K.mrc),K.dir&&(J.dir=K.dir)),J._distinct=!0,G.entries.push([J])}G.entries.sort((function(t,e){return t[0].trace.index-e[0].trace.index})),G.layer=f,y(r,G);var Q=o.mean(t.map((function(t){return(t.y0+t.y1)/2}))),$=o.mean(t.map((function(t){return(t.x0+t.x1)/2}))),tt=f.select("g.legend"),et=tt.node().getBoundingClientRect();$+=T._offset,Q+=S._offset-et.height/2;var rt=et.width+2*A;!($+rt<=O)&&$-rt>=0?$-=rt:$+=2*A;var nt=et.height+2*A,at=Q+nt>=D;return nt<=D&&(Q<=z?Q=S._offset+2*A:at&&(Q=D-nt)),tt.attr("transform","translate("+$+","+Q+")"),tt}var it=f.selectAll("g.hovertext").data(t,(function(t){return M(t)}));return it.enter().append("g").classed("hovertext",!0).each((function(){var t=n.select(this);t.append("rect").call(h.fill,h.addOpacity(c,.8)),t.append("text").classed("name",!0),t.append("path").style("stroke-width","1px"),t.append("text").classed("nums",!0).call(u.font,b,_)})),it.exit().remove(),it.each((function(t){var e=n.select(this).attr("transform",""),o=t.bgcolor||t.color,f=h.combine(h.opacity(o)?o:h.defaultLine,c),p=h.combine(h.opacity(t.color)?t.color:h.defaultLine,c),d=t.borderColor||h.contrast(f),g=C(t,R,i,a,L,e),m=g[0],v=g[1],y=e.select("text.nums").call(u.font,t.fontFamily||b,t.fontSize||_,t.fontColor||d).text(m).attr("data-notex",1).call(l.positionText,0,0).call(l.convertToTspans,r),w=e.select("text.name"),T=0,M=0;if(v&&v!==m){w.call(u.font,t.fontFamily||b,t.fontSize||_,p).text(v).attr("data-notex",1).call(l.positionText,0,0).call(l.convertToTspans,r);var S=w.node().getBoundingClientRect();T=S.width+2*A,M=S.height+2*A}else w.remove(),e.select("rect").remove();e.select("path").style({fill:f,stroke:d});var E,P,I=y.node().getBoundingClientRect(),F=t.xa._offset+(t.x0+t.x1)/2,B=t.ya._offset+(t.y0+t.y1)/2,N=Math.abs(t.x1-t.x0),j=Math.abs(t.y1-t.y0),V=I.width+k+A+T;if(t.ty0=z-I.top,t.bx=I.width+2*A,t.by=Math.max(I.height+2*A,M),t.anchor="start",t.txwidth=I.width,t.tx2width=T,t.offset=0,s)t.pos=F,E=B+j/2+V<=D,P=B-j/2-V>=0,"top"!==t.idealAlign&&E||!P?E?(B+=j/2,t.anchor="start"):t.anchor="middle":(B-=j/2,t.anchor="end");else if(t.pos=B,E=F+N/2+V<=O,P=F-N/2-V>=0,"left"!==t.idealAlign&&E||!P)if(E)F+=N/2,t.anchor="start";else{t.anchor="middle";var U=V/2,q=F+U-O,H=F-U;q>0&&(F-=q),H<0&&(F+=-H)}else F-=N/2,t.anchor="end";y.attr("text-anchor",t.anchor),T&&w.attr("text-anchor",t.anchor),e.attr("transform","translate("+F+","+B+")"+(s?"rotate("+x+")":""))})),it}function C(t,e,r,n,a,i){var s="",l="";void 0!==t.nameOverride&&(t.name=t.nameOverride),t.name&&(t.trace._meta&&(t.name=o.templateString(t.name,t.trace._meta)),s=O(t.name,t.nameLength)),void 0!==t.zLabel?(void 0!==t.xLabel&&(l+="x: "+t.xLabel+"<br>"),void 0!==t.yLabel&&(l+="y: "+t.yLabel+"<br>"),"choropleth"!==t.trace.type&&"choroplethmapbox"!==t.trace.type&&(l+=(l?"z: ":"")+t.zLabel)):e&&t[r.charAt(0)+"Label"]===a?l=t[("x"===r.charAt(0)?"y":"x")+"Label"]||"":void 0===t.xLabel?void 0!==t.yLabel&&"scattercarpet"!==t.trace.type&&(l=t.yLabel):l=void 0===t.yLabel?t.xLabel:"("+t.xLabel+", "+t.yLabel+")",!t.text&&0!==t.text||Array.isArray(t.text)||(l+=(l?"<br>":"")+t.text),void 0!==t.extraText&&(l+=(l?"<br>":"")+t.extraText),i&&""===l&&!t.hovertemplate&&(""===s&&i.remove(),l=s);var c=n._d3locale,u=t.hovertemplate||!1,h=t.hovertemplateLabels||t,f=t.eventData[0]||{};return u&&(l=(l=o.hovertemplateString(u,h,c,f,t.trace._meta)).replace(S,(function(e,r){return s=O(r,t.nameLength),""}))),[l,s]}function L(t,e){t.each((function(t){var r=n.select(this);if(t.del)return r.remove();var a=r.select("text.nums"),i=t.anchor,o="end"===i?-1:1,s={start:1,end:-1,middle:0}[i],c=s*(k+A),h=c+s*(t.txwidth+A),f=0,p=t.offset;"middle"===i&&(c-=t.tx2width/2,h+=t.txwidth/2+A),e&&(p*=-T,f=t.offset*w),r.select("path").attr("d","middle"===i?"M-"+(t.bx/2+t.tx2width/2)+","+(p-t.by/2)+"h"+t.bx+"v"+t.by+"h-"+t.bx+"Z":"M0,0L"+(o*k+f)+","+(k+p)+"v"+(t.by/2-k)+"h"+o*t.bx+"v-"+t.by+"H"+(o*k+f)+"V"+(p-k)+"Z");var d=c+f,g=p+t.ty0-t.by/2+A,m=t.textAlign||"auto";"auto"!==m&&("left"===m&&"start"!==i?(a.attr("text-anchor","start"),d="middle"===i?-t.bx/2-t.tx2width/2+A:-t.bx-A):"right"===m&&"end"!==i&&(a.attr("text-anchor","end"),d="middle"===i?t.bx/2-t.tx2width/2-A:t.bx+A)),a.call(l.positionText,d,g),t.tx2width&&(r.select("text.name").call(l.positionText,h+s*A+f,p+t.ty0-t.by/2+A),r.select("rect").call(u.setRect,h+(s-1)*t.tx2width/2+f,p-t.by/2-1,t.tx2width,t.by+2))}))}function P(t,e){var r=t.index,n=t.trace||{},i=t.cd[0],s=t.cd[r]||{};function l(t){return t||a(t)&&0===t}var c=Array.isArray(r)?function(t,e){var a=o.castOption(i,r,t);return l(a)?a:o.extractOption({},n,"",e)}:function(t,e){return o.extractOption(s,n,t,e)};function u(e,r,n){var a=c(r,n);l(a)&&(t[e]=a)}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("nameLength","hnl","hoverlabel.namelength"),u("textAlign","hta","hoverlabel.align"),t.posref="y"===e||"closest"===e&&"h"===n.orientation?t.xa._offset+(t.x0+t.x1)/2:t.ya._offset+(t.y0+t.y1)/2,t.x0=o.constrain(t.x0,0,t.xa._length),t.x1=o.constrain(t.x1,0,t.xa._length),t.y0=o.constrain(t.y0,0,t.ya._length),t.y1=o.constrain(t.y1,0,t.ya._length),void 0!==t.xLabelVal&&(t.xLabel="xLabel"in t?t.xLabel:p.hoverLabelText(t.xa,t.xLabelVal),t.xVal=t.xa.c2d(t.xLabelVal)),void 0!==t.yLabelVal&&(t.yLabel="yLabel"in t?t.yLabel:p.hoverLabelText(t.ya,t.yLabelVal),t.yVal=t.ya.c2d(t.yLabelVal)),void 0!==t.zLabelVal&&void 0===t.zLabel&&(t.zLabel=String(t.zLabelVal)),!(isNaN(t.xerr)||"log"===t.xa.type&&t.xerr<=0)){var h=p.tickText(t.xa,t.xa.c2l(t.xerr),"hover").text;void 0!==t.xerrneg?t.xLabel+=" +"+h+" / -"+p.tickText(t.xa,t.xa.c2l(t.xerrneg),"hover").text:t.xLabel+=" \xb1 "+h,"x"===e&&(t.distance+=1)}if(!(isNaN(t.yerr)||"log"===t.ya.type&&t.yerr<=0)){var f=p.tickText(t.ya,t.ya.c2l(t.yerr),"hover").text;void 0!==t.yerrneg?t.yLabel+=" +"+f+" / -"+p.tickText(t.ya,t.ya.c2l(t.yerrneg),"hover").text:t.yLabel+=" \xb1 "+f,"y"===e&&(t.distance+=1)}var d=t.hoverinfo||t.trace.hoverinfo;return d&&"all"!==d&&(-1===(d=Array.isArray(d)?d:d.split("+")).indexOf("x")&&(t.xLabel=void 0),-1===d.indexOf("y")&&(t.yLabel=void 0),-1===d.indexOf("z")&&(t.zLabel=void 0),-1===d.indexOf("text")&&(t.text=void 0),-1===d.indexOf("name")&&(t.name=void 0)),t}function I(t,e,r){var n,a,o=r.container,s=r.fullLayout,l=s._size,c=r.event,f=!!e.hLinePoint,d=!!e.vLinePoint;if(o.selectAll(".spikeline").remove(),d||f){var g=h.combine(s.plot_bgcolor,s.paper_bgcolor);if(f){var m,v,y=e.hLinePoint;n=y&&y.xa,"cursor"===(a=y&&y.ya).spikesnap?(m=c.pointerX,v=c.pointerY):(m=n._offset+y.x,v=a._offset+y.y);var x,b,_=i.readability(y.color,g)<1.5?h.contrast(g):y.color,w=a.spikemode,T=a.spikethickness,k=a.spikecolor||_,A=p.getPxPosition(t,a);if(-1!==w.indexOf("toaxis")||-1!==w.indexOf("across")){if(-1!==w.indexOf("toaxis")&&(x=A,b=m),-1!==w.indexOf("across")){var M=a._counterDomainMin,S=a._counterDomainMax;"free"===a.anchor&&(M=Math.min(M,a.position),S=Math.max(S,a.position)),x=l.l+M*l.w,b=l.l+S*l.w}o.insert("line",":first-child").attr({x1:x,x2:b,y1:v,y2:v,"stroke-width":T,stroke:k,"stroke-dasharray":u.dashStyle(a.spikedash,T)}).classed("spikeline",!0).classed("crisp",!0),o.insert("line",":first-child").attr({x1:x,x2:b,y1:v,y2:v,"stroke-width":T+2,stroke:g}).classed("spikeline",!0).classed("crisp",!0)}-1!==w.indexOf("marker")&&o.insert("circle",":first-child").attr({cx:A+("right"!==a.side?T:-T),cy:v,r:T,fill:k}).classed("spikeline",!0)}if(d){var E,C,L=e.vLinePoint;n=L&&L.xa,a=L&&L.ya,"cursor"===n.spikesnap?(E=c.pointerX,C=c.pointerY):(E=n._offset+L.x,C=a._offset+L.y);var P,I,z=i.readability(L.color,g)<1.5?h.contrast(g):L.color,O=n.spikemode,D=n.spikethickness,R=n.spikecolor||z,F=p.getPxPosition(t,n);if(-1!==O.indexOf("toaxis")||-1!==O.indexOf("across")){if(-1!==O.indexOf("toaxis")&&(P=F,I=C),-1!==O.indexOf("across")){var B=n._counterDomainMin,N=n._counterDomainMax;"free"===n.anchor&&(B=Math.min(B,n.position),N=Math.max(N,n.position)),P=l.t+(1-N)*l.h,I=l.t+(1-B)*l.h}o.insert("line",":first-child").attr({x1:E,x2:E,y1:P,y2:I,"stroke-width":D,stroke:R,"stroke-dasharray":u.dashStyle(n.spikedash,D)}).classed("spikeline",!0).classed("crisp",!0),o.insert("line",":first-child").attr({x1:E,x2:E,y1:P,y2:I,"stroke-width":D+2,stroke:g}).classed("spikeline",!0).classed("crisp",!0)}-1!==O.indexOf("marker")&&o.insert("circle",":first-child").attr({cx:E,cy:F-("top"!==n.side?D:-D),r:D,fill:R}).classed("spikeline",!0)}}}function z(t,e){return!e||(e.vLinePoint!==t._spikepoints.vLinePoint||e.hLinePoint!==t._spikepoints.hLinePoint)}function O(t,e){return l.plainText(t||"",{len:e,allowedTags:["br","sub","sup","b","i","em"]})}},{"../../lib":728,"../../lib/events":718,"../../lib/override_cursor":739,"../../lib/svg_text_utils":752,"../../plots/cartesian/axes":776,"../../registry":859,"../color":595,"../dragelement":614,"../drawing":617,"../legend/defaults":647,"../legend/draw":648,"./constants":629,"./helpers":631,d3:164,"fast-isnumeric":236,tinycolor2:528}],633:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../color"),i=t("./helpers").isUnifiedHover;e.exports=function(t,e,r,o){function s(t){o.font[t]||(o.font[t]=e.legend?e.legend.font[t]:e.font[t])}o=o||{},e&&i(e.hovermode)&&(o.font||(o.font={}),s("size"),s("family"),s("color"),e.legend?(o.bgcolor||(o.bgcolor=a.combine(e.legend.bgcolor,e.paper_bgcolor)),o.bordercolor||(o.bordercolor=e.legend.bordercolor)):o.bgcolor||(o.bgcolor=e.paper_bgcolor)),r("hoverlabel.bgcolor",o.bgcolor),r("hoverlabel.bordercolor",o.bordercolor),r("hoverlabel.namelength",o.namelength),n.coerceFont(r,"hoverlabel.font",o.font),r("hoverlabel.align",o.align)}},{"../../lib":728,"../color":595,"./helpers":631}],634:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./layout_attributes");e.exports=function(t,e,r){function i(r,i){return void 0!==e[r]?e[r]:n.coerce(t,e,a,r,i)}var o,s=i("clickmode");return e._has("cartesian")?s.indexOf("select")>-1?o="closest":(e._isHoriz=function(t,e){for(var r=e._scatterStackOpts||{},n=0;n<t.length;n++){var a=t[n],i=a.xaxis+a.yaxis,o=(r[i]||{})[a.stackgroup]||{};if("h"!==a.orientation&&"h"!==o.orientation)return!1}return!0}(r,e),o=e._isHoriz?"y":"x"):o="closest",i("hovermode",o)}},{"../../lib":728,"./layout_attributes":636}],635:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../lib"),i=t("../dragelement"),o=t("./helpers"),s=t("./layout_attributes"),l=t("./hover");e.exports={moduleType:"component",name:"fx",constants:t("./constants"),schema:{layout:s},attributes:t("./attributes"),layoutAttributes:s,supplyLayoutGlobalDefaults:t("./layout_global_defaults"),supplyDefaults:t("./defaults"),supplyLayoutDefaults:t("./layout_defaults"),calc:t("./calc"),getDistanceFunction:o.getDistanceFunction,getClosest:o.getClosest,inbox:o.inbox,quadrature:o.quadrature,appendArrayPointValue:o.appendArrayPointValue,castHoverOption:function(t,e,r){return a.castOption(t,e,"hoverlabel."+r)},castHoverinfo:function(t,e,r){return a.castOption(t,r,"hoverinfo",(function(r){return a.coerceHoverinfo({hoverinfo:r},{_module:t._module},e)}))},hover:l.hover,unhover:i.unhover,loneHover:l.loneHover,loneUnhover:function(t){var e=a.isD3Selection(t)?t:n.select(t);e.selectAll("g.hovertext").remove(),e.selectAll(".spikeline").remove()},click:t("./click")}},{"../../lib":728,"../dragelement":614,"./attributes":626,"./calc":627,"./click":628,"./constants":629,"./defaults":630,"./helpers":631,"./hover":632,"./layout_attributes":636,"./layout_defaults":637,"./layout_global_defaults":638,d3:164}],636:[function(t,e,r){"use strict";var n=t("./constants"),a=t("../../plots/font_attributes")({editType:"none"});a.family.dflt=n.HOVERFONT,a.size.dflt=n.HOVERFONTSIZE,e.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"],editType:"modebar"},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none"},spikedistance:{valType:"integer",min:-1,dflt:20,editType:"none"},hoverlabel:{bgcolor:{valType:"color",editType:"none"},bordercolor:{valType:"color",editType:"none"},font:a,align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}},{"../../plots/font_attributes":804,"./constants":629}],637:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./helpers").isUnifiedHover,i=t("./layout_attributes"),o=t("./hovermode_defaults"),s=t("./hoverlabel_defaults");e.exports=function(t,e,r){function l(r,a){return n.coerce(t,e,i,r,a)}var c=o(t,e,r);c&&(l("hoverdistance"),l("spikedistance",a(c)?-1:void 0)),"select"===l("dragmode")&&l("selectdirection");var u=e._has("mapbox"),h=e._has("geo"),f=e._basePlotModules.length;"zoom"===e.dragmode&&((u||h)&&1===f||u&&h&&2===f)&&(e.dragmode="pan"),s(t,e,l)}},{"../../lib":728,"./helpers":631,"./hoverlabel_defaults":633,"./hovermode_defaults":634,"./layout_attributes":636}],638:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./hoverlabel_defaults"),i=t("./layout_attributes");e.exports=function(t,e){a(t,e,(function(r,a){return n.coerce(t,e,i,r,a)}))}},{"../../lib":728,"./hoverlabel_defaults":633,"./layout_attributes":636}],639:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../lib/regex").counter,i=t("../../plots/domain").attributes,o=t("../../plots/cartesian/constants").idRegex,s=t("../../plot_api/plot_template"),l={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:[a("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[o.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[o.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:i({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 c(t,e,r){var n=e[r+"axes"],a=Object.keys((t._splomAxes||{})[r]||{});return Array.isArray(n)?n:a.length?a:void 0}function u(t,e,r,n,a,i){var o=e(t+"gap",r),s=e("domain."+t);e(t+"side",n);for(var l=new Array(a),c=s[0],u=(s[1]-c)/(a-o),h=u*(1-o),f=0;f<a;f++){var p=c+u*f;l[i?a-1-f:f]=[p,p+h]}return l}function h(t,e,r,n,a){var i,o=new Array(r);function s(t,r){-1!==e.indexOf(r)&&void 0===n[r]?(o[t]=r,n[r]=t):o[t]=""}if(Array.isArray(t))for(i=0;i<r;i++)s(i,t[i]);else for(s(0,a),i=1;i<r;i++)s(i,a+(i+1));return o}e.exports={moduleType:"component",name:"grid",schema:{layout:{grid:l}},layoutAttributes:l,sizeDefaults:function(t,e){var r=t.grid||{},a=c(e,r,"x"),i=c(e,r,"y");if(t.grid||a||i){var o,h,f=Array.isArray(r.subplots)&&Array.isArray(r.subplots[0]),p=Array.isArray(a),d=Array.isArray(i),g=p&&a!==r.xaxes&&d&&i!==r.yaxes;f?(o=r.subplots.length,h=r.subplots[0].length):(d&&(o=i.length),p&&(h=a.length));var m=s.newContainer(e,"grid"),v=k("rows",o),y=k("columns",h);if(v*y>1){if(!f&&!p&&!d)"independent"===k("pattern")&&(f=!0);m._hasSubplotGrid=f;var x,b,_="top to bottom"===k("roworder"),w=f?.2:.1,T=f?.3:.1;g&&e._splomGridDflt&&(x=e._splomGridDflt.xside,b=e._splomGridDflt.yside),m._domains={x:u("x",k,w,x,y),y:u("y",k,T,b,v,_)}}else delete e.grid}function k(t,e){return n.coerce(r,m,l,t,e)}},contentDefaults:function(t,e){var r=e.grid;if(r&&r._domains){var n,a,i,o,s,l,u,f=t.grid||{},p=e._subplots,d=r._hasSubplotGrid,g=r.rows,m=r.columns,v="independent"===r.pattern,y=r._axisMap={};if(d){var x=f.subplots||[];l=r.subplots=new Array(g);var b=1;for(n=0;n<g;n++){var _=l[n]=new Array(m),w=x[n]||[];for(a=0;a<m;a++)if(v?(s=1===b?"xy":"x"+b+"y"+b,b++):s=w[a],_[a]="",-1!==p.cartesian.indexOf(s)){if(u=s.indexOf("y"),i=s.slice(0,u),o=s.slice(u),void 0!==y[i]&&y[i]!==a||void 0!==y[o]&&y[o]!==n)continue;_[a]=s,y[i]=a,y[o]=n}}}else{var T=c(e,f,"x"),k=c(e,f,"y");r.xaxes=h(T,p.xaxis,m,y,"x"),r.yaxes=h(k,p.yaxis,g,y,"y")}var A=r._anchors={},M="top to bottom"===r.roworder;for(var S in y){var E,C,L,P=S.charAt(0),I=r[P+"side"];if(I.length<8)A[S]="free";else if("x"===P){if("t"===I.charAt(0)===M?(E=0,C=1,L=g):(E=g-1,C=-1,L=-1),d){var z=y[S];for(n=E;n!==L;n+=C)if((s=l[n][z])&&(u=s.indexOf("y"),s.slice(0,u)===S)){A[S]=s.slice(u);break}}else for(n=E;n!==L;n+=C)if(o=r.yaxes[n],-1!==p.cartesian.indexOf(S+o)){A[S]=o;break}}else if("l"===I.charAt(0)?(E=0,C=1,L=m):(E=m-1,C=-1,L=-1),d){var O=y[S];for(n=E;n!==L;n+=C)if((s=l[O][n])&&(u=s.indexOf("y"),s.slice(u)===S)){A[S]=s.slice(0,u);break}}else for(n=E;n!==L;n+=C)if(i=r.xaxes[n],-1!==p.cartesian.indexOf(i+S)){A[S]=i;break}}}}}},{"../../lib":728,"../../lib/regex":744,"../../plot_api/plot_template":766,"../../plots/cartesian/constants":782,"../../plots/domain":803}],640:[function(t,e,r){"use strict";var n=t("../../plots/cartesian/constants"),a=t("../../plot_api/plot_template").templatedArray;e.exports=a("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",n.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",n.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})},{"../../plot_api/plot_template":766,"../../plots/cartesian/constants":782}],641:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../../lib/to_log_range");e.exports=function(t,e,r,i){e=e||{};var o="log"===r&&"linear"===e.type,s="linear"===r&&"log"===e.type;if(o||s)for(var l,c,u=t._fullLayout.images,h=e._id.charAt(0),f=0;f<u.length;f++)if(c="images["+f+"].",(l=u[f])[h+"ref"]===e._id){var p=l[h],d=l["size"+h],g=null,m=null;if(o){g=a(p,e.range);var v=d/Math.pow(10,g)/2;m=2*Math.log(v+Math.sqrt(1+v*v))/Math.LN10}else m=(g=Math.pow(10,p))*(Math.pow(10,d/2)-Math.pow(10,-d/2));n(g)?n(m)||(m=null):(g=null,m=null),i(c+h,g),i(c+"size"+h,m)}}},{"../../lib/to_log_range":754,"fast-isnumeric":236}],642:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../plots/cartesian/axes"),i=t("../../plots/array_container_defaults"),o=t("./attributes");function s(t,e,r){function i(r,a){return n.coerce(t,e,o,r,a)}var s=i("source");if(!i("visible",!!s))return e;i("layer"),i("xanchor"),i("yanchor"),i("sizex"),i("sizey"),i("sizing"),i("opacity");for(var l={_fullLayout:r},c=["x","y"],u=0;u<2;u++){var h=c[u],f=a.coerceRef(t,e,l,h,"paper");if("paper"!==f)a.getFromId(l,f)._imgIndices.push(e._index);a.coercePosition(e,l,i,f,h,0)}return e}e.exports=function(t,e){i(t,e,{name:"images",handleItemDefaults:s})}},{"../../lib":728,"../../plots/array_container_defaults":772,"../../plots/cartesian/axes":776,"./attributes":640}],643:[function(t,e,r){"use strict";var n=t("d3"),a=t("../drawing"),i=t("../../plots/cartesian/axes"),o=t("../../constants/xmlns_namespaces");e.exports=function(t){var e,r,s=t._fullLayout,l=[],c={},u=[];for(r=0;r<s.images.length;r++){var h=s.images[r];if(h.visible)if("below"===h.layer&&"paper"!==h.xref&&"paper"!==h.yref){e=h.xref+h.yref;var f=s._plots[e];if(!f){u.push(h);continue}f.mainplot&&(e=f.mainplot.id),c[e]||(c[e]=[]),c[e].push(h)}else"above"===h.layer?l.push(h):u.push(h)}var p={left:{sizing:"xMin",offset:0},center:{sizing:"xMid",offset:-.5},right:{sizing:"xMax",offset:-1}},d={top:{sizing:"YMin",offset:0},middle:{sizing:"YMid",offset:-.5},bottom:{sizing:"YMax",offset:-1}};function g(e){var r=n.select(this);if(this._imgSrc!==e.source)if(r.attr("xmlns",o.svg),e.source&&"data:"===e.source.slice(0,5))r.attr("xlink:href",e.source),this._imgSrc=e.source;else{var a=new Promise(function(t){var n=new Image;function a(){r.remove(),t()}this.img=n,n.setAttribute("crossOrigin","anonymous"),n.onerror=a,n.onload=function(){var e=document.createElement("canvas");e.width=this.width,e.height=this.height,e.getContext("2d").drawImage(this,0,0);var n=e.toDataURL("image/png");r.attr("xlink:href",n),t()},r.on("error",a),n.src=e.source,this._imgSrc=e.source}.bind(this));t._promises.push(a)}}function m(e){var r=n.select(this),o=i.getFromId(t,e.xref),l=i.getFromId(t,e.yref),c=s._size,u=o?Math.abs(o.l2p(e.sizex)-o.l2p(0)):e.sizex*c.w,h=l?Math.abs(l.l2p(e.sizey)-l.l2p(0)):e.sizey*c.h,f=u*p[e.xanchor].offset,g=h*d[e.yanchor].offset,m=p[e.xanchor].sizing+d[e.yanchor].sizing,v=(o?o.r2p(e.x)+o._offset:e.x*c.w+c.l)+f,y=(l?l.r2p(e.y)+l._offset:c.h-e.y*c.h+c.t)+g;switch(e.sizing){case"fill":m+=" slice";break;case"stretch":m="none"}r.attr({x:v,y:y,width:u,height:h,preserveAspectRatio:m,opacity:e.opacity});var x=(o?o._id:"")+(l?l._id:"");a.setClipUrl(r,x?"clip"+s._uid+x:null,t)}var v=s._imageLowerLayer.selectAll("image").data(u),y=s._imageUpperLayer.selectAll("image").data(l);v.enter().append("image"),y.enter().append("image"),v.exit().remove(),y.exit().remove(),v.each((function(t){g.bind(this)(t),m.bind(this)(t)})),y.each((function(t){g.bind(this)(t),m.bind(this)(t)}));var x=Object.keys(s._plots);for(r=0;r<x.length;r++){e=x[r];var b=s._plots[e];if(b.imagelayer){var _=b.imagelayer.selectAll("image").data(c[e]||[]);_.enter().append("image"),_.exit().remove(),_.each((function(t){g.bind(this)(t),m.bind(this)(t)}))}}}},{"../../constants/xmlns_namespaces":705,"../../plots/cartesian/axes":776,"../drawing":617,d3:164}],644:[function(t,e,r){"use strict";e.exports={moduleType:"component",name:"images",layoutAttributes:t("./attributes"),supplyLayoutDefaults:t("./defaults"),includeBasePlot:t("../../plots/cartesian/include_components")("images"),draw:t("./draw"),convertCoords:t("./convert_coords")}},{"../../plots/cartesian/include_components":788,"./attributes":640,"./convert_coords":641,"./defaults":642,"./draw":643}],645:[function(t,e,r){"use strict";var n=t("../../plots/font_attributes"),a=t("../color/attributes");e.exports={bgcolor:{valType:"color",editType:"legend"},bordercolor:{valType:"color",dflt:a.defaultLine,editType:"legend"},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend"},font:n({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"},itemsizing:{valType:"enumerated",values:["trace","constant"],dflt:"trace",editType:"legend"},itemclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggle",editType:"legend"},itemdoubleclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggleothers",editType:"legend"},x:{valType:"number",min:-2,max:3,editType:"legend"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"legend"},y:{valType:"number",min:-2,max:3,editType:"legend"},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:n({editType:"legend"}),side:{valType:"enumerated",values:["top","left","top left"],editType:"legend"},editType:"legend"},editType:"legend"}},{"../../plots/font_attributes":804,"../color/attributes":594}],646:[function(t,e,r){"use strict";e.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,textGap:40,itemGap:5}},{}],647:[function(t,e,r){"use strict";var n=t("../../registry"),a=t("../../lib"),i=t("../../plot_api/plot_template"),o=t("./attributes"),s=t("../../plots/layout_attributes"),l=t("./helpers");e.exports=function(t,e,r){for(var c=t.legend||{},u=0,h=!1,f="normal",p=0;p<r.length;p++){var d=r[p];d.visible&&((d.showlegend||d._dfltShowLegend&&!(d._module&&d._module.attributes&&d._module.attributes.showlegend&&!1===d._module.attributes.showlegend.dflt))&&(u++,d.showlegend&&(h=!0,(n.traceIs(d,"pie-like")||!0===d._input.showlegend)&&u++)),(n.traceIs(d,"bar")&&"stack"===e.barmode||-1!==["tonextx","tonexty"].indexOf(d.fill))&&(f=l.isGrouped({traceorder:f})?"grouped+reversed":"reversed"),void 0!==d.legendgroup&&""!==d.legendgroup&&(f=l.isReversed({traceorder:f})?"reversed+grouped":"grouped"))}var g=a.coerce(t,e,s,"showlegend",h&&u>1);if(!1!==g||c.uirevision){var m=i.newContainer(e,"legend");if(_("uirevision",e.uirevision),!1!==g){_("bgcolor",e.paper_bgcolor),_("bordercolor"),_("borderwidth"),a.coerceFont(_,"font",e.font);var v,y,x,b=_("orientation");"h"===b?(v=0,n.getComponentMethod("rangeslider","isVisible")(t.xaxis)?(y=1.1,x="bottom"):(y=-.1,x="top")):(v=1.02,y=1,x="auto"),_("traceorder",f),l.isGrouped(e.legend)&&_("tracegroupgap"),_("itemsizing"),_("itemclick"),_("itemdoubleclick"),_("x",v),_("xanchor"),_("y",y),_("yanchor",x),_("valign"),a.noneOrAll(c,m,["x","y"]),_("title.text")&&(_("title.side","h"===b?"left":"top"),a.coerceFont(_,"title.font",e.font))}}function _(t,e){return a.coerce(c,m,o,t,e)}}},{"../../lib":728,"../../plot_api/plot_template":766,"../../plots/layout_attributes":830,"../../registry":859,"./attributes":645,"./helpers":651}],648:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../lib"),i=t("../../plots/plots"),o=t("../../registry"),s=t("../../lib/events"),l=t("../dragelement"),c=t("../drawing"),u=t("../color"),h=t("../../lib/svg_text_utils"),f=t("./handle_click"),p=t("./constants"),d=t("../../constants/alignment"),g=d.LINE_SPACING,m=d.FROM_TL,v=d.FROM_BR,y=t("./get_legend_data"),x=t("./style"),b=t("./helpers");function _(t,e,r,n,a){var i=r.data()[0][0].trace,l={event:a,node:r.node(),curveNumber:i.index,expandedIndex:i._expandedIndex,data:t.data,layout:t.layout,frames:t._transitionData._frames,config:t._context,fullData:t._fullData,fullLayout:t._fullLayout};if(i._group&&(l.group=i._group),o.traceIs(i,"pie-like")&&(l.label=r.datum()[0].label),!1!==s.triggerHandler(t,"plotly_legendclick",l))if(1===n)e._clickTimeout=setTimeout((function(){f(r,t,n)}),t._context.doubleClickDelay);else if(2===n){e._clickTimeout&&clearTimeout(e._clickTimeout),t._legendMouseDownTime=0,!1!==s.triggerHandler(t,"plotly_legenddoubleclick",l)&&f(r,t,n)}}function w(t,e,r){var n,i=t.data()[0][0],s=i.trace,l=o.traceIs(s,"pie-like"),u=s.index,f=r._main&&e._context.edits.legendText&&!l,d=r._maxNameLength;r.entries?n=i.text:(n=l?i.label:s.name,s._meta&&(n=a.templateString(n,s._meta)));var g=a.ensureSingle(t,"text","legendtext");g.attr("text-anchor","start").classed("user-select-none",!0).call(c.font,r.font).text(f?T(n,d):n),h.positionText(g,p.textGap,0),f?g.call(h.makeEditable,{gd:e,text:n}).call(A,t,e,r).on("edit",(function(n){this.text(T(n,d)).call(A,t,e,r);var s=i.trace._fullInput||{},l={};if(o.hasTransform(s,"groupby")){var c=o.getTransformIndices(s,"groupby"),h=c[c.length-1],f=a.keyedContainer(s,"transforms["+h+"].styles","target","value.name");f.set(i.trace._group,n),l=f.constructUpdate()}else l.name=n;return o.call("_guiRestyle",e,l,u)})):A(g,t,e,r)}function T(t,e){var r=Math.max(4,e);if(t&&t.trim().length>=r/2)return t;for(var n=r-(t=t||"").length;n>0;n--)t+=" ";return t}function k(t,e){var r,i=e._context.doubleClickDelay,o=1,s=a.ensureSingle(t,"rect","legendtoggle",(function(t){t.style("cursor","pointer").attr("pointer-events","all").call(u.fill,"rgba(0,0,0,0)")}));s.on("mousedown",(function(){(r=(new Date).getTime())-e._legendMouseDownTime<i?o+=1:(o=1,e._legendMouseDownTime=r)})),s.on("mouseup",(function(){if(!e._dragged&&!e._editing){var r=e._fullLayout.legend;(new Date).getTime()-e._legendMouseDownTime>i&&(o=Math.max(o-1,1)),_(e,r,t,o,n.event)}}))}function A(t,e,r,n){n._main||t.attr("data-notex",!0),h.convertToTspans(t,r,(function(){!function(t,e,r){var n=t.data()[0][0];if(r._main&&n&&!n.trace.showlegend)return void t.remove();var a=t.select("g[class*=math-group]"),i=a.node();r||(r=e._fullLayout.legend);var o,s,l=r.borderwidth,u=(n?r:r.title).font.size*g;if(i){var f=c.bBox(i);o=f.height,s=f.width,n?c.setTranslate(a,0,.25*o):c.setTranslate(a,l,.75*o+l)}else{var d=t.select(n?".legendtext":".legendtitletext"),m=h.lineCount(d),v=d.node();o=u*m,s=v?c.bBox(v).width:0;var y=u*((m-1)/2-.3);n?h.positionText(d,p.textGap,-y):h.positionText(d,p.titlePad+l,u+l)}n?(n.lineHeight=u,n.height=Math.max(o,16)+3,n.width=s):(r._titleWidth=s,r._titleHeight=o)}(e,r,n)}))}function M(t){return a.isRightAnchor(t)?"right":a.isCenterAnchor(t)?"center":"left"}function S(t){return a.isBottomAnchor(t)?"bottom":a.isMiddleAnchor(t)?"middle":"top"}e.exports=function(t,e){var r,s=t._fullLayout,h="legend"+s._uid;if(e?(r=e.layer,h+="-hover"):((e=s.legend||{})._main=!0,r=s._infolayer),r){var f;if(t._legendMouseDownTime||(t._legendMouseDownTime=0),e._main){if(!t.calcdata)return;f=s.showlegend&&y(t.calcdata,e)}else{if(!e.entries)return;f=y(e.entries,e)}var d=s.hiddenlabels||[];if(e._main&&(!s.showlegend||!f.length))return r.selectAll(".legend").remove(),s._topdefs.select("#"+h).remove(),i.autoMargin(t,"legend");var g=a.ensureSingle(r,"g","legend",(function(t){e._main&&t.attr("pointer-events","all")})),T=a.ensureSingleById(s._topdefs,"clipPath",h,(function(t){t.append("rect")})),E=a.ensureSingle(g,"rect","bg",(function(t){t.attr("shape-rendering","crispEdges")}));E.call(u.stroke,e.bordercolor).call(u.fill,e.bgcolor).style("stroke-width",e.borderwidth+"px");var C=a.ensureSingle(g,"g","scrollbox"),L=e.title;if(e._titleWidth=0,e._titleHeight=0,L.text){var P=a.ensureSingle(C,"text","legendtitletext");P.attr("text-anchor","start").classed("user-select-none",!0).call(c.font,L.font).text(L.text),A(P,C,t,e)}else C.selectAll(".legendtitletext").remove();var I=a.ensureSingle(g,"rect","scrollbar",(function(t){t.attr(p.scrollBarEnterAttrs).call(u.fill,p.scrollBarColor)})),z=C.selectAll("g.groups").data(f);z.enter().append("g").attr("class","groups"),z.exit().remove();var O=z.selectAll("g.traces").data(a.identity);O.enter().append("g").attr("class","traces"),O.exit().remove(),O.style("opacity",(function(t){var e=t[0].trace;return o.traceIs(e,"pie-like")?-1!==d.indexOf(t[0].label)?.5:1:"legendonly"===e.visible?.5:1})).each((function(){n.select(this).call(w,t,e)})).call(x,t,e).each((function(){e._main&&n.select(this).call(k,t)})),a.syncOrAsync([i.previousPromises,function(){return function(t,e,r,a){var i=t._fullLayout;a||(a=i.legend);var o=i._size,s=b.isVertical(a),l=b.isGrouped(a),u=a.borderwidth,h=2*u,f=p.textGap,d=p.itemGap,g=2*(u+d),m=S(a),v=a.y<0||0===a.y&&"top"===m,y=a.y>1||1===a.y&&"bottom"===m;a._maxHeight=Math.max(v||y?i.height/2:o.h,30);var x=0;a._width=0,a._height=0;var _=function(t){var e=0,r=0,n=t.title.side;n&&(-1!==n.indexOf("left")&&(e=t._titleWidth),-1!==n.indexOf("top")&&(r=t._titleHeight));return[e,r]}(a);if(s)r.each((function(t){var e=t[0].height;c.setTranslate(this,u+_[0],u+_[1]+a._height+e/2+d),a._height+=e,a._width=Math.max(a._width,t[0].width)})),x=f+a._width,a._width+=d+f+h,a._height+=g,l&&(e.each((function(t,e){c.setTranslate(this,0,e*a.tracegroupgap)})),a._height+=(a._lgroupsLength-1)*a.tracegroupgap);else{var w=M(a),T=a.x<0||0===a.x&&"right"===w,k=a.x>1||1===a.x&&"left"===w,A=y||v,E=i.width/2;a._maxWidth=Math.max(T?A&&"left"===w?o.l+o.w:E:k?A&&"right"===w?o.r+o.w:E:o.w,2*f);var C=0,L=0;r.each((function(t){var e=t[0].width+f;C=Math.max(C,e),L+=e})),x=null;var P=0;if(l){var I=0,z=0,O=0;e.each((function(){var t=0,e=0;n.select(this).selectAll("g.traces").each((function(r){var n=r[0].height;c.setTranslate(this,_[0],_[1]+u+d+n/2+e),e+=n,t=Math.max(t,f+r[0].width)})),I=Math.max(I,e);var r=t+d;r+u+z>a._maxWidth&&(P=Math.max(P,z),z=0,O+=I+a.tracegroupgap,I=e),c.setTranslate(this,z,O),z+=r})),a._width=Math.max(P,z)+u,a._height=O+I+g}else{var D=r.size(),R=L+h+(D-1)*d<a._maxWidth,F=0,B=0,N=0,j=0;r.each((function(t){var e=t[0].height,r=f+t[0].width,n=(R?r:C)+d;n+u+B>a._maxWidth&&(P=Math.max(P,j),B=0,N+=F,a._height+=F,F=0),c.setTranslate(this,_[0]+u+B,_[1]+u+N+e/2+d),j=B+r+d,B+=n,F=Math.max(F,e)})),R?(a._width=B+h,a._height=F+g):(a._width=Math.max(P,j)+h,a._height+=F+g)}}a._width=Math.ceil(Math.max(a._width+_[0],a._titleWidth+2*(u+p.titlePad))),a._height=Math.ceil(Math.max(a._height+_[1],a._titleHeight+2*(u+p.itemGap))),a._effHeight=Math.min(a._height,a._maxHeight);var V=t._context.edits,U=V.legendText||V.legendPosition;r.each((function(t){var e=n.select(this).select(".legendtoggle"),r=t[0].height,a=U?f:x||f+t[0].width;s||(a+=d/2),c.setRect(e,0,-r/2,a,r)}))}(t,z,O,e)},function(){if(!e._main||!function(t){var e=t._fullLayout.legend,r=M(e),n=S(e);return i.autoMargin(t,"legend",{x:e.x,y:e.y,l:e._width*m[r],r:e._width*v[r],b:e._effHeight*v[n],t:e._effHeight*m[n]})}(t)){var u,f,d,y,x=s._size,b=e.borderwidth,w=x.l+x.w*e.x-m[M(e)]*e._width,k=x.t+x.h*(1-e.y)-m[S(e)]*e._effHeight;if(e._main&&s.margin.autoexpand){var A=w,L=k;w=a.constrain(w,0,s.width-e._width),k=a.constrain(k,0,s.height-e._effHeight),w!==A&&a.log("Constrain legend.x to make legend fit inside graph"),k!==L&&a.log("Constrain legend.y to make legend fit inside graph")}if(e._main&&c.setTranslate(g,w,k),I.on(".drag",null),g.on("wheel",null),!e._main||e._height<=e._maxHeight||t._context.staticPlot){var P=e._effHeight;e._main||(P=e._height),E.attr({width:e._width-b,height:P-b,x:b/2,y:b/2}),c.setTranslate(C,0,0),T.select("rect").attr({width:e._width-2*b,height:P-2*b,x:b,y:b}),c.setClipUrl(C,h,t),c.setRect(I,0,0,0,0),delete e._scrollY}else{var z,O,D,R=Math.max(p.scrollBarMinHeight,e._effHeight*e._effHeight/e._height),F=e._effHeight-R-2*p.scrollBarMargin,B=e._height-e._effHeight,N=F/B,j=Math.min(e._scrollY||0,B);E.attr({width:e._width-2*b+p.scrollBarWidth+p.scrollBarMargin,height:e._effHeight-b,x:b/2,y:b/2}),T.select("rect").attr({width:e._width-2*b+p.scrollBarWidth+p.scrollBarMargin,height:e._effHeight-2*b,x:b,y:b+j}),c.setClipUrl(C,h,t),q(j,R,N),g.on("wheel",(function(){q(j=a.constrain(e._scrollY+n.event.deltaY/F*B,0,B),R,N),0!==j&&j!==B&&n.event.preventDefault()}));var V=n.behavior.drag().on("dragstart",(function(){var t=n.event.sourceEvent;z="touchstart"===t.type?t.changedTouches[0].clientY:t.clientY,D=j})).on("drag",(function(){var t=n.event.sourceEvent;2===t.buttons||t.ctrlKey||(O="touchmove"===t.type?t.changedTouches[0].clientY:t.clientY,q(j=function(t,e,r){var n=(r-e)/N+t;return a.constrain(n,0,B)}(D,z,O),R,N))}));I.call(V);var U=n.behavior.drag().on("dragstart",(function(){var t=n.event.sourceEvent;"touchstart"===t.type&&(z=t.changedTouches[0].clientY,D=j)})).on("drag",(function(){var t=n.event.sourceEvent;"touchmove"===t.type&&(O=t.changedTouches[0].clientY,q(j=function(t,e,r){var n=(e-r)/N+t;return a.constrain(n,0,B)}(D,z,O),R,N))}));C.call(U)}if(t._context.edits.legendPosition)g.classed("cursor-move",!0),l.init({element:g.node(),gd:t,prepFn:function(){var t=c.getTranslate(g);d=t.x,y=t.y},moveFn:function(t,r){var n=d+t,a=y+r;c.setTranslate(g,n,a),u=l.align(n,0,x.l,x.l+x.w,e.xanchor),f=l.align(a,0,x.t+x.h,x.t,e.yanchor)},doneFn:function(){void 0!==u&&void 0!==f&&o.call("_guiRelayout",t,{"legend.x":u,"legend.y":f})},clickFn:function(e,n){var a=r.selectAll("g.traces").filter((function(){var t=this.getBoundingClientRect();return n.clientX>=t.left&&n.clientX<=t.right&&n.clientY>=t.top&&n.clientY<=t.bottom}));a.size()>0&&_(t,g,a,e,n)}})}function q(r,n,a){e._scrollY=t._fullLayout.legend._scrollY=r,c.setTranslate(C,0,-r),c.setRect(I,e._width,p.scrollBarMargin+r*a,p.scrollBarWidth,n),T.select("rect").attr("y",b+r)}}],t)}}},{"../../constants/alignment":697,"../../lib":728,"../../lib/events":718,"../../lib/svg_text_utils":752,"../../plots/plots":839,"../../registry":859,"../color":595,"../dragelement":614,"../drawing":617,"./constants":646,"./get_legend_data":649,"./handle_click":650,"./helpers":651,"./style":653,d3:164}],649:[function(t,e,r){"use strict";var n=t("../../registry"),a=t("./helpers");e.exports=function(t,e){var r,i,o={},s=[],l=!1,c={},u=0,h=0,f=e._main;function p(t,r){if(""!==t&&a.isGrouped(e))-1===s.indexOf(t)?(s.push(t),l=!0,o[t]=[[r]]):o[t].push([r]);else{var n="~~i"+u;s.push(n),o[n]=[[r]],u++}}for(r=0;r<t.length;r++){var d=t[r],g=d[0],m=g.trace,v=m.legendgroup;if(!f||m.visible&&m.showlegend)if(n.traceIs(m,"pie-like"))for(c[v]||(c[v]={}),i=0;i<d.length;i++){var y=d[i].label;c[v][y]||(p(v,{label:y,color:d[i].color,i:d[i].i,trace:m,pts:d[i].pts}),c[v][y]=!0,h=Math.max(h,(y||"").length))}else p(v,g),h=Math.max(h,(m.name||"").length)}if(!s.length)return[];var x,b,_=s.length;if(l&&a.isGrouped(e))for(b=new Array(_),r=0;r<_;r++)x=o[s[r]],b[r]=a.isReversed(e)?x.reverse():x;else{for(b=[new Array(_)],r=0;r<_;r++)x=o[s[r]][0],b[0][a.isReversed(e)?_-r-1:r]=x;_=1}return e._lgroupsLength=_,e._maxNameLength=h,b}},{"../../registry":859,"./helpers":651}],650:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../registry"),i=!0;e.exports=function(t,e,r){var o=e._fullLayout;if(!e._dragged&&!e._editing){var s,l=o.legend.itemclick,c=o.legend.itemdoubleclick;if(1===r&&"toggle"===l&&"toggleothers"===c&&i&&e.data&&e._context.showTips?(n.notifier(n._(e,"Double-click on legend to isolate one trace"),"long"),i=!1):i=!1,1===r?s=l:2===r&&(s=c),s){var u,h,f,p,d,g=o.hiddenlabels?o.hiddenlabels.slice():[],m=t.data()[0][0],v=e._fullData,y=m.trace,x=y.legendgroup,b={},_=[],w=[],T=[];if(a.traceIs(y,"pie-like")){var k=m.label,A=g.indexOf(k);"toggle"===s?-1===A?g.push(k):g.splice(A,1):"toggleothers"===s&&(g=[],e.calcdata[0].forEach((function(t){k!==t.label&&g.push(t.label)})),e._fullLayout.hiddenlabels&&e._fullLayout.hiddenlabels.length===g.length&&-1===A&&(g=[])),a.call("_guiRelayout",e,"hiddenlabels",g)}else{var M,S=x&&x.length,E=[];if(S)for(u=0;u<v.length;u++)(M=v[u]).visible&&M.legendgroup===x&&E.push(u);if("toggle"===s){var C;switch(y.visible){case!0:C="legendonly";break;case!1:C=!1;break;case"legendonly":C=!0}if(S)for(u=0;u<v.length;u++)!1!==v[u].visible&&v[u].legendgroup===x&&B(v[u],C);else B(y,C)}else if("toggleothers"===s){var L,P,I,z,O=!0;for(u=0;u<v.length;u++)if(L=v[u]===y,I=!0!==v[u].showlegend,!(L||I||(P=S&&v[u].legendgroup===x)||!0!==v[u].visible||a.traceIs(v[u],"notLegendIsolatable"))){O=!1;break}for(u=0;u<v.length;u++)if(!1!==v[u].visible&&!a.traceIs(v[u],"notLegendIsolatable"))switch(y.visible){case"legendonly":B(v[u],!0);break;case!0:z=!!O||"legendonly",L=v[u]===y,I=!0!==v[u].showlegend&&!v[u].legendgroup,P=L||S&&v[u].legendgroup===x,B(v[u],!(!P&&!I)||z)}}for(u=0;u<w.length;u++)if(f=w[u]){var D=f.constructUpdate(),R=Object.keys(D);for(h=0;h<R.length;h++)p=R[h],(b[p]=b[p]||[])[T[u]]=D[p]}for(d=Object.keys(b),u=0;u<d.length;u++)for(p=d[u],h=0;h<_.length;h++)b[p].hasOwnProperty(h)||(b[p][h]=void 0);a.call("_guiRestyle",e,b,_)}}}function F(t,e,r){var n=_.indexOf(t),a=b[e];return a||(a=b[e]=[]),-1===_.indexOf(t)&&(_.push(t),n=_.length-1),a[n]=r,n}function B(t,e){var r=t._fullInput;if(a.hasTransform(r,"groupby")){var i=w[r.index];if(!i){var o=a.getTransformIndices(r,"groupby"),s=o[o.length-1];i=n.keyedContainer(r,"transforms["+s+"].styles","target","value.visible"),w[r.index]=i}var l=i.get(t._group);void 0===l&&(l=!0),!1!==l&&i.set(t._group,e),T[r.index]=F(r.index,"visible",!1!==r.visible)}else{var c=!1!==r.visible&&e;F(r.index,"visible",c)}}}},{"../../lib":728,"../../registry":859}],651:[function(t,e,r){"use strict";r.isGrouped=function(t){return-1!==(t.traceorder||"").indexOf("grouped")},r.isVertical=function(t){return"h"!==t.orientation},r.isReversed=function(t){return-1!==(t.traceorder||"").indexOf("reversed")}},{}],652:[function(t,e,r){"use strict";e.exports={moduleType:"component",name:"legend",layoutAttributes:t("./attributes"),supplyLayoutDefaults:t("./defaults"),draw:t("./draw"),style:t("./style")}},{"./attributes":645,"./defaults":647,"./draw":648,"./style":653}],653:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../registry"),i=t("../../lib"),o=t("../drawing"),s=t("../color"),l=t("../colorscale/helpers").extractOpts,c=t("../../traces/scatter/subtypes"),u=t("../../traces/pie/style_one"),h=t("../../traces/pie/helpers").castOption;function f(t,e){return(e?"radial":"horizontal")+(t?"":"reversed")}e.exports=function(t,e,r){var p=e._fullLayout;r||(r=p.legend);var d="constant"===r.itemsizing,g=function(t,e,r,n){var a;if(t+1)a=t;else{if(!(e&&e.width>0))return 0;a=e.width}return d?n:Math.min(a,r)};function m(t,e,r){var i=t[0].trace,o=i.marker||{},l=o.line||{},c=r?i.visible&&i.type===r:a.traceIs(i,"bar"),u=n.select(e).select("g.legendpoints").selectAll("path.legend"+r).data(c?[t]:[]);u.enter().append("path").classed("legend"+r,!0).attr("d","M6,6H-6V-6H6Z").attr("transform","translate(20,0)"),u.exit().remove(),u.each((function(t){var e=n.select(this),r=t[0],a=g(r.mlw,o.line,5,2);e.style("stroke-width",a+"px").call(s.fill,r.mc||o.color),a&&s.stroke(e,r.mlc||l.color)}))}function v(t,e,r){var o=t[0],s=o.trace,l=r?s.visible&&s.type===r:a.traceIs(s,r),c=n.select(e).select("g.legendpoints").selectAll("path.legend"+r).data(l?[t]:[]);if(c.enter().append("path").classed("legend"+r,!0).attr("d","M6,6H-6V-6H6Z").attr("transform","translate(20,0)"),c.exit().remove(),c.size()){var f=(s.marker||{}).line,p=g(h(f.width,o.pts),f,5,2),d=i.minExtend(s,{marker:{line:{width:p}}});d.marker.line.color=f.color;var m=i.minExtend(o,{trace:d});u(c,m,d)}}t.each((function(t){var e=n.select(this),a=i.ensureSingle(e,"g","layers");a.style("opacity",t[0].trace.opacity);var o=r.valign,s=t[0].lineHeight,l=t[0].height;if("middle"!==o&&s&&l){var c={top:1,bottom:-1}[o]*(.5*(s-l+3));a.attr("transform","translate(0,"+c+")")}else a.attr("transform",null);a.selectAll("g.legendfill").data([t]).enter().append("g").classed("legendfill",!0),a.selectAll("g.legendlines").data([t]).enter().append("g").classed("legendlines",!0);var u=a.selectAll("g.legendsymbols").data([t]);u.enter().append("g").classed("legendsymbols",!0),u.selectAll("g.legendpoints").data([t]).enter().append("g").classed("legendpoints",!0)})).each((function(t){var r,a=t[0].trace,c=[];if(a.visible)switch(a.type){case"histogram2d":case"heatmap":c=[["M-15,-2V4H15V-2Z"]],r=!0;break;case"choropleth":case"choroplethmapbox":c=[["M-6,-6V6H6V-6Z"]],r=!0;break;case"densitymapbox":c=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],r="radial";break;case"cone":c=[["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":c=[["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":c=[["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":c=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],r=!1;break;case"volume":c=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],r=!0;break;case"isosurface":c=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],r=!1}var u=n.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(c);u.enter().append("path").classed("legend3dandfriends",!0).attr("transform","translate(20,0)").style("stroke-miterlimit",1),u.exit().remove(),u.each((function(t,c){var u,h=n.select(this),p=l(a),d=p.colorscale,g=p.reversescale;if(d){if(!r){var m=d.length;u=0===c?d[g?m-1:0][1]:1===c?d[g?0:m-1][1]:d[Math.floor((m-1)/2)][1]}}else{var v=a.vertexcolor||a.facecolor||a.color;u=i.isArrayOrTypedArray(v)?v[c]||v[0]:v}h.attr("d",t[0]),u?h.call(s.fill,u):h.call((function(t){if(t.size()){var n="legendfill-"+a.uid;o.gradient(t,e,n,f(g,"radial"===r),d,"fill")}}))}))})).each((function(t){var e=t[0].trace,r="waterfall"===e.type;if(t[0]._distinct&&r){var a=t[0].trace[t[0].dir].marker;return t[0].mc=a.color,t[0].mlw=a.line.width,t[0].mlc=a.line.color,m(t,this,"waterfall")}var i=[];e.visible&&r&&(i=t[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 o=n.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(i);o.enter().append("path").classed("legendwaterfall",!0).attr("transform","translate(20,0)").style("stroke-miterlimit",1),o.exit().remove(),o.each((function(t){var r=n.select(this),a=e[t[0]].marker,i=g(void 0,a.line,5,2);r.attr("d",t[1]).style("stroke-width",i+"px").call(s.fill,a.color),i&&r.call(s.stroke,a.line.color)}))})).each((function(t){m(t,this,"funnel")})).each((function(t){m(t,this)})).each((function(t){var r=t[0].trace,l=n.select(this).select("g.legendpoints").selectAll("path.legendbox").data(r.visible&&a.traceIs(r,"box-violin")?[t]:[]);l.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform","translate(20,0)"),l.exit().remove(),l.each((function(){var t=n.select(this);if("all"!==r.boxpoints&&"all"!==r.points||0!==s.opacity(r.fillcolor)||0!==s.opacity((r.line||{}).color)){var a=g(void 0,r.line,5,2);t.style("stroke-width",a+"px").call(s.fill,r.fillcolor),a&&s.stroke(t,r.line.color)}else{var c=i.minExtend(r,{marker:{size:d?12:i.constrain(r.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});l.call(o.pointStyle,c,e)}}))})).each((function(t){v(t,this,"funnelarea")})).each((function(t){v(t,this,"pie")})).each((function(t){var r,a,s=t[0],u=s.trace,h=u.visible&&u.fill&&"none"!==u.fill,p=c.hasLines(u),d=u.contours,m=!1,v=!1,y=l(u),x=y.colorscale,b=y.reversescale;if(d){var _=d.coloring;"lines"===_?m=!0:p="none"===_||"heatmap"===_||d.showlines,"constraint"===d.type?h="="!==d._operation:"fill"!==_&&"heatmap"!==_||(v=!0)}var w=c.hasMarkers(u)||c.hasText(u),T=h||v,k=p||m,A=w||!T?"M5,0":k?"M5,-2":"M5,-3",M=n.select(this),S=M.select(".legendfill").selectAll("path").data(h||v?[t]:[]);if(S.enter().append("path").classed("js-fill",!0),S.exit().remove(),S.attr("d",A+"h30v6h-30z").call(h?o.fillGroupStyle:function(t){if(t.size()){var r="legendfill-"+u.uid;o.gradient(t,e,r,f(b),x,"fill")}}),p||m){var E=g(void 0,u.line,10,5);a=i.minExtend(u,{line:{width:E}}),r=[i.minExtend(s,{trace:a})]}var C=M.select(".legendlines").selectAll("path").data(p||m?[r]:[]);C.enter().append("path").classed("js-line",!0),C.exit().remove(),C.attr("d",A+(m?"l30,0.0001":"h30")).call(p?o.lineGroupStyle:function(t){if(t.size()){var r="legendline-"+u.uid;o.lineGroupStyle(t),o.gradient(t,e,r,f(b),x,"stroke")}})})).each((function(t){var r,a,s=t[0],l=s.trace,u=c.hasMarkers(l),h=c.hasText(l),f=c.hasLines(l);function p(t,e,r,n){var a=i.nestedProperty(l,t).get(),o=i.isArrayOrTypedArray(a)&&e?e(a):a;if(d&&o&&void 0!==n&&(o=n),r){if(o<r[0])return r[0];if(o>r[1])return r[1]}return o}function g(t){return s._distinct&&s.index&&t[s.index]?t[s.index]:t[0]}if(u||h||f){var m={},v={};if(u){m.mc=p("marker.color",g),m.mx=p("marker.symbol",g),m.mo=p("marker.opacity",i.mean,[.2,1]),m.mlc=p("marker.line.color",g),m.mlw=p("marker.line.width",i.mean,[0,5],2),v.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var y=p("marker.size",i.mean,[2,16],12);m.ms=y,v.marker.size=y}f&&(v.line={width:p("line.width",g,[0,10],5)}),h&&(m.tx="Aa",m.tp=p("textposition",g),m.ts=10,m.tc=p("textfont.color",g),m.tf=p("textfont.family",g)),r=[i.minExtend(s,m)],(a=i.minExtend(l,v)).selectedpoints=null,a.texttemplate=null}var x=n.select(this).select("g.legendpoints"),b=x.selectAll("path.scatterpts").data(u?r:[]);b.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform","translate(20,0)"),b.exit().remove(),b.call(o.pointStyle,a,e),u&&(r[0].mrc=3);var _=x.selectAll("g.pointtext").data(h?r:[]);_.enter().append("g").classed("pointtext",!0).append("text").attr("transform","translate(20,0)"),_.exit().remove(),_.selectAll("text").call(o.textPointStyle,a,e)})).each((function(t){var e=t[0].trace,r=n.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(e.visible&&"candlestick"===e.type?[t,t]:[]);r.enter().append("path").classed("legendcandle",!0).attr("d",(function(t,e){return e?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"})).attr("transform","translate(20,0)").style("stroke-miterlimit",1),r.exit().remove(),r.each((function(t,r){var a=n.select(this),i=e[r?"increasing":"decreasing"],o=g(void 0,i.line,5,2);a.style("stroke-width",o+"px").call(s.fill,i.fillcolor),o&&s.stroke(a,i.line.color)}))})).each((function(t){var e=t[0].trace,r=n.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(e.visible&&"ohlc"===e.type?[t,t]:[]);r.enter().append("path").classed("legendohlc",!0).attr("d",(function(t,e){return e?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"})).attr("transform","translate(20,0)").style("stroke-miterlimit",1),r.exit().remove(),r.each((function(t,r){var a=n.select(this),i=e[r?"increasing":"decreasing"],l=g(void 0,i.line,5,2);a.style("fill","none").call(o.dashLine,i.line.dash,l),l&&s.stroke(a,i.line.color)}))}))}},{"../../lib":728,"../../registry":859,"../../traces/pie/helpers":1113,"../../traces/pie/style_one":1119,"../../traces/scatter/subtypes":1158,"../color":595,"../colorscale/helpers":606,"../drawing":617,d3:164}],654:[function(t,e,r){"use strict";var n=t("../../registry"),a=t("../../plots/plots"),i=t("../../plots/cartesian/axis_ids"),o=t("../../fonts/ploticon"),s=t("../shapes/draw").eraseActiveShape,l=t("../../lib"),c=l._,u=e.exports={};function h(t,e){var r,a,o=e.currentTarget,s=o.getAttribute("data-attr"),l=o.getAttribute("data-val")||!0,c=t._fullLayout,u={},h=i.list(t,null,!0),f=c._cartesianSpikesEnabled;if("zoom"===s){var p,d="in"===l?.5:2,g=(1+d)/2,m=(1-d)/2;for(a=0;a<h.length;a++)if(!(r=h[a]).fixedrange)if(p=r._name,"auto"===l)u[p+".autorange"]=!0;else if("reset"===l){if(void 0===r._rangeInitial)u[p+".autorange"]=!0;else{var v=r._rangeInitial.slice();u[p+".range[0]"]=v[0],u[p+".range[1]"]=v[1]}void 0!==r._showSpikeInitial&&(u[p+".showspikes"]=r._showSpikeInitial,"on"!==f||r._showSpikeInitial||(f="off"))}else{var y=[r.r2l(r.range[0]),r.r2l(r.range[1])],x=[g*y[0]+m*y[1],g*y[1]+m*y[0]];u[p+".range[0]"]=r.l2r(x[0]),u[p+".range[1]"]=r.l2r(x[1])}}else"hovermode"!==s||"x"!==l&&"y"!==l||(l=c._isHoriz?"y":"x",o.setAttribute("data-val",l)),u[s]=l;c._cartesianSpikesEnabled=f,n.call("_guiRelayout",t,u)}function f(t,e){for(var r=e.currentTarget,a=r.getAttribute("data-attr"),i=r.getAttribute("data-val")||!0,o=t._fullLayout._subplots.gl3d||[],s={},l=a.split("."),c=0;c<o.length;c++)s[o[c]+"."+l[1]]=i;var u="pan"===i?i:"zoom";s.dragmode=u,n.call("_guiRelayout",t,s)}function p(t,e){for(var r=e.currentTarget.getAttribute("data-attr"),a=t._fullLayout,i=a._subplots.gl3d||[],o={},s=0;s<i.length;s++){var l,c=i[s],u=c+".camera",h=c+".aspectratio",f=c+".aspectmode",p=a[c]._scene;"resetLastSave"===r?(o[u+".up"]=p.viewInitial.up,o[u+".eye"]=p.viewInitial.eye,o[u+".center"]=p.viewInitial.center,l=!0):"resetDefault"===r&&(o[u+".up"]=null,o[u+".eye"]=null,o[u+".center"]=null,l=!0),l&&(o[h+".x"]=p.viewInitial.aspectratio.x,o[h+".y"]=p.viewInitial.aspectratio.y,o[h+".z"]=p.viewInitial.aspectratio.z,o[f]=p.viewInitial.aspectmode)}n.call("_guiRelayout",t,o)}function d(t,e){var r=e.currentTarget,n=r._previousVal,a=t._fullLayout,i=a._subplots.gl3d||[],o=["xaxis","yaxis","zaxis"],s={},l={};if(n)l=n,r._previousVal=null;else{for(var c=0;c<i.length;c++){var u=i[c],h=a[u],f=u+".hovermode";s[f]=h.hovermode,l[f]=!1;for(var p=0;p<3;p++){var d=o[p],g=u+"."+d+".showspikes";l[g]=!1,s[g]=h[d].showspikes}}r._previousVal=s}return l}function g(t,e){for(var r=e.currentTarget,a=r.getAttribute("data-attr"),i=r.getAttribute("data-val")||!0,o=t._fullLayout,s=o._subplots.geo||[],l=0;l<s.length;l++){var c=s[l],u=o[c];if("zoom"===a){var h=u.projection.scale,f="in"===i?2*h:.5*h;n.call("_guiRelayout",t,c+".projection.scale",f)}}"reset"===a&&x(t,"geo")}function m(t){var e=t._fullLayout;return!e.hovermode&&(e._has("cartesian")?e._isHoriz?"y":"x":"closest")}function v(t){var e=m(t);n.call("_guiRelayout",t,"hovermode",e)}function y(t,e){for(var r=e.currentTarget.getAttribute("data-val"),a=t._fullLayout,i=a._subplots.mapbox||[],o={},s=0;s<i.length;s++){var l=i[s],c=a[l].zoom,u="in"===r?1.05*c:c/1.05;o[l+".zoom"]=u}n.call("_guiRelayout",t,o)}function x(t,e){for(var r=t._fullLayout,a=r._subplots[e]||[],i={},o=0;o<a.length;o++)for(var s=a[o],l=r[s]._subplot.viewInitial,c=Object.keys(l),u=0;u<c.length;u++){var h=c[u];i[s+"."+h]=l[h]}n.call("_guiRelayout",t,i)}u.toImage={name:"toImage",title:function(t){var e=(t._context.toImageButtonOptions||{}).format||"png";return c(t,"png"===e?"Download plot as a png":"Download plot")},icon:o.camera,click:function(t){var e=t._context.toImageButtonOptions,r={format:e.format||"png"};l.notifier(c(t,"Taking snapshot - this may take a few seconds"),"long"),"svg"!==r.format&&l.isIE()&&(l.notifier(c(t,"IE only supports svg. Changing format to svg."),"long"),r.format="svg"),["filename","width","height","scale"].forEach((function(t){t in e&&(r[t]=e[t])})),n.call("downloadImage",t,r).then((function(e){l.notifier(c(t,"Snapshot succeeded")+" - "+e,"long")})).catch((function(){l.notifier(c(t,"Sorry, there was a problem downloading your snapshot!"),"long")}))}},u.sendDataToCloud={name:"sendDataToCloud",title:function(t){return c(t,"Edit in Chart Studio")},icon:o.disk,click:function(t){a.sendDataToCloud(t)}},u.editInChartStudio={name:"editInChartStudio",title:function(t){return c(t,"Edit in Chart Studio")},icon:o.pencil,click:function(t){a.sendDataToCloud(t)}},u.zoom2d={name:"zoom2d",title:function(t){return c(t,"Zoom")},attr:"dragmode",val:"zoom",icon:o.zoombox,click:h},u.pan2d={name:"pan2d",title:function(t){return c(t,"Pan")},attr:"dragmode",val:"pan",icon:o.pan,click:h},u.select2d={name:"select2d",title:function(t){return c(t,"Box Select")},attr:"dragmode",val:"select",icon:o.selectbox,click:h},u.lasso2d={name:"lasso2d",title:function(t){return c(t,"Lasso Select")},attr:"dragmode",val:"lasso",icon:o.lasso,click:h},u.drawclosedpath={name:"drawclosedpath",title:function(t){return c(t,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:o.drawclosedpath,click:h},u.drawopenpath={name:"drawopenpath",title:function(t){return c(t,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:o.drawopenpath,click:h},u.drawline={name:"drawline",title:function(t){return c(t,"Draw line")},attr:"dragmode",val:"drawline",icon:o.drawline,click:h},u.drawrect={name:"drawrect",title:function(t){return c(t,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:o.drawrect,click:h},u.drawcircle={name:"drawcircle",title:function(t){return c(t,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:o.drawcircle,click:h},u.eraseshape={name:"eraseshape",title:function(t){return c(t,"Erase active shape")},icon:o.eraseshape,click:s},u.zoomIn2d={name:"zoomIn2d",title:function(t){return c(t,"Zoom in")},attr:"zoom",val:"in",icon:o.zoom_plus,click:h},u.zoomOut2d={name:"zoomOut2d",title:function(t){return c(t,"Zoom out")},attr:"zoom",val:"out",icon:o.zoom_minus,click:h},u.autoScale2d={name:"autoScale2d",title:function(t){return c(t,"Autoscale")},attr:"zoom",val:"auto",icon:o.autoscale,click:h},u.resetScale2d={name:"resetScale2d",title:function(t){return c(t,"Reset axes")},attr:"zoom",val:"reset",icon:o.home,click:h},u.hoverClosestCartesian={name:"hoverClosestCartesian",title:function(t){return c(t,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:o.tooltip_basic,gravity:"ne",click:h},u.hoverCompareCartesian={name:"hoverCompareCartesian",title:function(t){return c(t,"Compare data on hover")},attr:"hovermode",val:function(t){return t._fullLayout._isHoriz?"y":"x"},icon:o.tooltip_compare,gravity:"ne",click:h},u.zoom3d={name:"zoom3d",title:function(t){return c(t,"Zoom")},attr:"scene.dragmode",val:"zoom",icon:o.zoombox,click:f},u.pan3d={name:"pan3d",title:function(t){return c(t,"Pan")},attr:"scene.dragmode",val:"pan",icon:o.pan,click:f},u.orbitRotation={name:"orbitRotation",title:function(t){return c(t,"Orbital rotation")},attr:"scene.dragmode",val:"orbit",icon:o["3d_rotate"],click:f},u.tableRotation={name:"tableRotation",title:function(t){return c(t,"Turntable rotation")},attr:"scene.dragmode",val:"turntable",icon:o["z-axis"],click:f},u.resetCameraDefault3d={name:"resetCameraDefault3d",title:function(t){return c(t,"Reset camera to default")},attr:"resetDefault",icon:o.home,click:p},u.resetCameraLastSave3d={name:"resetCameraLastSave3d",title:function(t){return c(t,"Reset camera to last save")},attr:"resetLastSave",icon:o.movie,click:p},u.hoverClosest3d={name:"hoverClosest3d",title:function(t){return c(t,"Toggle show closest data on hover")},attr:"hovermode",val:null,toggle:!0,icon:o.tooltip_basic,gravity:"ne",click:function(t,e){var r=d(t,e);n.call("_guiRelayout",t,r)}},u.zoomInGeo={name:"zoomInGeo",title:function(t){return c(t,"Zoom in")},attr:"zoom",val:"in",icon:o.zoom_plus,click:g},u.zoomOutGeo={name:"zoomOutGeo",title:function(t){return c(t,"Zoom out")},attr:"zoom",val:"out",icon:o.zoom_minus,click:g},u.resetGeo={name:"resetGeo",title:function(t){return c(t,"Reset")},attr:"reset",val:null,icon:o.autoscale,click:g},u.hoverClosestGeo={name:"hoverClosestGeo",title:function(t){return c(t,"Toggle show closest data on hover")},attr:"hovermode",val:null,toggle:!0,icon:o.tooltip_basic,gravity:"ne",click:v},u.hoverClosestGl2d={name:"hoverClosestGl2d",title:function(t){return c(t,"Toggle show closest data on hover")},attr:"hovermode",val:null,toggle:!0,icon:o.tooltip_basic,gravity:"ne",click:v},u.hoverClosestPie={name:"hoverClosestPie",title:function(t){return c(t,"Toggle show closest data on hover")},attr:"hovermode",val:"closest",icon:o.tooltip_basic,gravity:"ne",click:v},u.resetViewSankey={name:"resetSankeyGroup",title:function(t){return c(t,"Reset view")},icon:o.home,click:function(t){for(var e={"node.groups":[],"node.x":[],"node.y":[]},r=0;r<t._fullData.length;r++){var a=t._fullData[r]._viewInitial;e["node.groups"].push(a.node.groups.slice()),e["node.x"].push(a.node.x.slice()),e["node.y"].push(a.node.y.slice())}n.call("restyle",t,e)}},u.toggleHover={name:"toggleHover",title:function(t){return c(t,"Toggle show closest data on hover")},attr:"hovermode",val:null,toggle:!0,icon:o.tooltip_basic,gravity:"ne",click:function(t,e){var r=d(t,e);r.hovermode=m(t),n.call("_guiRelayout",t,r)}},u.resetViews={name:"resetViews",title:function(t){return c(t,"Reset views")},icon:o.home,click:function(t,e){var r=e.currentTarget;r.setAttribute("data-attr","zoom"),r.setAttribute("data-val","reset"),h(t,e),r.setAttribute("data-attr","resetLastSave"),p(t,e),x(t,"geo"),x(t,"mapbox")}},u.toggleSpikelines={name:"toggleSpikelines",title:function(t){return c(t,"Toggle Spike Lines")},icon:o.spikeline,attr:"_cartesianSpikesEnabled",val:"on",click:function(t){var e=t._fullLayout,r=e._cartesianSpikesEnabled;e._cartesianSpikesEnabled="on"===r?"off":"on",n.call("_guiRelayout",t,function(t){for(var e="on"===t._fullLayout._cartesianSpikesEnabled,r=i.list(t,null,!0),n={},a=0;a<r.length;a++){var o=r[a];n[o._name+".showspikes"]=!!e||o._showSpikeInitial}return n}(t))}},u.resetViewMapbox={name:"resetViewMapbox",title:function(t){return c(t,"Reset view")},attr:"reset",icon:o.home,click:function(t){x(t,"mapbox")}},u.zoomInMapbox={name:"zoomInMapbox",title:function(t){return c(t,"Zoom in")},attr:"zoom",val:"in",icon:o.zoom_plus,click:y},u.zoomOutMapbox={name:"zoomOutMapbox",title:function(t){return c(t,"Zoom out")},attr:"zoom",val:"out",icon:o.zoom_minus,click:y}},{"../../fonts/ploticon":708,"../../lib":728,"../../plots/cartesian/axis_ids":779,"../../plots/plots":839,"../../registry":859,"../shapes/draw":676}],655:[function(t,e,r){"use strict";r.manage=t("./manage")},{"./manage":656}],656:[function(t,e,r){"use strict";var n=t("../../plots/cartesian/axis_ids"),a=t("../../traces/scatter/subtypes"),i=t("../../registry"),o=t("../fx/helpers").isUnifiedHover,s=t("./modebar"),l=t("./buttons");e.exports=function(t){var e=t._fullLayout,r=t._context,u=e._modeBar;if(r.displayModeBar||r.watermark){if(!Array.isArray(r.modeBarButtonsToRemove))throw new Error(["*modeBarButtonsToRemove* configuration options","must be an array."].join(" "));if(!Array.isArray(r.modeBarButtonsToAdd))throw new Error(["*modeBarButtonsToAdd* configuration options","must be an array."].join(" "));var h,f=r.modeBarButtons;h=Array.isArray(f)&&f.length?function(t){for(var e=0;e<t.length;e++)for(var r=t[e],n=0;n<r.length;n++){var a=r[n];if("string"==typeof a){if(void 0===l[a])throw new Error(["*modeBarButtons* configuration options","invalid button name"].join(" "));t[e][n]=l[a]}}return t}(f):!r.displayModeBar&&r.watermark?[]:function(t){var e=t._fullLayout,r=t._fullData,s=t._context,u=s.modeBarButtonsToRemove,h=s.modeBarButtonsToAdd,f=e._has("cartesian"),p=e._has("gl3d"),d=e._has("geo"),g=e._has("pie"),m=e._has("funnelarea"),v=e._has("gl2d"),y=e._has("ternary"),x=e._has("mapbox"),b=e._has("polar"),_=e._has("sankey"),w=function(t){for(var e=n.list({_fullLayout:t},null,!0),r=0;r<e.length;r++)if(!e[r].fixedrange)return!1;return!0}(e),T=o(e.hovermode),k=[];function A(t){if(t.length){for(var e=[],r=0;r<t.length;r++){var n=t[r];-1===u.indexOf(n)&&e.push(l[n])}k.push(e)}}var M=["toImage"];s.showEditInChartStudio?M.push("editInChartStudio"):s.showSendToCloud&&M.push("sendDataToCloud");A(M);var S=[],E=[],C=[],L=[];(f||v||g||m||y)+d+p+x+b>1?(E=["toggleHover"],C=["resetViews"]):d?(S=["zoomInGeo","zoomOutGeo"],E=["hoverClosestGeo"],C=["resetGeo"]):p?(E=["hoverClosest3d"],C=["resetCameraDefault3d","resetCameraLastSave3d"]):x?(S=["zoomInMapbox","zoomOutMapbox"],E=["toggleHover"],C=["resetViewMapbox"]):v?E=["hoverClosestGl2d"]:g?E=["hoverClosestPie"]:_?(E=["hoverClosestCartesian","hoverCompareCartesian"],C=["resetViewSankey"]):E=["toggleHover"];f&&(E=["toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"]);(function(t){for(var e=0;e<t.length;e++)if(!i.traceIs(t[e],"noHover"))return!1;return!0}(r)||T)&&(E=[]);!f&&!v||w||(S=["zoomIn2d","zoomOut2d","autoScale2d"],"resetViews"!==C[0]&&(C=["resetScale2d"]));p?L=["zoom3d","pan3d","orbitRotation","tableRotation"]:(f||v)&&!w||y?L=["zoom2d","pan2d"]:x||d?L=["pan2d"]:b&&(L=["zoom2d"]);(function(t){for(var e=!1,r=0;r<t.length&&!e;r++){var n=t[r];n._module&&n._module.selectPoints&&(i.traceIs(n,"scatter-like")?(a.hasMarkers(n)||a.hasText(n))&&(e=!0):i.traceIs(n,"box-violin")&&"all"!==n.boxpoints&&"all"!==n.points||(e=!0))}return e})(r)&&L.push("select2d","lasso2d");if(Array.isArray(h)){for(var P=[],I=0;I<h.length;I++){var z=h[I];"string"==typeof z?-1!==c.indexOf(z)&&(e._has("mapbox")||e._has("cartesian"))&&L.push(z):P.push(z)}h=P}return A(L),A(S.concat(C)),A(E),function(t,e){if(e.length)if(Array.isArray(e[0]))for(var r=0;r<e.length;r++)t.push(e[r]);else t.push(e);return t}(k,h)}(t),u?u.update(t,h):e._modeBar=s(t,h)}else u&&(u.destroy(),delete e._modeBar)};var c=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"]},{"../../plots/cartesian/axis_ids":779,"../../registry":859,"../../traces/scatter/subtypes":1158,"../fx/helpers":631,"./buttons":654,"./modebar":657}],657:[function(t,e,r){"use strict";var n=t("d3"),a=t("fast-isnumeric"),i=t("../../lib"),o=t("../../fonts/ploticon"),s=new DOMParser;function l(t){this.container=t.container,this.element=document.createElement("div"),this.update(t.graphInfo,t.buttons),this.container.appendChild(this.element)}var c=l.prototype;c.update=function(t,e){this.graphInfo=t;var r=this.graphInfo._context,n=this.graphInfo._fullLayout,a="modebar-"+n._uid;this.element.setAttribute("id",a),this._uid=a,this.element.className="modebar","hover"===r.displayModeBar&&(this.element.className+=" modebar--hover ease-bg"),"v"===n.modebar.orientation&&(this.element.className+=" vertical",e=e.reverse());var o=n.modebar,s="hover"===r.displayModeBar?".js-plotly-plot .plotly:hover ":"";i.deleteRelatedStyleRule(a),i.addRelatedStyleRule(a,s+"#"+a+" .modebar-group","background-color: "+o.bgcolor),i.addRelatedStyleRule(a,"#"+a+" .modebar-btn .icon path","fill: "+o.color),i.addRelatedStyleRule(a,"#"+a+" .modebar-btn:hover .icon path","fill: "+o.activecolor),i.addRelatedStyleRule(a,"#"+a+" .modebar-btn.active .icon path","fill: "+o.activecolor);var l=!this.hasButtons(e),c=this.hasLogo!==r.displaylogo,u=this.locale!==r.locale;if(this.locale=r.locale,(l||c||u)&&(this.removeAllButtons(),this.updateButtons(e),r.watermark||r.displaylogo)){var h=this.getLogo();r.watermark&&(h.className=h.className+" watermark"),"v"===n.modebar.orientation?this.element.insertBefore(h,this.element.childNodes[0]):this.element.appendChild(h),this.hasLogo=!0}this.updateActiveButton()},c.updateButtons=function(t){var e=this;this.buttons=t,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach((function(t){var r=e.createGroup();t.forEach((function(t){var n=t.name;if(!n)throw new Error("must provide button 'name' in button config");if(-1!==e.buttonsNames.indexOf(n))throw new Error("button name '"+n+"' is taken");e.buttonsNames.push(n);var a=e.createButton(t);e.buttonElements.push(a),r.appendChild(a)})),e.element.appendChild(r)}))},c.createGroup=function(){var t=document.createElement("div");return t.className="modebar-group",t},c.createButton=function(t){var e=this,r=document.createElement("a");r.setAttribute("rel","tooltip"),r.className="modebar-btn";var a=t.title;void 0===a?a=t.name:"function"==typeof a&&(a=a(this.graphInfo)),(a||0===a)&&r.setAttribute("data-title",a),void 0!==t.attr&&r.setAttribute("data-attr",t.attr);var i=t.val;if(void 0!==i&&("function"==typeof i&&(i=i(this.graphInfo)),r.setAttribute("data-val",i)),"function"!=typeof t.click)throw new Error("must provide button 'click' function in button config");r.addEventListener("click",(function(r){t.click(e.graphInfo,r),e.updateActiveButton(r.currentTarget)})),r.setAttribute("data-toggle",t.toggle||!1),t.toggle&&n.select(r).classed("active",!0);var s=t.icon;return"function"==typeof s?r.appendChild(s()):r.appendChild(this.createIcon(s||o.question)),r.setAttribute("data-gravity",t.gravity||"n"),r},c.createIcon=function(t){var e,r=a(t.height)?Number(t.height):t.ascent-t.descent,n="http://www.w3.org/2000/svg";if(t.path){(e=document.createElementNS(n,"svg")).setAttribute("viewBox",[0,0,t.width,r].join(" ")),e.setAttribute("class","icon");var i=document.createElementNS(n,"path");i.setAttribute("d",t.path),t.transform?i.setAttribute("transform",t.transform):void 0!==t.ascent&&i.setAttribute("transform","matrix(1 0 0 -1 0 "+t.ascent+")"),e.appendChild(i)}t.svg&&(e=s.parseFromString(t.svg,"application/xml").childNodes[0]);return e.setAttribute("height","1em"),e.setAttribute("width","1em"),e},c.updateActiveButton=function(t){var e=this.graphInfo._fullLayout,r=void 0!==t?t.getAttribute("data-attr"):null;this.buttonElements.forEach((function(t){var a=t.getAttribute("data-val")||!0,o=t.getAttribute("data-attr"),s="true"===t.getAttribute("data-toggle"),l=n.select(t);if(s)o===r&&l.classed("active",!l.classed("active"));else{var c=null===o?o:i.nestedProperty(e,o).get();l.classed("active",c===a)}}))},c.hasButtons=function(t){var e=this.buttons;if(!e)return!1;if(t.length!==e.length)return!1;for(var r=0;r<t.length;++r){if(t[r].length!==e[r].length)return!1;for(var n=0;n<t[r].length;n++)if(t[r][n].name!==e[r][n].name)return!1}return!0},c.getLogo=function(){var t=this.createGroup(),e=document.createElement("a");return e.href="https://plotly.com/",e.target="_blank",e.setAttribute("data-title",i._(this.graphInfo,"Produced with Plotly")),e.className="modebar-btn plotlyjsicon modebar-btn--logo",e.appendChild(this.createIcon(o.newplotlylogo)),t.appendChild(e),t},c.removeAllButtons=function(){for(;this.element.firstChild;)this.element.removeChild(this.element.firstChild);this.hasLogo=!1},c.destroy=function(){i.removeElement(this.container.querySelector(".modebar")),i.deleteRelatedStyleRule(this._uid)},e.exports=function(t,e){var r=t._fullLayout,a=new l({graphInfo:t,container:r._modebardiv.node(),buttons:e});return r._privateplot&&n.select(a.element).append("span").classed("badge-private float--left",!0).text("PRIVATE"),a}},{"../../fonts/ploticon":708,"../../lib":728,d3:164,"fast-isnumeric":236}],658:[function(t,e,r){"use strict";var n=t("../../plots/font_attributes"),a=t("../color/attributes"),i=(0,t("../../plot_api/plot_template").templatedArray)("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"});e.exports={visible:{valType:"boolean",editType:"plot"},buttons:i,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:n({editType:"plot"}),bgcolor:{valType:"color",dflt:a.lightLine,editType:"plot"},activecolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:a.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"}},{"../../plot_api/plot_template":766,"../../plots/font_attributes":804,"../color/attributes":594}],659:[function(t,e,r){"use strict";e.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}},{}],660:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../color"),i=t("../../plot_api/plot_template"),o=t("../../plots/array_container_defaults"),s=t("./attributes"),l=t("./constants");function c(t,e,r,a){var i=a.calendar;function o(r,a){return n.coerce(t,e,s.buttons,r,a)}if(o("visible")){var l=o("step");"all"!==l&&(!i||"gregorian"===i||"month"!==l&&"year"!==l?o("stepmode"):e.stepmode="backward",o("count")),o("label")}}e.exports=function(t,e,r,u,h){var f=t.rangeselector||{},p=i.newContainer(e,"rangeselector");function d(t,e){return n.coerce(f,p,s,t,e)}if(d("visible",o(f,p,{name:"buttons",handleItemDefaults:c,calendar:h}).length>0)){var g=function(t,e,r){for(var n=r.filter((function(r){return e[r].anchor===t._id})),a=0,i=0;i<n.length;i++){var o=e[n[i]].domain;o&&(a=Math.max(o[1],a))}return[t.domain[0],a+l.yPad]}(e,r,u);d("x",g[0]),d("y",g[1]),n.noneOrAll(t,e,["x","y"]),d("xanchor"),d("yanchor"),n.coerceFont(d,"font",r.font);var m=d("bgcolor");d("activecolor",a.contrast(m,l.lightAmount,l.darkAmount)),d("bordercolor"),d("borderwidth")}}},{"../../lib":728,"../../plot_api/plot_template":766,"../../plots/array_container_defaults":772,"../color":595,"./attributes":658,"./constants":659}],661:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../registry"),i=t("../../plots/plots"),o=t("../color"),s=t("../drawing"),l=t("../../lib"),c=t("../../lib/svg_text_utils"),u=t("../../plots/cartesian/axis_ids"),h=t("../../constants/alignment"),f=h.LINE_SPACING,p=h.FROM_TL,d=h.FROM_BR,g=t("./constants"),m=t("./get_update_object");function v(t){return t._id}function y(t,e,r){var n=l.ensureSingle(t,"rect","selector-rect",(function(t){t.attr("shape-rendering","crispEdges")}));n.attr({rx:g.rx,ry:g.ry}),n.call(o.stroke,e.bordercolor).call(o.fill,function(t,e){return e._isActive||e._isHovered?t.activecolor:t.bgcolor}(e,r)).style("stroke-width",e.borderwidth+"px")}function x(t,e,r,n){l.ensureSingle(t,"text","selector-text",(function(t){t.classed("user-select-none",!0).attr("text-anchor","middle")})).call(s.font,e.font).text(function(t,e){if(t.label)return e?l.templateString(t.label,e):t.label;return"all"===t.step?"all":t.count+t.step.charAt(0)}(r,n._fullLayout._meta)).call((function(t){c.convertToTspans(t,n)}))}e.exports=function(t){var e=t._fullLayout._infolayer.selectAll(".rangeselector").data(function(t){for(var e=u.list(t,"x",!0),r=[],n=0;n<e.length;n++){var a=e[n];a.rangeselector&&a.rangeselector.visible&&r.push(a)}return r}(t),v);e.enter().append("g").classed("rangeselector",!0),e.exit().remove(),e.style({cursor:"pointer","pointer-events":"all"}),e.each((function(e){var r=n.select(this),o=e,u=o.rangeselector,h=r.selectAll("g.button").data(l.filterVisible(u.buttons));h.enter().append("g").classed("button",!0),h.exit().remove(),h.each((function(e){var r=n.select(this),i=m(o,e);e._isActive=function(t,e,r){if("all"===e.step)return!0===t.autorange;var n=Object.keys(r);return t.range[0]===r[n[0]]&&t.range[1]===r[n[1]]}(o,e,i),r.call(y,u,e),r.call(x,u,e,t),r.on("click",(function(){t._dragged||a.call("_guiRelayout",t,i)})),r.on("mouseover",(function(){e._isHovered=!0,r.call(y,u,e)})),r.on("mouseout",(function(){e._isHovered=!1,r.call(y,u,e)}))})),function(t,e,r,a,o){var u=0,h=0,m=r.borderwidth;e.each((function(){var t=n.select(this).select(".selector-text"),e=r.font.size*f,a=Math.max(e*c.lineCount(t),16)+3;h=Math.max(h,a)})),e.each((function(){var t=n.select(this),e=t.select(".selector-rect"),a=t.select(".selector-text"),i=a.node()&&s.bBox(a.node()).width,o=r.font.size*f,l=c.lineCount(a),p=Math.max(i+10,g.minButtonWidth);t.attr("transform","translate("+(m+u)+","+m+")"),e.attr({x:0,y:0,width:p,height:h}),c.positionText(a,p/2,h/2-(l-1)*o/2+3),u+=p+5}));var v=t._fullLayout._size,y=v.l+v.w*r.x,x=v.t+v.h*(1-r.y),b="left";l.isRightAnchor(r)&&(y-=u,b="right");l.isCenterAnchor(r)&&(y-=u/2,b="center");var _="top";l.isBottomAnchor(r)&&(x-=h,_="bottom");l.isMiddleAnchor(r)&&(x-=h/2,_="middle");u=Math.ceil(u),h=Math.ceil(h),y=Math.round(y),x=Math.round(x),i.autoMargin(t,a+"-range-selector",{x:r.x,y:r.y,l:u*p[b],r:u*d[b],b:h*d[_],t:h*p[_]}),o.attr("transform","translate("+y+","+x+")")}(t,h,u,o._name,r)}))}},{"../../constants/alignment":697,"../../lib":728,"../../lib/svg_text_utils":752,"../../plots/cartesian/axis_ids":779,"../../plots/plots":839,"../../registry":859,"../color":595,"../drawing":617,"./constants":659,"./get_update_object":662,d3:164}],662:[function(t,e,r){"use strict";var n=t("d3");e.exports=function(t,e){var r=t._name,a={};if("all"===e.step)a[r+".autorange"]=!0;else{var i=function(t,e){var r,a=t.range,i=new Date(t.r2l(a[1])),o=e.step,s=e.count;switch(e.stepmode){case"backward":r=t.l2r(+n.time[o].utc.offset(i,-s));break;case"todate":var l=n.time[o].utc.offset(i,-s);r=t.l2r(+n.time[o].utc.ceil(l))}var c=a[1];return[r,c]}(t,e);a[r+".range[0]"]=i[0],a[r+".range[1]"]=i[1]}return a}},{d3:164}],663:[function(t,e,r){"use strict";e.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:t("./attributes")}}},layoutAttributes:t("./attributes"),handleDefaults:t("./defaults"),draw:t("./draw")}},{"./attributes":658,"./defaults":660,"./draw":661}],664:[function(t,e,r){"use strict";var n=t("../color/attributes");e.exports={bgcolor:{valType:"color",dflt:n.background,editType:"plot"},bordercolor:{valType:"color",dflt:n.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"}},{"../color/attributes":594}],665:[function(t,e,r){"use strict";var n=t("../../plots/cartesian/axis_ids").list,a=t("../../plots/cartesian/autorange").getAutoRange,i=t("./constants");e.exports=function(t){for(var e=n(t,"x",!0),r=0;r<e.length;r++){var o=e[r],s=o[i.name];s&&s.visible&&s.autorange&&(s._input.autorange=!0,s._input.range=s.range=a(t,o))}}},{"../../plots/cartesian/autorange":775,"../../plots/cartesian/axis_ids":779,"./constants":666}],666:[function(t,e,r){"use strict";e.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}},{}],667:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../plot_api/plot_template"),i=t("../../plots/cartesian/axis_ids"),o=t("./attributes"),s=t("./oppaxis_attributes");e.exports=function(t,e,r){var l=t[r],c=e[r];if(l.rangeslider||e._requestRangeslider[c._id]){n.isPlainObject(l.rangeslider)||(l.rangeslider={});var u,h,f=l.rangeslider,p=a.newContainer(c,"rangeslider");if(_("visible")){_("bgcolor",e.plot_bgcolor),_("bordercolor"),_("borderwidth"),_("thickness"),_("autorange",!c.isValidRange(f.range)),_("range");var d=e._subplots;if(d)for(var g=d.cartesian.filter((function(t){return t.substr(0,t.indexOf("y"))===i.name2id(r)})).map((function(t){return t.substr(t.indexOf("y"),t.length)})),m=n.simpleMap(g,i.id2name),v=0;v<m.length;v++){var y=m[v];u=f[y]||{},h=a.newContainer(p,y,"yaxis");var x,b=e[y];u.range&&b.isValidRange(u.range)&&(x="fixed"),"match"!==w("rangemode",x)&&w("range",b.range.slice())}p._input=f}}function _(t,e){return n.coerce(f,p,o,t,e)}function w(t,e){return n.coerce(u,h,s,t,e)}}},{"../../lib":728,"../../plot_api/plot_template":766,"../../plots/cartesian/axis_ids":779,"./attributes":664,"./oppaxis_attributes":671}],668:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../registry"),i=t("../../plots/plots"),o=t("../../lib"),s=t("../drawing"),l=t("../color"),c=t("../titles"),u=t("../../plots/cartesian"),h=t("../../plots/cartesian/axis_ids"),f=t("../dragelement"),p=t("../../lib/setcursor"),d=t("./constants");function g(t,e,r,n){var a=o.ensureSingle(t,"rect",d.bgClassName,(function(t){t.attr({x:0,y:0,"shape-rendering":"crispEdges"})})),i=n.borderwidth%2==0?n.borderwidth:n.borderwidth-1,l=-n._offsetShift,c=s.crispRound(e,n.borderwidth);a.attr({width:n._width+i,height:n._height+i,transform:"translate("+l+","+l+")",fill:n.bgcolor,stroke:n.bordercolor,"stroke-width":c})}function m(t,e,r,n){var a=e._fullLayout;o.ensureSingleById(a._topdefs,"clipPath",n._clipId,(function(t){t.append("rect").attr({x:0,y:0})})).select("rect").attr({width:n._width,height:n._height})}function v(t,e,r,a){var l,c=e.calcdata,f=t.selectAll("g."+d.rangePlotClassName).data(r._subplotsWith,o.identity);f.enter().append("g").attr("class",(function(t){return d.rangePlotClassName+" "+t})).call(s.setClipUrl,a._clipId,e),f.order(),f.exit().remove(),f.each((function(t,o){var s=n.select(this),f=0===o,p=h.getFromId(e,t,"y"),d=p._name,g=a[d],m={data:[],layout:{xaxis:{type:r.type,domain:[0,1],range:a.range.slice(),calendar:r.calendar},width:a._width,height:a._height,margin:{t:0,b:0,l:0,r:0}},_context:e._context};r.rangebreaks&&(m.layout.xaxis.rangebreaks=r.rangebreaks),m.layout[d]={type:p.type,domain:[0,1],range:"match"!==g.rangemode?g.range.slice():p.range.slice(),calendar:p.calendar},p.rangebreaks&&(m.layout[d].rangebreaks=p.rangebreaks),i.supplyDefaults(m);var v=m._fullLayout.xaxis,y=m._fullLayout[d];v.clearCalc(),v.setScale(),y.clearCalc(),y.setScale();var x={id:t,plotgroup:s,xaxis:v,yaxis:y,isRangePlot:!0};f?l=x:(x.mainplot="xy",x.mainplotinfo=l),u.rangePlot(e,x,function(t,e){for(var r=[],n=0;n<t.length;n++){var a=t[n],i=a[0].trace;i.xaxis+i.yaxis===e&&r.push(a)}return r}(c,t))}))}function y(t,e,r,n,a){(o.ensureSingle(t,"rect",d.maskMinClassName,(function(t){t.attr({x:0,y:0,"shape-rendering":"crispEdges"})})).attr("height",n._height).call(l.fill,d.maskColor),o.ensureSingle(t,"rect",d.maskMaxClassName,(function(t){t.attr({y:0,"shape-rendering":"crispEdges"})})).attr("height",n._height).call(l.fill,d.maskColor),"match"!==a.rangemode)&&(o.ensureSingle(t,"rect",d.maskMinOppAxisClassName,(function(t){t.attr({y:0,"shape-rendering":"crispEdges"})})).attr("width",n._width).call(l.fill,d.maskOppAxisColor),o.ensureSingle(t,"rect",d.maskMaxOppAxisClassName,(function(t){t.attr({y:0,"shape-rendering":"crispEdges"})})).attr("width",n._width).style("border-top",d.maskOppBorder).call(l.fill,d.maskOppAxisColor))}function x(t,e,r,n){e._context.staticPlot||o.ensureSingle(t,"rect",d.slideBoxClassName,(function(t){t.attr({y:0,cursor:d.slideBoxCursor,"shape-rendering":"crispEdges"})})).attr({height:n._height,fill:d.slideBoxFill})}function b(t,e,r,n){var a=o.ensureSingle(t,"g",d.grabberMinClassName),i=o.ensureSingle(t,"g",d.grabberMaxClassName),s={x:0,width:d.handleWidth,rx:d.handleRadius,fill:l.background,stroke:l.defaultLine,"stroke-width":d.handleStrokeWidth,"shape-rendering":"crispEdges"},c={y:Math.round(n._height/4),height:Math.round(n._height/2)};if(o.ensureSingle(a,"rect",d.handleMinClassName,(function(t){t.attr(s)})).attr(c),o.ensureSingle(i,"rect",d.handleMaxClassName,(function(t){t.attr(s)})).attr(c),!e._context.staticPlot){var u={width:d.grabAreaWidth,x:0,y:0,fill:d.grabAreaFill,cursor:d.grabAreaCursor};o.ensureSingle(a,"rect",d.grabAreaMinClassName,(function(t){t.attr(u)})).attr("height",n._height),o.ensureSingle(i,"rect",d.grabAreaMaxClassName,(function(t){t.attr(u)})).attr("height",n._height)}}e.exports=function(t){for(var e=t._fullLayout,r=e._rangeSliderData,i=0;i<r.length;i++){var s=r[i][d.name];s._clipId=s._id+"-"+e._uid}var l=e._infolayer.selectAll("g."+d.containerClassName).data(r,(function(t){return t._name}));l.exit().each((function(t){var r=t[d.name];e._topdefs.select("#"+r._clipId).remove()})).remove(),0!==r.length&&(l.enter().append("g").classed(d.containerClassName,!0).attr("pointer-events","all"),l.each((function(r){var i=n.select(this),s=r[d.name],l=e[h.id2name(r.anchor)],u=s[h.id2name(r.anchor)];if(s.range){var _,w=o.simpleMap(s.range,r.r2l),T=o.simpleMap(r.range,r.r2l);_=T[0]<T[1]?[Math.min(w[0],T[0]),Math.max(w[1],T[1])]:[Math.max(w[0],T[0]),Math.min(w[1],T[1])],s.range=s._input.range=o.simpleMap(_,r.l2r)}r.cleanRange("rangeslider.range");var k=e._size,A=r.domain;s._width=k.w*(A[1]-A[0]);var M=Math.round(k.l+k.w*A[0]),S=Math.round(k.t+k.h*(1-r._counterDomainMin)+("bottom"===r.side?r._depth:0)+s._offsetShift+d.extraPad);i.attr("transform","translate("+M+","+S+")"),s._rl=o.simpleMap(s.range,r.r2l);var E=s._rl[0],C=s._rl[1],L=C-E;if(s.p2d=function(t){return t/s._width*L+E},s.d2p=function(t){return(t-E)/L*s._width},r.rangebreaks){var P=r.locateBreaks(E,C);if(P.length){var I,z,O=0;for(I=0;I<P.length;I++)O+=(z=P[I]).max-z.min;var D=s._width/(C-E-O),R=[-D*E];for(I=0;I<P.length;I++)z=P[I],R.push(R[R.length-1]-D*(z.max-z.min));for(s.d2p=function(t){for(var e=R[0],r=0;r<P.length;r++){var n=P[r];if(t>=n.max)e=R[r+1];else if(t<n.min)break}return e+D*t},I=0;I<P.length;I++)(z=P[I]).pmin=s.d2p(z.min),z.pmax=s.d2p(z.max);s.p2d=function(t){for(var e=R[0],r=0;r<P.length;r++){var n=P[r];if(t>=n.pmax)e=R[r+1];else if(t<n.pmin)break}return(t-e)/D}}}if("match"!==u.rangemode){var F=l.r2l(u.range[0]),B=l.r2l(u.range[1])-F;s.d2pOppAxis=function(t){return(t-F)/B*s._height}}i.call(g,t,r,s).call(m,t,r,s).call(v,t,r,s).call(y,t,r,s,u).call(x,t,r,s).call(b,t,r,s),function(t,e,r,i){var s=t.select("rect."+d.slideBoxClassName).node(),l=t.select("rect."+d.grabAreaMinClassName).node(),c=t.select("rect."+d.grabAreaMaxClassName).node();t.on("mousedown",(function(){var u=n.event,h=u.target,d=u.clientX,g=d-t.node().getBoundingClientRect().left,m=i.d2p(r._rl[0]),v=i.d2p(r._rl[1]),y=f.coverSlip();function x(t){var u,f,x,b=+t.clientX-d;switch(h){case s:x="ew-resize",u=m+b,f=v+b;break;case l:x="col-resize",u=m+b,f=v;break;case c:x="col-resize",u=m,f=v+b;break;default:x="ew-resize",u=g,f=g+b}if(f<u){var _=f;f=u,u=_}i._pixelMin=u,i._pixelMax=f,p(n.select(y),x),function(t,e,r,n){function i(t){return r.l2r(o.constrain(t,n._rl[0],n._rl[1]))}var s=i(n.p2d(n._pixelMin)),l=i(n.p2d(n._pixelMax));window.requestAnimationFrame((function(){a.call("_guiRelayout",e,r._name+".range",[s,l])}))}(0,e,r,i)}y.addEventListener("mousemove",x),y.addEventListener("mouseup",(function t(){y.removeEventListener("mousemove",x),y.removeEventListener("mouseup",t),o.removeElement(y)}))}))}(i,t,r,s),function(t,e,r,n,a,i){var s=d.handleWidth/2;function l(t){return o.constrain(t,0,n._width)}function c(t){return o.constrain(t,0,n._height)}function u(t){return o.constrain(t,-s,n._width+s)}var h=l(n.d2p(r._rl[0])),f=l(n.d2p(r._rl[1]));if(t.select("rect."+d.slideBoxClassName).attr("x",h).attr("width",f-h),t.select("rect."+d.maskMinClassName).attr("width",h),t.select("rect."+d.maskMaxClassName).attr("x",f).attr("width",n._width-f),"match"!==i.rangemode){var p=n._height-c(n.d2pOppAxis(a._rl[1])),g=n._height-c(n.d2pOppAxis(a._rl[0]));t.select("rect."+d.maskMinOppAxisClassName).attr("x",h).attr("height",p).attr("width",f-h),t.select("rect."+d.maskMaxOppAxisClassName).attr("x",h).attr("y",g).attr("height",n._height-g).attr("width",f-h),t.select("rect."+d.slideBoxClassName).attr("y",p).attr("height",g-p)}var m=Math.round(u(h-s))-.5,v=Math.round(u(f-s))+.5;t.select("g."+d.grabberMinClassName).attr("transform","translate("+m+",0.5)"),t.select("g."+d.grabberMaxClassName).attr("transform","translate("+v+",0.5)")}(i,0,r,s,l,u),"bottom"===r.side&&c.draw(t,r._id+"title",{propContainer:r,propName:r._name+".title",placeholder:e._dfltTitle.x,attributes:{x:r._offset+r._length/2,y:S+s._height+s._offsetShift+10+1.5*r.title.font.size,"text-anchor":"middle"}})})))}},{"../../lib":728,"../../lib/setcursor":748,"../../plots/cartesian":789,"../../plots/cartesian/axis_ids":779,"../../plots/plots":839,"../../registry":859,"../color":595,"../dragelement":614,"../drawing":617,"../titles":690,"./constants":666,d3:164}],669:[function(t,e,r){"use strict";var n=t("../../plots/cartesian/axis_ids"),a=t("../../lib/svg_text_utils"),i=t("./constants"),o=t("../../constants/alignment").LINE_SPACING,s=i.name;function l(t){var e=t&&t[s];return e&&e.visible}r.isVisible=l,r.makeData=function(t){var e=n.list({_fullLayout:t},"x",!0),r=t.margin,a=[];if(!t._has("gl2d"))for(var i=0;i<e.length;i++){var o=e[i];if(l(o)){a.push(o);var c=o[s];c._id=s+o._id,c._height=(t.height-r.b-r.t)*c.thickness,c._offsetShift=Math.floor(c.borderwidth/2)}}t._rangeSliderData=a},r.autoMarginOpts=function(t,e){var r=t._fullLayout,n=e[s],l=e._id.charAt(0),c=0,u=0;"bottom"===e.side&&(c=e._depth,e.title.text!==r._dfltTitle[l]&&(u=1.5*e.title.font.size+10+n._offsetShift,u+=(e.title.text.match(a.BR_TAG_ALL)||[]).length*e.title.font.size*o));return{x:0,y:e._counterDomainMin,l:0,r:0,t:0,b:n._height+c+Math.max(r.margin.b,u),pad:i.extraPad+2*n._offsetShift}}},{"../../constants/alignment":697,"../../lib/svg_text_utils":752,"../../plots/cartesian/axis_ids":779,"./constants":666}],670:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./attributes"),i=t("./oppaxis_attributes"),o=t("./helpers");e.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:n.extendFlat({},a,{yaxis:i})}}},layoutAttributes:t("./attributes"),handleDefaults:t("./defaults"),calcAutorange:t("./calc_autorange"),draw:t("./draw"),isVisible:o.isVisible,makeData:o.makeData,autoMarginOpts:o.autoMarginOpts}},{"../../lib":728,"./attributes":664,"./calc_autorange":665,"./defaults":667,"./draw":668,"./helpers":669,"./oppaxis_attributes":671}],671:[function(t,e,r){"use strict";e.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"}},{}],672:[function(t,e,r){"use strict";var n=t("../annotations/attributes"),a=t("../../traces/scatter/attributes").line,i=t("../drawing/attributes").dash,o=t("../../lib/extend").extendFlat,s=t("../../plot_api/plot_template").templatedArray;e.exports=s("shape",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},type:{valType:"enumerated",values:["circle","rect","path","line"],editType:"calc+arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},xref:o({},n.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"},yref:o({},n.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"},path:{valType:"string",editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},line:{color:o({},a.color,{editType:"arraydraw"}),width:o({},a.width,{editType:"calc+arraydraw"}),dash:o({},i,{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"},editType:"arraydraw"})},{"../../lib/extend":719,"../../plot_api/plot_template":766,"../../traces/scatter/attributes":1134,"../annotations/attributes":578,"../drawing/attributes":616}],673:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../plots/cartesian/axes"),i=t("./constants"),o=t("./helpers");function s(t){return c(t.line.width,t.xsizemode,t.x0,t.x1,t.path,!1)}function l(t){return c(t.line.width,t.ysizemode,t.y0,t.y1,t.path,!0)}function c(t,e,r,a,s,l){var c=t/2,u=l;if("pixel"===e){var h=s?o.extractPathCoords(s,l?i.paramIsY:i.paramIsX):[r,a],f=n.aggNums(Math.max,null,h),p=n.aggNums(Math.min,null,h),d=p<0?Math.abs(p)+c:c,g=f>0?f+c:c;return{ppad:c,ppadplus:u?d:g,ppadminus:u?g:d}}return{ppad:c}}function u(t,e,r,n,a){var s="category"===t.type||"multicategory"===t.type?t.r2c:t.d2c;if(void 0!==e)return[s(e),s(r)];if(n){var l,c,u,h,f=1/0,p=-1/0,d=n.match(i.segmentRE);for("date"===t.type&&(s=o.decodeDate(s)),l=0;l<d.length;l++)void 0!==(c=a[d[l].charAt(0)].drawn)&&(!(u=d[l].substr(1).match(i.paramRE))||u.length<c||((h=s(u[c]))<f&&(f=h),h>p&&(p=h)));return p>=f?[f,p]:void 0}}e.exports=function(t){var e=t._fullLayout,r=n.filterVisible(e.shapes);if(r.length&&t._fullData.length)for(var o=0;o<r.length;o++){var c,h,f=r[o];if(f._extremes={},"paper"!==f.xref){var p="pixel"===f.xsizemode?f.xanchor:f.x0,d="pixel"===f.xsizemode?f.xanchor:f.x1;(h=u(c=a.getFromId(t,f.xref),p,d,f.path,i.paramIsX))&&(f._extremes[c._id]=a.findExtremes(c,h,s(f)))}if("paper"!==f.yref){var g="pixel"===f.ysizemode?f.yanchor:f.y0,m="pixel"===f.ysizemode?f.yanchor:f.y1;(h=u(c=a.getFromId(t,f.yref),g,m,f.path,i.paramIsY))&&(f._extremes[c._id]=a.findExtremes(c,h,l(f)))}}}},{"../../lib":728,"../../plots/cartesian/axes":776,"./constants":674,"./helpers":683}],674:[function(t,e,r){"use strict";e.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}}},{}],675:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../plots/cartesian/axes"),i=t("../../plots/array_container_defaults"),o=t("./attributes"),s=t("./helpers");function l(t,e,r){function i(r,a){return n.coerce(t,e,o,r,a)}if(i("visible")){var l=i("path"),c=i("type",l?"path":"rect");"path"!==e.type&&delete e.path,i("editable"),i("layer"),i("opacity"),i("fillcolor"),i("fillrule"),i("line.width")&&(i("line.color"),i("line.dash"));for(var u=i("xsizemode"),h=i("ysizemode"),f=["x","y"],p=0;p<2;p++){var d,g,m,v=f[p],y=v+"anchor",x="x"===v?u:h,b={_fullLayout:r},_=a.coerceRef(t,e,b,v,"","paper");if("paper"!==_?((d=a.getFromId(b,_))._shapeIndices.push(e._index),m=s.rangeToShapePosition(d),g=s.shapePositionToRange(d)):g=m=n.identity,"path"!==c){var w=v+"0",T=v+"1",k=t[w],A=t[T];t[w]=g(t[w],!0),t[T]=g(t[T],!0),"pixel"===x?(i(w,0),i(T,10)):(a.coercePosition(e,b,i,_,w,.25),a.coercePosition(e,b,i,_,T,.75)),e[w]=m(e[w]),e[T]=m(e[T]),t[w]=k,t[T]=A}if("pixel"===x){var M=t[y];t[y]=g(t[y],!0),a.coercePosition(e,b,i,_,y,.25),e[y]=m(e[y]),t[y]=M}}"path"===c?i("path"):n.noneOrAll(t,e,["x0","x1","y0","y1"])}}e.exports=function(t,e){i(t,e,{name:"shapes",handleItemDefaults:l})}},{"../../lib":728,"../../plots/array_container_defaults":772,"../../plots/cartesian/axes":776,"./attributes":672,"./helpers":683}],676:[function(t,e,r){"use strict";var n=t("../../registry"),a=t("../../lib"),i=t("../../plots/cartesian/axes"),o=t("./draw_newshape/helpers").readPaths,s=t("./draw_newshape/display_outlines"),l=t("../../plots/cartesian/handle_outline").clearOutlineControllers,c=t("../color"),u=t("../drawing"),h=t("../../plot_api/plot_template").arrayEditor,f=t("../dragelement"),p=t("../../lib/setcursor"),d=t("./constants"),g=t("./helpers");function m(t){var e=t._fullLayout;for(var r in e._shapeUpperLayer.selectAll("path").remove(),e._shapeLowerLayer.selectAll("path").remove(),e._plots){var n=e._plots[r].shapelayer;n&&n.selectAll("path").remove()}for(var a=0;a<e.shapes.length;a++)e.shapes[a].visible&&x(t,a)}function v(t){return!!t._fullLayout._drawing}function y(t){return!t._context.edits.shapePosition}function x(t,e){t._fullLayout._paperdiv.selectAll('.shapelayer [data-index="'+e+'"]').remove();var r=g.makeOptionsAndPlotinfo(t,e),l=r.options,x=r.plotinfo;if(l._input&&!1!==l.visible)if("below"!==l.layer)k(t._fullLayout._shapeUpperLayer);else if("paper"===l.xref||"paper"===l.yref)k(t._fullLayout._shapeLowerLayer);else{if(x._hadPlotinfo)k((x.mainplotinfo||x).shapelayer);else k(t._fullLayout._shapeLowerLayer)}function k(r){var k=_(t,l),A={"data-index":e,"fill-rule":l.fillrule,d:k},M=l.opacity,S=l.fillcolor,E=l.line.width?l.line.color:"rgba(0,0,0,0)",C=l.line.width,L=l.line.dash;C||!0!==l.editable||(C=5,L="solid");var P="Z"!==k[k.length-1],I=y(t)&&l.editable&&t._fullLayout._activeShapeIndex===e;I&&(S=P?"rgba(0,0,0,0)":t._fullLayout.activeshape.fillcolor,M=t._fullLayout.activeshape.opacity);var z,O=r.append("path").attr(A).style("opacity",M).call(c.stroke,E).call(c.fill,S).call(u.dashLine,L,C);if(b(O,t,l),(I||t._context.edits.shapePosition)&&(z=h(t.layout,"shapes",l)),I){O.style({cursor:"move"});var D={element:O.node(),plotinfo:x,gd:t,editHelpers:z,isActiveShape:!0},R=o(k,t);s(R,O,D)}else t._context.edits.shapePosition?function(t,e,r,o,s,l){var c,h,m,y,x,T,k,A,M,S,E,C,L,P,I,z,O="pixel"===r.xsizemode,D="pixel"===r.ysizemode,R="line"===r.type,F="path"===r.type,B=l.modifyItem,N=i.getFromId(t,r.xref),j=i.getFromId(t,r.yref),V=g.getDataToPixel(t,N),U=g.getDataToPixel(t,j,!0),q=g.getPixelToData(t,N),H=g.getPixelToData(t,j,!0),G=R?function(){var t=Math.max(r.line.width,10),n=s.append("g").attr("data-index",o);n.append("path").attr("d",e.attr("d")).style({cursor:"move","stroke-width":t,"stroke-opacity":"0"});var a={"fill-opacity":"0"},i=Math.max(t/2,10);return n.append("circle").attr({"data-line-point":"start-point",cx:O?V(r.xanchor)+r.x0:V(r.x0),cy:D?U(r.yanchor)-r.y0:U(r.y0),r:i}).style(a).classed("cursor-grab",!0),n.append("circle").attr({"data-line-point":"end-point",cx:O?V(r.xanchor)+r.x1:V(r.x1),cy:D?U(r.yanchor)-r.y1:U(r.y1),r:i}).style(a).classed("cursor-grab",!0),n}():e,Y={element:G.node(),gd:t,prepFn:function(n){if(v(t))return;O&&(x=V(r.xanchor));D&&(T=U(r.yanchor));"path"===r.type?I=r.path:(c=O?r.x0:V(r.x0),h=D?r.y0:U(r.y0),m=O?r.x1:V(r.x1),y=D?r.y1:U(r.y1));c<m?(M=c,L="x0",S=m,P="x1"):(M=m,L="x1",S=c,P="x0");!D&&h<y||D&&h>y?(k=h,E="y0",A=y,C="y1"):(k=y,E="y1",A=h,C="y0");W(n),J(s,r),function(t,e,r){var n=e.xref,a=e.yref,o=i.getFromId(r,n),s=i.getFromId(r,a),l="";"paper"===n||o.autorange||(l+=n);"paper"===a||s.autorange||(l+=a);u.setClipUrl(t,l?"clip"+r._fullLayout._uid+l:null,r)}(e,r,t),Y.moveFn="move"===z?Z:X,Y.altKey=n.altKey},doneFn:function(){if(v(t))return;p(e),K(s),b(e,t,r),n.call("_guiRelayout",t,l.getUpdateObj())},clickFn:function(){if(v(t))return;K(s)}};function W(r){if(v(t))z=null;else if(R)z="path"===r.target.tagName?"move":"start-point"===r.target.attributes["data-line-point"].value?"resize-over-start-point":"resize-over-end-point";else{var n=Y.element.getBoundingClientRect(),a=n.right-n.left,i=n.bottom-n.top,o=r.clientX-n.left,s=r.clientY-n.top,l=!F&&a>10&&i>10&&!r.shiftKey?f.getCursor(o/a,1-s/i):"move";p(e,l),z=l.split("-")[0]}}function Z(n,a){if("path"===r.type){var i=function(t){return t},o=i,l=i;O?B("xanchor",r.xanchor=q(x+n)):(o=function(t){return q(V(t)+n)},N&&"date"===N.type&&(o=g.encodeDate(o))),D?B("yanchor",r.yanchor=H(T+a)):(l=function(t){return H(U(t)+a)},j&&"date"===j.type&&(l=g.encodeDate(l))),B("path",r.path=w(I,o,l))}else O?B("xanchor",r.xanchor=q(x+n)):(B("x0",r.x0=q(c+n)),B("x1",r.x1=q(m+n))),D?B("yanchor",r.yanchor=H(T+a)):(B("y0",r.y0=H(h+a)),B("y1",r.y1=H(y+a)));e.attr("d",_(t,r)),J(s,r)}function X(n,a){if(F){var i=function(t){return t},o=i,l=i;O?B("xanchor",r.xanchor=q(x+n)):(o=function(t){return q(V(t)+n)},N&&"date"===N.type&&(o=g.encodeDate(o))),D?B("yanchor",r.yanchor=H(T+a)):(l=function(t){return H(U(t)+a)},j&&"date"===j.type&&(l=g.encodeDate(l))),B("path",r.path=w(I,o,l))}else if(R){if("resize-over-start-point"===z){var u=c+n,f=D?h-a:h+a;B("x0",r.x0=O?u:q(u)),B("y0",r.y0=D?f:H(f))}else if("resize-over-end-point"===z){var p=m+n,d=D?y-a:y+a;B("x1",r.x1=O?p:q(p)),B("y1",r.y1=D?d:H(d))}}else{var v=function(t){return-1!==z.indexOf(t)},b=v("n"),G=v("s"),Y=v("w"),W=v("e"),Z=b?k+a:k,X=G?A+a:A,K=Y?M+n:M,Q=W?S+n:S;D&&(b&&(Z=k-a),G&&(X=A-a)),(!D&&X-Z>10||D&&Z-X>10)&&(B(E,r[E]=D?Z:H(Z)),B(C,r[C]=D?X:H(X))),Q-K>10&&(B(L,r[L]=O?K:q(K)),B(P,r[P]=O?Q:q(Q)))}e.attr("d",_(t,r)),J(s,r)}function J(t,e){(O||D)&&function(){var r="path"!==e.type,n=t.selectAll(".visual-cue").data([0]);n.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":1}).classed("visual-cue",!0);var i=V(O?e.xanchor:a.midRange(r?[e.x0,e.x1]:g.extractPathCoords(e.path,d.paramIsX))),o=U(D?e.yanchor:a.midRange(r?[e.y0,e.y1]:g.extractPathCoords(e.path,d.paramIsY)));if(i=g.roundPositionForSharpStrokeRendering(i,1),o=g.roundPositionForSharpStrokeRendering(o,1),O&&D){var s="M"+(i-1-1)+","+(o-1-1)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";n.attr("d",s)}else if(O){var l="M"+(i-1-1)+","+(o-9-1)+"v18 h2 v-18 Z";n.attr("d",l)}else{var c="M"+(i-9-1)+","+(o-1-1)+"h18 v2 h-18 Z";n.attr("d",c)}}()}function K(t){t.selectAll(".visual-cue").remove()}f.init(Y),G.node().onmousemove=W}(t,O,l,e,r,z):!0===l.editable&&O.style("pointer-events",P||c.opacity(S)*M<=.5?"stroke":"all");O.node().addEventListener("click",(function(){return function(t,e){if(!y(t))return;var r=+e.node().getAttribute("data-index");if(r>=0){if(r===t._fullLayout._activeShapeIndex)return void T(t);t._fullLayout._activeShapeIndex=r,t._fullLayout._deactivateShape=T,m(t)}}(t,O)}))}}function b(t,e,r){var n=(r.xref+r.yref).replace(/paper/g,"");u.setClipUrl(t,n?"clip"+e._fullLayout._uid+n:null,e)}function _(t,e){var r,n,o,s,l,c,u,h,f=e.type,p=i.getFromId(t,e.xref),m=i.getFromId(t,e.yref),v=t._fullLayout._size;if(p?(r=g.shapePositionToRange(p),n=function(t){return p._offset+p.r2p(r(t,!0))}):n=function(t){return v.l+v.w*t},m?(o=g.shapePositionToRange(m),s=function(t){return m._offset+m.r2p(o(t,!0))}):s=function(t){return v.t+v.h*(1-t)},"path"===f)return p&&"date"===p.type&&(n=g.decodeDate(n)),m&&"date"===m.type&&(s=g.decodeDate(s)),function(t,e,r){var n=t.path,i=t.xsizemode,o=t.ysizemode,s=t.xanchor,l=t.yanchor;return n.replace(d.segmentRE,(function(t){var n=0,c=t.charAt(0),u=d.paramIsX[c],h=d.paramIsY[c],f=d.numParams[c],p=t.substr(1).replace(d.paramRE,(function(t){return u[n]?t="pixel"===i?e(s)+Number(t):e(t):h[n]&&(t="pixel"===o?r(l)-Number(t):r(t)),++n>f&&(t="X"),t}));return n>f&&(p=p.replace(/[\s,]*X.*/,""),a.log("Ignoring extra params in segment "+t)),c+p}))}(e,n,s);if("pixel"===e.xsizemode){var y=n(e.xanchor);l=y+e.x0,c=y+e.x1}else l=n(e.x0),c=n(e.x1);if("pixel"===e.ysizemode){var x=s(e.yanchor);u=x-e.y0,h=x-e.y1}else u=s(e.y0),h=s(e.y1);if("line"===f)return"M"+l+","+u+"L"+c+","+h;if("rect"===f)return"M"+l+","+u+"H"+c+"V"+h+"H"+l+"Z";var b=(l+c)/2,_=(u+h)/2,w=Math.abs(b-l),T=Math.abs(_-u),k="A"+w+","+T,A=b+w+","+_;return"M"+A+k+" 0 1,1 "+(b+","+(_-T))+k+" 0 0,1 "+A+"Z"}function w(t,e,r){return t.replace(d.segmentRE,(function(t){var n=0,a=t.charAt(0),i=d.paramIsX[a],o=d.paramIsY[a],s=d.numParams[a];return a+t.substr(1).replace(d.paramRE,(function(t){return n>=s||(i[n]?t=e(t):o[n]&&(t=r(t)),n++),t}))}))}function T(t){y(t)&&(t._fullLayout._activeShapeIndex>=0&&(l(t),delete t._fullLayout._activeShapeIndex,m(t)))}e.exports={draw:m,drawOne:x,eraseActiveShape:function(t){if(!y(t))return;l(t);var e=t._fullLayout._activeShapeIndex,r=(t.layout||{}).shapes||[];if(e<r.length){for(var a=[],i=0;i<r.length;i++)i!==e&&a.push(r[i]);delete t._fullLayout._activeShapeIndex,n.call("_guiRelayout",t,{shapes:a})}}}},{"../../lib":728,"../../lib/setcursor":748,"../../plot_api/plot_template":766,"../../plots/cartesian/axes":776,"../../plots/cartesian/handle_outline":786,"../../registry":859,"../color":595,"../dragelement":614,"../drawing":617,"./constants":674,"./draw_newshape/display_outlines":680,"./draw_newshape/helpers":681,"./helpers":683}],677:[function(t,e,r){"use strict";var n=t("../../drawing/attributes").dash,a=t("../../../lib/extend").extendFlat;e.exports={newshape:{line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:0,dflt:4,editType:"none"},dash:a({},n,{dflt:"solid",editType:"none"}),editType:"none"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"none"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"none"},drawdirection:{valType:"enumerated",values:["ortho","horizontal","vertical","diagonal"],dflt:"diagonal",editType:"none"},editType:"none"},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none"},editType:"none"}}},{"../../../lib/extend":719,"../../drawing/attributes":616}],678:[function(t,e,r){"use strict";e.exports={CIRCLE_SIDES:32,i000:0,i090:8,i180:16,i270:24,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}},{}],679:[function(t,e,r){"use strict";var n=t("../../color");e.exports=function(t,e,r){if(r("newshape.drawdirection"),r("newshape.layer"),r("newshape.fillcolor"),r("newshape.fillrule"),r("newshape.opacity"),r("newshape.line.width")){var a=(t||{}).plot_bgcolor||"#FFF";r("newshape.line.color",n.contrast(a)),r("newshape.line.dash")}r("activeshape.fillcolor"),r("activeshape.opacity")}},{"../../color":595}],680:[function(t,e,r){"use strict";var n=t("../../dragelement"),a=t("../../dragelement/helpers").drawMode,i=t("../../../registry"),o=t("./constants"),s=o.i000,l=o.i090,c=o.i180,u=o.i270,h=t("../../../plots/cartesian/handle_outline").clearOutlineControllers,f=t("./helpers"),p=f.pointsShapeRectangle,d=f.pointsShapeEllipse,g=f.writePaths,m=t("./newshapes");e.exports=function t(e,r,o,f){f||(f=0);var v=o.gd;function y(){t(e,r,o,f++),d(e[0])&&x({redrawing:!0})}function x(t){o.isActiveShape=!1;var e=m(r,o);Object.keys(e).length&&i.call((t||{}).redrawing?"relayout":"_guiRelayout",v,e)}var b,_,w,T,k,A=o.isActiveShape,M=v._fullLayout._zoomlayer,S=o.dragmode;(a(S)?v._fullLayout._drawing=!0:v._fullLayout._activeShapeIndex>=0&&h(v),r.attr("d",g(e)),A&&!f)&&(k=function(t,e){for(var r=0;r<e.length;r++){var n=e[r];t[r]=[];for(var a=0;a<n.length;a++){t[r][a]=[];for(var i=0;i<n[a].length;i++)t[r][a][i]=n[a][i]}}return t}([],e),function(t){b=[];for(var r=0;r<e.length;r++){var a=e[r],i=!p(a)&&d(a);b[r]=[];for(var o=0;o<a.length;o++)if("Z"!==a[o][0]&&(!i||o===s||o===l||o===c||o===u)){var h=a[o][1],f=a[o][2],g=t.append("circle").classed("cursor-grab",!0).attr("data-i",r).attr("data-j",o).attr("cx",h).attr("cy",f).attr("r",4).style({"mix-blend-mode":"luminosity",fill:"black",stroke:"white","stroke-width":1});b[r][o]={element:g.node(),gd:v,prepFn:E,doneFn:L,clickFn:P},n.init(b[r][o])}}}(M.append("g").attr("class","outline-controllers")),function(){if(_=[],!e.length)return;_[0]={element:r[0][0],gd:v,prepFn:z,doneFn:O},n.init(_[0])}());function E(t){w=+t.srcElement.getAttribute("data-i"),T=+t.srcElement.getAttribute("data-j"),b[w][T].moveFn=C}function C(t,r){if(e.length){var n=k[w][T][1],a=k[w][T][2],i=e[w],o=i.length;if(p(i)){for(var s=0;s<o;s++)if(s!==T){var l=i[s];l[1]===i[T][1]&&(l[1]=n+t),l[2]===i[T][2]&&(l[2]=a+r)}if(i[T][1]=n+t,i[T][2]=a+r,!p(i))for(var c=0;c<o;c++)for(var u=0;u<i[c].length;u++)i[c][u]=k[w][c][u]}else i[T][1]=n+t,i[T][2]=a+r;y()}}function L(){x()}function P(t,r){if(2===t){w=+r.srcElement.getAttribute("data-i"),T=+r.srcElement.getAttribute("data-j");var n=e[w];p(n)||d(n)||function(){if(e.length&&e[w]&&e[w].length){for(var t=[],r=0;r<e[w].length;r++)r!==T&&t.push(e[w][r]);t.length>1&&(2!==t.length||"Z"!==t[1][0])&&(0===T&&(t[0][0]="M"),e[w]=t,y(),x())}}()}}function I(t,r){!function(t,r){if(e.length)for(var n=0;n<e.length;n++)for(var a=0;a<e[n].length;a++)for(var i=0;i+2<e[n][a].length;i+=2)e[n][a][i+1]=k[n][a][i+1]+t,e[n][a][i+2]=k[n][a][i+2]+r}(t,r),y()}function z(t){(w=+t.srcElement.getAttribute("data-i"))||(w=0),_[w].moveFn=I}function O(){x()}}},{"../../../plots/cartesian/handle_outline":786,"../../../registry":859,"../../dragelement":614,"../../dragelement/helpers":613,"./constants":678,"./helpers":681,"./newshapes":682}],681:[function(t,e,r){"use strict";var n=t("parse-svg-path"),a=t("./constants"),i=a.CIRCLE_SIDES,o=a.SQRT2,s=t("../../../plots/cartesian/helpers"),l=s.p2r,c=s.r2p,u=[0,3,4,5,6,1,2],h=[0,3,4,1,2];function f(t,e){return Math.abs(t-e)<=1e-6}function p(t,e){var r=e[1]-t[1],n=e[2]-t[2];return Math.sqrt(r*r+n*n)}r.writePaths=function(t){var e=t.length;if(!e)return"M0,0Z";for(var r="",n=0;n<e;n++)for(var a=t[n].length,i=0;i<a;i++){var o=t[n][i][0];if("Z"===o)r+="Z";else for(var s=t[n][i].length,l=0;l<s;l++){var c=l;"Q"===o||"S"===o?c=h[l]:"C"===o&&(c=u[l]),r+=t[n][i][c],l>0&&l<s-1&&(r+=",")}}return r},r.readPaths=function(t,e,r,a){var o,s,u,h=n(t),f=[],p=-1,d=0,g=0,m=function(){s=d,u=g};m();for(var v=0;v<h.length;v++){var y,x,b,_,w=[],T=h[v][0],k=T;switch(T){case"M":p++,f[p]=[],d=+h[v][1],g=+h[v][2],w.push([k,d,g]),m();break;case"Q":case"S":y=+h[v][1],b=+h[v][2],d=+h[v][3],g=+h[v][4],w.push([k,d,g,y,b]);break;case"C":y=+h[v][1],b=+h[v][2],x=+h[v][3],_=+h[v][4],d=+h[v][5],g=+h[v][6],w.push([k,d,g,y,b,x,_]);break;case"T":case"L":d=+h[v][1],g=+h[v][2],w.push([k,d,g]);break;case"H":k="L",d=+h[v][1],w.push([k,d,g]);break;case"V":k="L",g=+h[v][1],w.push([k,d,g]);break;case"A":k="L";var A=+h[v][1],M=+h[v][2];+h[v][4]||(A=-A,M=-M);var S=d-A,E=g;for(o=1;o<=i/2;o++){var C=2*Math.PI*o/i;w.push([k,S+A*Math.cos(C),E+M*Math.sin(C)])}break;case"Z":d===s&&g===u||(d=s,g=u,w.push([k,d,g]))}for(var L=(r||{}).domain,P=e._fullLayout._size,I=r&&"pixel"===r.xsizemode,z=r&&"pixel"===r.ysizemode,O=!1===a,D=0;D<w.length;D++){for(o=0;o+2<7;o+=2){var R=w[D][o+1],F=w[D][o+2];void 0!==R&&void 0!==F&&(d=R,g=F,r&&(r.xaxis&&r.xaxis.p2r?(O&&(R-=r.xaxis._offset),R=I?c(r.xaxis,r.xanchor)+R:l(r.xaxis,R)):(O&&(R-=P.l),L?R=L.x[0]+R/P.w:R/=P.w),r.yaxis&&r.yaxis.p2r?(O&&(F-=r.yaxis._offset),F=z?c(r.yaxis,r.yanchor)-F:l(r.yaxis,F)):(O&&(F-=P.t),F=L?L.y[1]-F/P.h:1-F/P.h)),w[D][o+1]=R,w[D][o+2]=F)}f[p].push(w[D].slice())}}return f},r.pointsShapeRectangle=function(t){if(5!==t.length)return!1;for(var e=1;e<3;e++){if(!f(t[0][e]-t[1][e],t[3][e]-t[2][e]))return!1;if(!f(t[0][e]-t[3][e],t[1][e]-t[2][e]))return!1}return!(!f(t[0][1],t[1][1])&&!f(t[0][1],t[3][1]))&&!!(p(t[0],t[1])*p(t[0],t[3]))},r.pointsShapeEllipse=function(t){var e=t.length;if(e!==i+1)return!1;e=i;for(var r=0;r<e;r++){var n=(2*e-r)%e,a=(e/2+n)%e,o=(e/2+r)%e;if(!f(p(t[r],t[o]),p(t[n],t[a])))return!1}return!0},r.handleEllipse=function(t,e,n){if(!t)return[e,n];var a=r.ellipseOver({x0:e[0],y0:e[1],x1:n[0],y1:n[1]}),s=(a.x1+a.x0)/2,l=(a.y1+a.y0)/2,c=(a.x1-a.x0)/2,u=(a.y1-a.y0)/2;c||(c=u/=o),u||(u=c/=o);for(var h=[],f=0;f<i;f++){var p=2*f*Math.PI/i;h.push([s+c*Math.cos(p),l+u*Math.sin(p)])}return h},r.ellipseOver=function(t){var e=t.x0,r=t.y0,n=t.x1,a=t.y1,i=n-e,s=a-r,l=((e-=i)+n)/2,c=((r-=s)+a)/2;return{x0:l-(i*=o),y0:c-(s*=o),x1:l+i,y1:c+s}}},{"../../../plots/cartesian/helpers":787,"./constants":678,"parse-svg-path":458}],682:[function(t,e,r){"use strict";var n=t("../../dragelement/helpers"),a=n.drawMode,i=n.openMode,o=t("./constants"),s=o.i000,l=o.i090,c=o.i180,u=o.i270,h=o.cos45,f=o.sin45,p=t("../../../plots/cartesian/helpers"),d=p.p2r,g=p.r2p,m=t("../../../plots/cartesian/handle_outline").clearSelect,v=t("./helpers"),y=v.readPaths,x=v.writePaths,b=v.ellipseOver;e.exports=function(t,e){if(t.length){var r=t[0][0];if(r){var n=r.getAttribute("d"),o=e.gd,p=o._fullLayout.newshape,v=e.plotinfo,_=v.xaxis,w=v.yaxis,T=!!v.domain||!v.xaxis,k=!!v.domain||!v.yaxis,A=e.isActiveShape,M=e.dragmode,S=(o.layout||{}).shapes||[];if(!a(M)&&void 0!==A){var E=o._fullLayout._activeShapeIndex;if(E<S.length)switch(o._fullLayout.shapes[E].type){case"rect":M="drawrect";break;case"circle":M="drawcircle";break;case"line":M="drawline";break;case"path":var C=S[E].path||"";M="Z"===C[C.length-1]?"drawclosedpath":"drawopenpath"}}var L,P=i(M),I=y(n,o,v,A),z={editable:!0,xref:T?"paper":_._id,yref:k?"paper":w._id,layer:p.layer,opacity:p.opacity,line:{color:p.line.color,width:p.line.width,dash:p.line.dash}};if(P||(z.fillcolor=p.fillcolor,z.fillrule=p.fillrule),1===I.length&&(L=I[0]),L&&"drawrect"===M)z.type="rect",z.x0=L[0][1],z.y0=L[0][2],z.x1=L[2][1],z.y1=L[2][2];else if(L&&"drawline"===M)z.type="line",z.x0=L[0][1],z.y0=L[0][2],z.x1=L[1][1],z.y1=L[1][2];else if(L&&"drawcircle"===M){z.type="circle";var O=L[s][1],D=L[l][1],R=L[c][1],F=L[u][1],B=L[s][2],N=L[l][2],j=L[c][2],V=L[u][2],U=v.xaxis&&("date"===v.xaxis.type||"log"===v.xaxis.type),q=v.yaxis&&("date"===v.yaxis.type||"log"===v.yaxis.type);U&&(O=g(v.xaxis,O),D=g(v.xaxis,D),R=g(v.xaxis,R),F=g(v.xaxis,F)),q&&(B=g(v.yaxis,B),N=g(v.yaxis,N),j=g(v.yaxis,j),V=g(v.yaxis,V));var H=(D+F)/2,G=(B+j)/2,Y=b({x0:H,y0:G,x1:H+(F-D+R-O)/2*h,y1:G+(V-N+j-B)/2*f});U&&(Y.x0=d(v.xaxis,Y.x0),Y.x1=d(v.xaxis,Y.x1)),q&&(Y.y0=d(v.yaxis,Y.y0),Y.y1=d(v.yaxis,Y.y1)),z.x0=Y.x0,z.y0=Y.y0,z.x1=Y.x1,z.y1=Y.y1}else z.type="path",_&&w&&function(t,e,r){var n="date"===e.type,a="date"===r.type;if(!n&&!a)return t;for(var i=0;i<t.length;i++)for(var o=0;o<t[i].length;o++)for(var s=0;s+2<t[i][o].length;s+=2)n&&(t[i][o][s+1]=t[i][o][s+1].replace(" ","_")),a&&(t[i][o][s+2]=t[i][o][s+2].replace(" ","_"))}(I,_,w),z.path=x(I),L=null;m(o);for(var W=e.editHelpers,Z=(W||{}).modifyItem,X=[],J=0;J<S.length;J++){var K=o._fullLayout.shapes[J];if(X[J]=K._input,void 0!==A&&J===o._fullLayout._activeShapeIndex){var Q=z;switch(K.type){case"line":case"rect":case"circle":Z("x0",Q.x0),Z("x1",Q.x1),Z("y0",Q.y0),Z("y1",Q.y1);break;case"path":Z("path",Q.path)}}}return void 0===A?(X.push(z),X):W?W.getUpdateObj():{}}}}},{"../../../plots/cartesian/handle_outline":786,"../../../plots/cartesian/helpers":787,"../../dragelement/helpers":613,"./constants":678,"./helpers":681}],683:[function(t,e,r){"use strict";var n=t("./constants"),a=t("../../lib");r.rangeToShapePosition=function(t){return"log"===t.type?t.r2d:function(t){return t}},r.shapePositionToRange=function(t){return"log"===t.type?t.d2r:function(t){return t}},r.decodeDate=function(t){return function(e){return e.replace&&(e=e.replace("_"," ")),t(e)}},r.encodeDate=function(t){return function(e){return t(e).replace(" ","_")}},r.extractPathCoords=function(t,e){var r=[];return t.match(n.segmentRE).forEach((function(t){var i=e[t.charAt(0)].drawn;if(void 0!==i){var o=t.substr(1).match(n.paramRE);!o||o.length<i||r.push(a.cleanNumber(o[i]))}})),r},r.getDataToPixel=function(t,e,n){var a,i=t._fullLayout._size;if(e){var o=r.shapePositionToRange(e);a=function(t){return e._offset+e.r2p(o(t,!0))},"date"===e.type&&(a=r.decodeDate(a))}else a=n?function(t){return i.t+i.h*(1-t)}:function(t){return i.l+i.w*t};return a},r.getPixelToData=function(t,e,n){var a,i=t._fullLayout._size;if(e){var o=r.rangeToShapePosition(e);a=function(t){return o(e.p2r(t-e._offset))}}else a=n?function(t){return 1-(t-i.t)/i.h}:function(t){return(t-i.l)/i.w};return a},r.roundPositionForSharpStrokeRendering=function(t,e){var r=1===Math.round(e%2),n=Math.round(t);return r?n+.5:n},r.makeOptionsAndPlotinfo=function(t,e){var r=t._fullLayout.shapes[e]||{},n=t._fullLayout._plots[r.xref+r.yref];return!!n?n._hadPlotinfo=!0:(n={},r.xref&&"paper"!==r.xref&&(n.xaxis=t._fullLayout[r.xref+"axis"]),r.yref&&"paper"!==r.yref&&(n.yaxis=t._fullLayout[r.yref+"axis"])),n.xsizemode=r.xsizemode,n.ysizemode=r.ysizemode,n.xanchor=r.xanchor,n.yanchor=r.yanchor,{options:r,plotinfo:n}}},{"../../lib":728,"./constants":674}],684:[function(t,e,r){"use strict";var n=t("./draw");e.exports={moduleType:"component",name:"shapes",layoutAttributes:t("./attributes"),supplyLayoutDefaults:t("./defaults"),supplyDrawNewShapeDefaults:t("./draw_newshape/defaults"),includeBasePlot:t("../../plots/cartesian/include_components")("shapes"),calcAutorange:t("./calc_autorange"),draw:n.draw,drawOne:n.drawOne}},{"../../plots/cartesian/include_components":788,"./attributes":672,"./calc_autorange":673,"./defaults":675,"./draw":676,"./draw_newshape/defaults":679}],685:[function(t,e,r){"use strict";var n=t("../../plots/font_attributes"),a=t("../../plots/pad_attributes"),i=t("../../lib/extend").extendDeepAll,o=t("../../plot_api/edit_types").overrideAll,s=t("../../plots/animation_attributes"),l=t("../../plot_api/plot_template").templatedArray,c=t("./constants"),u=l("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}});e.exports=o(l("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:u,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:i(a({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:s.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:n({})},font:n({}),activebgcolor:{valType:"color",dflt:c.gripBgActiveColor},bgcolor:{valType:"color",dflt:c.railBgColor},bordercolor:{valType:"color",dflt:c.railBorderColor},borderwidth:{valType:"number",min:0,dflt:c.railBorderWidth},ticklen:{valType:"number",min:0,dflt:c.tickLength},tickcolor:{valType:"color",dflt:c.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:c.minorTickLength}}),"arraydraw","from-root")},{"../../lib/extend":719,"../../plot_api/edit_types":759,"../../plot_api/plot_template":766,"../../plots/animation_attributes":771,"../../plots/font_attributes":804,"../../plots/pad_attributes":838,"./constants":686}],686:[function(t,e,r){"use strict";e.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}},{}],687:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../plots/array_container_defaults"),i=t("./attributes"),o=t("./constants").name,s=i.steps;function l(t,e,r){function o(r,a){return n.coerce(t,e,i,r,a)}for(var s=a(t,e,{name:"steps",handleItemDefaults:c}),l=0,u=0;u<s.length;u++)s[u].visible&&l++;if(l<2?e.visible=!1:o("visible")){e._stepCount=l;var h=e._visibleSteps=n.filterVisible(s);(s[o("active")]||{}).visible||(e.active=h[0]._index),o("x"),o("y"),n.noneOrAll(t,e,["x","y"]),o("xanchor"),o("yanchor"),o("len"),o("lenmode"),o("pad.t"),o("pad.r"),o("pad.b"),o("pad.l"),n.coerceFont(o,"font",r.font),o("currentvalue.visible")&&(o("currentvalue.xanchor"),o("currentvalue.prefix"),o("currentvalue.suffix"),o("currentvalue.offset"),n.coerceFont(o,"currentvalue.font",e.font)),o("transition.duration"),o("transition.easing"),o("bgcolor"),o("activebgcolor"),o("bordercolor"),o("borderwidth"),o("ticklen"),o("tickwidth"),o("tickcolor"),o("minorticklen")}}function c(t,e){function r(r,a){return n.coerce(t,e,s,r,a)}if("skip"===t.method||Array.isArray(t.args)?r("visible"):e.visible=!1){r("method"),r("args");var a=r("label","step-"+e._index);r("value",a),r("execute")}}e.exports=function(t,e){a(t,e,{name:o,handleItemDefaults:l})}},{"../../lib":728,"../../plots/array_container_defaults":772,"./attributes":685,"./constants":686}],688:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../plots/plots"),i=t("../color"),o=t("../drawing"),s=t("../../lib"),l=t("../../lib/svg_text_utils"),c=t("../../plot_api/plot_template").arrayEditor,u=t("./constants"),h=t("../../constants/alignment"),f=h.LINE_SPACING,p=h.FROM_TL,d=h.FROM_BR;function g(t){return u.autoMarginIdRoot+t._index}function m(t){return t._index}function v(t,e){var r=o.tester.selectAll("g."+u.labelGroupClass).data(e._visibleSteps);r.enter().append("g").classed(u.labelGroupClass,!0);var i=0,c=0;r.each((function(t){var r=b(n.select(this),{step:t},e).node();if(r){var a=o.bBox(r);c=Math.max(c,a.height),i=Math.max(i,a.width)}})),r.remove();var h=e._dims={};h.inputAreaWidth=Math.max(u.railWidth,u.gripHeight);var f=t._fullLayout._size;h.lx=f.l+f.w*e.x,h.ly=f.t+f.h*(1-e.y),"fraction"===e.lenmode?h.outerLength=Math.round(f.w*e.len):h.outerLength=e.len,h.inputAreaStart=0,h.inputAreaLength=Math.round(h.outerLength-e.pad.l-e.pad.r);var m=(h.inputAreaLength-2*u.stepInset)/(e._stepCount-1),v=i+u.labelPadding;if(h.labelStride=Math.max(1,Math.ceil(v/m)),h.labelHeight=c,h.currentValueMaxWidth=0,h.currentValueHeight=0,h.currentValueTotalHeight=0,h.currentValueMaxLines=1,e.currentvalue.visible){var x=o.tester.append("g");r.each((function(t){var r=y(x,e,t.label),n=r.node()&&o.bBox(r.node())||{width:0,height:0},a=l.lineCount(r);h.currentValueMaxWidth=Math.max(h.currentValueMaxWidth,Math.ceil(n.width)),h.currentValueHeight=Math.max(h.currentValueHeight,Math.ceil(n.height)),h.currentValueMaxLines=Math.max(h.currentValueMaxLines,a)})),h.currentValueTotalHeight=h.currentValueHeight+e.currentvalue.offset,x.remove()}h.height=h.currentValueTotalHeight+u.tickOffset+e.ticklen+u.labelOffset+h.labelHeight+e.pad.t+e.pad.b;var _="left";s.isRightAnchor(e)&&(h.lx-=h.outerLength,_="right"),s.isCenterAnchor(e)&&(h.lx-=h.outerLength/2,_="center");var w="top";s.isBottomAnchor(e)&&(h.ly-=h.height,w="bottom"),s.isMiddleAnchor(e)&&(h.ly-=h.height/2,w="middle"),h.outerLength=Math.ceil(h.outerLength),h.height=Math.ceil(h.height),h.lx=Math.round(h.lx),h.ly=Math.round(h.ly);var T={y:e.y,b:h.height*d[w],t:h.height*p[w]};"fraction"===e.lenmode?(T.l=0,T.xl=e.x-e.len*p[_],T.r=0,T.xr=e.x+e.len*d[_]):(T.x=e.x,T.l=h.outerLength*p[_],T.r=h.outerLength*d[_]),a.autoMargin(t,g(e),T)}function y(t,e,r){if(e.currentvalue.visible){var n,a,i=e._dims;switch(e.currentvalue.xanchor){case"right":n=i.inputAreaLength-u.currentValueInset-i.currentValueMaxWidth,a="left";break;case"center":n=.5*i.inputAreaLength,a="middle";break;default:n=u.currentValueInset,a="left"}var c=s.ensureSingle(t,"text",u.labelClass,(function(t){t.classed("user-select-none",!0).attr({"text-anchor":a,"data-notex":1})})),h=e.currentvalue.prefix?e.currentvalue.prefix:"";if("string"==typeof r)h+=r;else{var p=e.steps[e.active].label,d=e._gd._fullLayout._meta;d&&(p=s.templateString(p,d)),h+=p}e.currentvalue.suffix&&(h+=e.currentvalue.suffix),c.call(o.font,e.currentvalue.font).text(h).call(l.convertToTspans,e._gd);var g=l.lineCount(c),m=(i.currentValueMaxLines+1-g)*e.currentvalue.font.size*f;return l.positionText(c,n,m),c}}function x(t,e,r){s.ensureSingle(t,"rect",u.gripRectClass,(function(n){n.call(k,e,t,r).style("pointer-events","all")})).attr({width:u.gripWidth,height:u.gripHeight,rx:u.gripRadius,ry:u.gripRadius}).call(i.stroke,r.bordercolor).call(i.fill,r.bgcolor).style("stroke-width",r.borderwidth+"px")}function b(t,e,r){var n=s.ensureSingle(t,"text",u.labelClass,(function(t){t.classed("user-select-none",!0).attr({"text-anchor":"middle","data-notex":1})})),a=e.step.label,i=r._gd._fullLayout._meta;return i&&(a=s.templateString(a,i)),n.call(o.font,r.font).text(a).call(l.convertToTspans,r._gd),n}function _(t,e){var r=s.ensureSingle(t,"g",u.labelsClass),a=e._dims,i=r.selectAll("g."+u.labelGroupClass).data(a.labelSteps);i.enter().append("g").classed(u.labelGroupClass,!0),i.exit().remove(),i.each((function(t){var r=n.select(this);r.call(b,t,e),o.setTranslate(r,S(e,t.fraction),u.tickOffset+e.ticklen+e.font.size*f+u.labelOffset+a.currentValueTotalHeight)}))}function w(t,e,r,n,a){var i=Math.round(n*(r._stepCount-1)),o=r._visibleSteps[i]._index;o!==r.active&&T(t,e,r,o,!0,a)}function T(t,e,r,n,i,o){var s=r.active;r.active=n,c(t.layout,u.name,r).applyUpdate("active",n);var l=r.steps[r.active];e.call(M,r,o),e.call(y,r),t.emit("plotly_sliderchange",{slider:r,step:r.steps[r.active],interaction:i,previousActive:s}),l&&l.method&&i&&(e._nextMethod?(e._nextMethod.step=l,e._nextMethod.doCallback=i,e._nextMethod.doTransition=o):(e._nextMethod={step:l,doCallback:i,doTransition:o},e._nextMethodRaf=window.requestAnimationFrame((function(){var r=e._nextMethod.step;r.method&&(r.execute&&a.executeAPICommand(t,r.method,r.args),e._nextMethod=null,e._nextMethodRaf=null)}))))}function k(t,e,r){var a=r.node(),o=n.select(e);function s(){return r.data()[0]}t.on("mousedown",(function(){var t=s();e.emit("plotly_sliderstart",{slider:t});var l=r.select("."+u.gripRectClass);n.event.stopPropagation(),n.event.preventDefault(),l.call(i.fill,t.activebgcolor);var c=E(t,n.mouse(a)[0]);w(e,r,t,c,!0),t._dragging=!0,o.on("mousemove",(function(){var t=s(),i=E(t,n.mouse(a)[0]);w(e,r,t,i,!1)})),o.on("mouseup",(function(){var t=s();t._dragging=!1,l.call(i.fill,t.bgcolor),o.on("mouseup",null),o.on("mousemove",null),e.emit("plotly_sliderend",{slider:t,step:t.steps[t.active]})}))}))}function A(t,e){var r=t.selectAll("rect."+u.tickRectClass).data(e._visibleSteps),a=e._dims;r.enter().append("rect").classed(u.tickRectClass,!0),r.exit().remove(),r.attr({width:e.tickwidth+"px","shape-rendering":"crispEdges"}),r.each((function(t,r){var s=r%a.labelStride==0,l=n.select(this);l.attr({height:s?e.ticklen:e.minorticklen}).call(i.fill,e.tickcolor),o.setTranslate(l,S(e,r/(e._stepCount-1))-.5*e.tickwidth,(s?u.tickOffset:u.minorTickOffset)+a.currentValueTotalHeight)}))}function M(t,e,r){for(var n=t.select("rect."+u.gripRectClass),a=0,i=0;i<e._stepCount;i++)if(e._visibleSteps[i]._index===e.active){a=i;break}var o=S(e,a/(e._stepCount-1));if(!e._invokingCommand){var s=n;r&&e.transition.duration>0&&(s=s.transition().duration(e.transition.duration).ease(e.transition.easing)),s.attr("transform","translate("+(o-.5*u.gripWidth)+","+e._dims.currentValueTotalHeight+")")}}function S(t,e){var r=t._dims;return r.inputAreaStart+u.stepInset+(r.inputAreaLength-2*u.stepInset)*Math.min(1,Math.max(0,e))}function E(t,e){var r=t._dims;return Math.min(1,Math.max(0,(e-u.stepInset-r.inputAreaStart)/(r.inputAreaLength-2*u.stepInset-2*r.inputAreaStart)))}function C(t,e,r){var n=r._dims,a=s.ensureSingle(t,"rect",u.railTouchRectClass,(function(n){n.call(k,e,t,r).style("pointer-events","all")}));a.attr({width:n.inputAreaLength,height:Math.max(n.inputAreaWidth,u.tickOffset+r.ticklen+n.labelHeight)}).call(i.fill,r.bgcolor).attr("opacity",0),o.setTranslate(a,0,n.currentValueTotalHeight)}function L(t,e){var r=e._dims,n=r.inputAreaLength-2*u.railInset,a=s.ensureSingle(t,"rect",u.railRectClass);a.attr({width:n,height:u.railWidth,rx:u.railRadius,ry:u.railRadius,"shape-rendering":"crispEdges"}).call(i.stroke,e.bordercolor).call(i.fill,e.bgcolor).style("stroke-width",e.borderwidth+"px"),o.setTranslate(a,u.railInset,.5*(r.inputAreaWidth-u.railWidth)+r.currentValueTotalHeight)}e.exports=function(t){var e=t._fullLayout,r=function(t,e){for(var r=t[u.name],n=[],a=0;a<r.length;a++){var i=r[a];i.visible&&(i._gd=e,n.push(i))}return n}(e,t),i=e._infolayer.selectAll("g."+u.containerClassName).data(r.length>0?[0]:[]);function s(e){e._commandObserver&&(e._commandObserver.remove(),delete e._commandObserver),a.autoMargin(t,g(e))}if(i.enter().append("g").classed(u.containerClassName,!0).style("cursor","ew-resize"),i.exit().each((function(){n.select(this).selectAll("g."+u.groupClassName).each(s)})).remove(),0!==r.length){var l=i.selectAll("g."+u.groupClassName).data(r,m);l.enter().append("g").classed(u.groupClassName,!0),l.exit().each(s).remove();for(var c=0;c<r.length;c++){var h=r[c];v(t,h)}l.each((function(e){var r=n.select(this);!function(t){var e=t._dims;e.labelSteps=[];for(var r=t._stepCount,n=0;n<r;n+=e.labelStride)e.labelSteps.push({fraction:n/(r-1),step:t._visibleSteps[n]})}(e),a.manageCommandObserver(t,e,e._visibleSteps,(function(e){var n=r.data()[0];n.active!==e.index&&(n._dragging||T(t,r,n,e.index,!1,!0))})),function(t,e,r){(r.steps[r.active]||{}).visible||(r.active=r._visibleSteps[0]._index);e.call(y,r).call(L,r).call(_,r).call(A,r).call(C,t,r).call(x,t,r);var n=r._dims;o.setTranslate(e,n.lx+r.pad.l,n.ly+r.pad.t),e.call(M,r,!1),e.call(y,r)}(t,n.select(this),e)}))}}},{"../../constants/alignment":697,"../../lib":728,"../../lib/svg_text_utils":752,"../../plot_api/plot_template":766,"../../plots/plots":839,"../color":595,"../drawing":617,"./constants":686,d3:164}],689:[function(t,e,r){"use strict";var n=t("./constants");e.exports={moduleType:"component",name:n.name,layoutAttributes:t("./attributes"),supplyLayoutDefaults:t("./defaults"),draw:t("./draw")}},{"./attributes":685,"./constants":686,"./defaults":687,"./draw":688}],690:[function(t,e,r){"use strict";var n=t("d3"),a=t("fast-isnumeric"),i=t("../../plots/plots"),o=t("../../registry"),s=t("../../lib"),l=t("../drawing"),c=t("../color"),u=t("../../lib/svg_text_utils"),h=t("../../constants/interactions"),f=t("../../constants/alignment").OPPOSITE_SIDE,p=/ [XY][0-9]* /;e.exports={draw:function(t,e,r){var d,g=r.propContainer,m=r.propName,v=r.placeholder,y=r.traceIndex,x=r.avoid||{},b=r.attributes,_=r.transform,w=r.containerGroup,T=t._fullLayout,k=1,A=!1,M=g.title,S=(M&&M.text?M.text:"").trim(),E=M&&M.font?M.font:{},C=E.family,L=E.size,P=E.color;"title.text"===m?d="titleText":-1!==m.indexOf("axis")?d="axisTitleText":m.indexOf(!0)&&(d="colorbarTitleText");var I=t._context.edits[d];""===S?k=0:S.replace(p," % ")===v.replace(p," % ")&&(k=.2,A=!0,I||(S="")),r._meta?S=s.templateString(S,r._meta):T._meta&&(S=s.templateString(S,T._meta));var z=S||I;w||(w=s.ensureSingle(T._infolayer,"g","g-"+e));var O=w.selectAll("text").data(z?[0]:[]);if(O.enter().append("text"),O.text(S).attr("class",e),O.exit().remove(),!z)return w;function D(t){s.syncOrAsync([R,F],t)}function R(e){var r;return _?(r="",_.rotate&&(r+="rotate("+[_.rotate,b.x,b.y]+")"),_.offset&&(r+="translate(0, "+_.offset+")")):r=null,e.attr("transform",r),e.style({"font-family":C,"font-size":n.round(L,2)+"px",fill:c.rgb(P),opacity:k*c.opacity(P),"font-weight":i.fontWeight}).attr(b).call(u.convertToTspans,t),i.previousPromises(t)}function F(t){var e=n.select(t.node().parentNode);if(x&&x.selection&&x.side&&S){e.attr("transform",null);var r=f[x.side],i="left"===x.side||"top"===x.side?-1:1,o=a(x.pad)?x.pad:2,c=l.bBox(e.node()),u={left:0,top:0,right:T.width,bottom:T.height},h=x.maxShift||i*(u[x.side]-c[x.side]),p=0;if(h<0)p=h;else{var d=x.offsetLeft||0,g=x.offsetTop||0;c.left-=d,c.right-=d,c.top-=g,c.bottom-=g,x.selection.each((function(){var t=l.bBox(this);s.bBoxIntersect(c,t,o)&&(p=Math.max(p,i*(t[x.side]-c[r])+o))})),p=Math.min(h,p)}if(p>0||h<0){var m={left:[-p,0],right:[p,0],top:[0,-p],bottom:[0,p]}[x.side];e.attr("transform","translate("+m+")")}}}return O.call(D),I&&(S?O.on(".opacity",null):(k=0,A=!0,O.text(v).on("mouseover.opacity",(function(){n.select(this).transition().duration(h.SHOW_PLACEHOLDER).style("opacity",1)})).on("mouseout.opacity",(function(){n.select(this).transition().duration(h.HIDE_PLACEHOLDER).style("opacity",0)}))),O.call(u.makeEditable,{gd:t}).on("edit",(function(e){void 0!==y?o.call("_guiRestyle",t,m,e,y):o.call("_guiRelayout",t,m,e)})).on("cancel",(function(){this.text(this.attr("data-unformatted")).call(D)})).on("input",(function(t){this.text(t||" ").call(u.positionText,b.x,b.y)}))),O.classed("js-placeholder",A),w}}},{"../../constants/alignment":697,"../../constants/interactions":703,"../../lib":728,"../../lib/svg_text_utils":752,"../../plots/plots":839,"../../registry":859,"../color":595,"../drawing":617,d3:164,"fast-isnumeric":236}],691:[function(t,e,r){"use strict";var n=t("../../plots/font_attributes"),a=t("../color/attributes"),i=t("../../lib/extend").extendFlat,o=t("../../plot_api/edit_types").overrideAll,s=t("../../plots/pad_attributes"),l=t("../../plot_api/plot_template").templatedArray,c=l("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}});e.exports=o(l("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:c,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:i(s({editType:"arraydraw"}),{}),font:n({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:a.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")},{"../../lib/extend":719,"../../plot_api/edit_types":759,"../../plot_api/plot_template":766,"../../plots/font_attributes":804,"../../plots/pad_attributes":838,"../color/attributes":594}],692:[function(t,e,r){"use strict";e.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"}}},{}],693:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../plots/array_container_defaults"),i=t("./attributes"),o=t("./constants").name,s=i.buttons;function l(t,e,r){function o(r,a){return n.coerce(t,e,i,r,a)}o("visible",a(t,e,{name:"buttons",handleItemDefaults:c}).length>0)&&(o("active"),o("direction"),o("type"),o("showactive"),o("x"),o("y"),n.noneOrAll(t,e,["x","y"]),o("xanchor"),o("yanchor"),o("pad.t"),o("pad.r"),o("pad.b"),o("pad.l"),n.coerceFont(o,"font",r.font),o("bgcolor",r.paper_bgcolor),o("bordercolor"),o("borderwidth"))}function c(t,e){function r(r,a){return n.coerce(t,e,s,r,a)}r("visible","skip"===t.method||Array.isArray(t.args))&&(r("method"),r("args"),r("args2"),r("label"),r("execute"))}e.exports=function(t,e){a(t,e,{name:o,handleItemDefaults:l})}},{"../../lib":728,"../../plots/array_container_defaults":772,"./attributes":691,"./constants":692}],694:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../plots/plots"),i=t("../color"),o=t("../drawing"),s=t("../../lib"),l=t("../../lib/svg_text_utils"),c=t("../../plot_api/plot_template").arrayEditor,u=t("../../constants/alignment").LINE_SPACING,h=t("./constants"),f=t("./scrollbox");function p(t){return t._index}function d(t,e){return+t.attr(h.menuIndexAttrName)===e._index}function g(t,e,r,n,a,i,o,s){e.active=o,c(t.layout,h.name,e).applyUpdate("active",o),"buttons"===e.type?v(t,n,null,null,e):"dropdown"===e.type&&(a.attr(h.menuIndexAttrName,"-1"),m(t,n,a,i,e),s||v(t,n,a,i,e))}function m(t,e,r,n,a){var i=s.ensureSingle(e,"g",h.headerClassName,(function(t){t.style("pointer-events","all")})),l=a._dims,c=a.active,u=a.buttons[c]||h.blankHeaderOpts,f={y:a.pad.t,yPad:0,x:a.pad.l,xPad:0,index:0},p={width:l.headerWidth,height:l.headerHeight};i.call(y,a,u,t).call(M,a,f,p),s.ensureSingle(e,"text",h.headerArrowClassName,(function(t){t.classed("user-select-none",!0).attr("text-anchor","end").call(o.font,a.font).text(h.arrowSymbol[a.direction])})).attr({x:l.headerWidth-h.arrowOffsetX+a.pad.l,y:l.headerHeight/2+h.textOffsetY+a.pad.t}),i.on("click",(function(){r.call(S,String(d(r,a)?-1:a._index)),v(t,e,r,n,a)})),i.on("mouseover",(function(){i.call(w)})),i.on("mouseout",(function(){i.call(T,a)})),o.setTranslate(e,l.lx,l.ly)}function v(t,e,r,i,o){r||(r=e).attr("pointer-events","all");var l=function(t){return-1==+t.attr(h.menuIndexAttrName)}(r)&&"buttons"!==o.type?[]:o.buttons,c="dropdown"===o.type?h.dropdownButtonClassName:h.buttonClassName,u=r.selectAll("g."+c).data(s.filterVisible(l)),f=u.enter().append("g").classed(c,!0),p=u.exit();"dropdown"===o.type?(f.attr("opacity","0").transition().attr("opacity","1"),p.transition().attr("opacity","0").remove()):p.remove();var d=0,m=0,v=o._dims,x=-1!==["up","down"].indexOf(o.direction);"dropdown"===o.type&&(x?m=v.headerHeight+h.gapButtonHeader:d=v.headerWidth+h.gapButtonHeader),"dropdown"===o.type&&"up"===o.direction&&(m=-h.gapButtonHeader+h.gapButton-v.openHeight),"dropdown"===o.type&&"left"===o.direction&&(d=-h.gapButtonHeader+h.gapButton-v.openWidth);var b={x:v.lx+d+o.pad.l,y:v.ly+m+o.pad.t,yPad:h.gapButton,xPad:h.gapButton,index:0},k={l:b.x+o.borderwidth,t:b.y+o.borderwidth};u.each((function(s,l){var c=n.select(this);c.call(y,o,s,t).call(M,o,b),c.on("click",(function(){n.event.defaultPrevented||(s.execute&&(s.args2&&o.active===l?(g(t,o,0,e,r,i,-1),a.executeAPICommand(t,s.method,s.args2)):(g(t,o,0,e,r,i,l),a.executeAPICommand(t,s.method,s.args))),t.emit("plotly_buttonclicked",{menu:o,button:s,active:o.active}))})),c.on("mouseover",(function(){c.call(w)})),c.on("mouseout",(function(){c.call(T,o),u.call(_,o)}))})),u.call(_,o),x?(k.w=Math.max(v.openWidth,v.headerWidth),k.h=b.y-k.t):(k.w=b.x-k.l,k.h=Math.max(v.openHeight,v.headerHeight)),k.direction=o.direction,i&&(u.size()?function(t,e,r,n,a,i){var o,s,l,c=a.direction,u="up"===c||"down"===c,f=a._dims,p=a.active;if(u)for(s=0,l=0;l<p;l++)s+=f.heights[l]+h.gapButton;else for(o=0,l=0;l<p;l++)o+=f.widths[l]+h.gapButton;n.enable(i,o,s),n.hbar&&n.hbar.attr("opacity","0").transition().attr("opacity","1");n.vbar&&n.vbar.attr("opacity","0").transition().attr("opacity","1")}(0,0,0,i,o,k):function(t){var e=!!t.hbar,r=!!t.vbar;e&&t.hbar.transition().attr("opacity","0").each("end",(function(){e=!1,r||t.disable()}));r&&t.vbar.transition().attr("opacity","0").each("end",(function(){r=!1,e||t.disable()}))}(i))}function y(t,e,r,n){t.call(x,e).call(b,e,r,n)}function x(t,e){s.ensureSingle(t,"rect",h.itemRectClassName,(function(t){t.attr({rx:h.rx,ry:h.ry,"shape-rendering":"crispEdges"})})).call(i.stroke,e.bordercolor).call(i.fill,e.bgcolor).style("stroke-width",e.borderwidth+"px")}function b(t,e,r,n){var a=s.ensureSingle(t,"text",h.itemTextClassName,(function(t){t.classed("user-select-none",!0).attr({"text-anchor":"start","data-notex":1})})),i=r.label,c=n._fullLayout._meta;c&&(i=s.templateString(i,c)),a.call(o.font,e.font).text(i).call(l.convertToTspans,n)}function _(t,e){var r=e.active;t.each((function(t,a){var o=n.select(this);a===r&&e.showactive&&o.select("rect."+h.itemRectClassName).call(i.fill,h.activeColor)}))}function w(t){t.select("rect."+h.itemRectClassName).call(i.fill,h.hoverColor)}function T(t,e){t.select("rect."+h.itemRectClassName).call(i.fill,e.bgcolor)}function k(t,e){var r=e._dims={width1:0,height1:0,heights:[],widths:[],totalWidth:0,totalHeight:0,openWidth:0,openHeight:0,lx:0,ly:0},i=o.tester.selectAll("g."+h.dropdownButtonClassName).data(s.filterVisible(e.buttons));i.enter().append("g").classed(h.dropdownButtonClassName,!0);var c=-1!==["up","down"].indexOf(e.direction);i.each((function(a,i){var s=n.select(this);s.call(y,e,a,t);var f=s.select("."+h.itemTextClassName),p=f.node()&&o.bBox(f.node()).width,d=Math.max(p+h.textPadX,h.minWidth),g=e.font.size*u,m=l.lineCount(f),v=Math.max(g*m,h.minHeight)+h.textOffsetY;v=Math.ceil(v),d=Math.ceil(d),r.widths[i]=d,r.heights[i]=v,r.height1=Math.max(r.height1,v),r.width1=Math.max(r.width1,d),c?(r.totalWidth=Math.max(r.totalWidth,d),r.openWidth=r.totalWidth,r.totalHeight+=v+h.gapButton,r.openHeight+=v+h.gapButton):(r.totalWidth+=d+h.gapButton,r.openWidth+=d+h.gapButton,r.totalHeight=Math.max(r.totalHeight,v),r.openHeight=r.totalHeight)})),c?r.totalHeight-=h.gapButton:r.totalWidth-=h.gapButton,r.headerWidth=r.width1+h.arrowPadX,r.headerHeight=r.height1,"dropdown"===e.type&&(c?(r.width1+=h.arrowPadX,r.totalHeight=r.height1):r.totalWidth=r.width1,r.totalWidth+=h.arrowPadX),i.remove();var f=r.totalWidth+e.pad.l+e.pad.r,p=r.totalHeight+e.pad.t+e.pad.b,d=t._fullLayout._size;r.lx=d.l+d.w*e.x,r.ly=d.t+d.h*(1-e.y);var g="left";s.isRightAnchor(e)&&(r.lx-=f,g="right"),s.isCenterAnchor(e)&&(r.lx-=f/2,g="center");var m="top";s.isBottomAnchor(e)&&(r.ly-=p,m="bottom"),s.isMiddleAnchor(e)&&(r.ly-=p/2,m="middle"),r.totalWidth=Math.ceil(r.totalWidth),r.totalHeight=Math.ceil(r.totalHeight),r.lx=Math.round(r.lx),r.ly=Math.round(r.ly),a.autoMargin(t,A(e),{x:e.x,y:e.y,l:f*({right:1,center:.5}[g]||0),r:f*({left:1,center:.5}[g]||0),b:p*({top:1,middle:.5}[m]||0),t:p*({bottom:1,middle:.5}[m]||0)})}function A(t){return h.autoMarginIdRoot+t._index}function M(t,e,r,n){n=n||{};var a=t.select("."+h.itemRectClassName),i=t.select("."+h.itemTextClassName),s=e.borderwidth,c=r.index,f=e._dims;o.setTranslate(t,s+r.x,s+r.y);var p=-1!==["up","down"].indexOf(e.direction),d=n.height||(p?f.heights[c]:f.height1);a.attr({x:0,y:0,width:n.width||(p?f.width1:f.widths[c]),height:d});var g=e.font.size*u,m=(l.lineCount(i)-1)*g/2;l.positionText(i,h.textOffsetX,d/2-m+h.textOffsetY),p?r.y+=f.heights[c]+r.yPad:r.x+=f.widths[c]+r.xPad,r.index++}function S(t,e){t.attr(h.menuIndexAttrName,e||"-1").selectAll("g."+h.dropdownButtonClassName).remove()}e.exports=function(t){var e=t._fullLayout,r=s.filterVisible(e[h.name]);function i(e){a.autoMargin(t,A(e))}var o=e._menulayer.selectAll("g."+h.containerClassName).data(r.length>0?[0]:[]);if(o.enter().append("g").classed(h.containerClassName,!0).style("cursor","pointer"),o.exit().each((function(){n.select(this).selectAll("g."+h.headerGroupClassName).each(i)})).remove(),0!==r.length){var l=o.selectAll("g."+h.headerGroupClassName).data(r,p);l.enter().append("g").classed(h.headerGroupClassName,!0);for(var c=s.ensureSingle(o,"g",h.dropdownButtonGroupClassName,(function(t){t.style("pointer-events","all")})),u=0;u<r.length;u++){var y=r[u];k(t,y)}var x="updatemenus"+e._uid,b=new f(t,c,x);l.enter().size()&&(c.node().parentNode.appendChild(c.node()),c.call(S)),l.exit().each((function(t){c.call(S),i(t)})).remove(),l.each((function(e){var r=n.select(this),i="dropdown"===e.type?c:null;a.manageCommandObserver(t,e,e.buttons,(function(n){g(t,e,e.buttons[n.index],r,i,b,n.index,!0)})),"dropdown"===e.type?(m(t,r,c,b,e),d(c,e)&&v(t,r,c,b,e)):v(t,r,null,null,e)}))}}},{"../../constants/alignment":697,"../../lib":728,"../../lib/svg_text_utils":752,"../../plot_api/plot_template":766,"../../plots/plots":839,"../color":595,"../drawing":617,"./constants":692,"./scrollbox":696,d3:164}],695:[function(t,e,r){arguments[4][689][0].apply(r,arguments)},{"./attributes":691,"./constants":692,"./defaults":693,"./draw":694,dup:689}],696:[function(t,e,r){"use strict";e.exports=s;var n=t("d3"),a=t("../color"),i=t("../drawing"),o=t("../../lib");function s(t,e,r){this.gd=t,this.container=e,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})}s.barWidth=2,s.barLength=20,s.barRadius=2,s.barPad=1,s.barColor="#808BA4",s.prototype.enable=function(t,e,r){var o=this.gd._fullLayout,l=o.width,c=o.height;this.position=t;var u,h,f,p,d=this.position.l,g=this.position.w,m=this.position.t,v=this.position.h,y=this.position.direction,x="down"===y,b="left"===y,_="up"===y,w=g,T=v;x||b||"right"===y||_||(this.position.direction="down",x=!0),x||_?(h=(u=d)+w,x?(f=m,T=(p=Math.min(f+T,c))-f):T=(p=m+T)-(f=Math.max(p-T,0))):(p=(f=m)+T,b?w=(h=d+w)-(u=Math.max(h-w,0)):(u=d,w=(h=Math.min(u+w,l))-u)),this._box={l:u,t:f,w:w,h:T};var k=g>w,A=s.barLength+2*s.barPad,M=s.barWidth+2*s.barPad,S=d,E=m+v;E+M>c&&(E=c-M);var C=this.container.selectAll("rect.scrollbar-horizontal").data(k?[0]:[]);C.exit().on(".drag",null).remove(),C.enter().append("rect").classed("scrollbar-horizontal",!0).call(a.fill,s.barColor),k?(this.hbar=C.attr({rx:s.barRadius,ry:s.barRadius,x:S,y:E,width:A,height:M}),this._hbarXMin=S+A/2,this._hbarTranslateMax=w-A):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var L=v>T,P=s.barWidth+2*s.barPad,I=s.barLength+2*s.barPad,z=d+g,O=m;z+P>l&&(z=l-P);var D=this.container.selectAll("rect.scrollbar-vertical").data(L?[0]:[]);D.exit().on(".drag",null).remove(),D.enter().append("rect").classed("scrollbar-vertical",!0).call(a.fill,s.barColor),L?(this.vbar=D.attr({rx:s.barRadius,ry:s.barRadius,x:z,y:O,width:P,height:I}),this._vbarYMin=O+I/2,this._vbarTranslateMax=T-I):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var R=this.id,F=u-.5,B=L?h+P+.5:h+.5,N=f-.5,j=k?p+M+.5:p+.5,V=o._topdefs.selectAll("#"+R).data(k||L?[0]:[]);if(V.exit().remove(),V.enter().append("clipPath").attr("id",R).append("rect"),k||L?(this._clipRect=V.select("rect").attr({x:Math.floor(F),y:Math.floor(N),width:Math.ceil(B)-Math.floor(F),height:Math.ceil(j)-Math.floor(N)}),this.container.call(i.setClipUrl,R,this.gd),this.bg.attr({x:d,y:m,width:g,height:v})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(i.setClipUrl,null),delete this._clipRect),k||L){var U=n.behavior.drag().on("dragstart",(function(){n.event.sourceEvent.preventDefault()})).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(U);var q=n.behavior.drag().on("dragstart",(function(){n.event.sourceEvent.preventDefault(),n.event.sourceEvent.stopPropagation()})).on("drag",this._onBarDrag.bind(this));k&&this.hbar.on(".drag",null).call(q),L&&this.vbar.on(".drag",null).call(q)}this.setTranslate(e,r)},s.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(i.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)},s.prototype._onBoxDrag=function(){var t=this.translateX,e=this.translateY;this.hbar&&(t-=n.event.dx),this.vbar&&(e-=n.event.dy),this.setTranslate(t,e)},s.prototype._onBoxWheel=function(){var t=this.translateX,e=this.translateY;this.hbar&&(t+=n.event.deltaY),this.vbar&&(e+=n.event.deltaY),this.setTranslate(t,e)},s.prototype._onBarDrag=function(){var t=this.translateX,e=this.translateY;if(this.hbar){var r=t+this._hbarXMin,a=r+this._hbarTranslateMax;t=(o.constrain(n.event.x,r,a)-r)/(a-r)*(this.position.w-this._box.w)}if(this.vbar){var i=e+this._vbarYMin,s=i+this._vbarTranslateMax;e=(o.constrain(n.event.y,i,s)-i)/(s-i)*(this.position.h-this._box.h)}this.setTranslate(t,e)},s.prototype.setTranslate=function(t,e){var r=this.position.w-this._box.w,n=this.position.h-this._box.h;if(t=o.constrain(t||0,0,r),e=o.constrain(e||0,0,n),this.translateX=t,this.translateY=e,this.container.call(i.setTranslate,this._box.l-this.position.l-t,this._box.t-this.position.t-e),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+t-.5),y:Math.floor(this.position.t+e-.5)}),this.hbar){var a=t/r;this.hbar.call(i.setTranslate,t+a*this._hbarTranslateMax,e)}if(this.vbar){var s=e/n;this.vbar.call(i.setTranslate,t,e+s*this._vbarTranslateMax)}}},{"../../lib":728,"../color":595,"../drawing":617,d3:164}],697:[function(t,e,r){"use strict";e.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"}}},{}],698:[function(t,e,r){"use strict";e.exports={INCREASING:{COLOR:"#3D9970",SYMBOL:"\u25b2"},DECREASING:{COLOR:"#FF4136",SYMBOL:"\u25bc"}}},{}],699:[function(t,e,r){"use strict";e.exports={FORMAT_LINK:"https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format",DATE_FORMAT_LINK:"https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#format"}},{}],700:[function(t,e,r){"use strict";e.exports={COMPARISON_OPS:["=","!=","<",">=",">","<="],COMPARISON_OPS2:["=","<",">=",">","<="],INTERVAL_OPS:["[]","()","[)","(]","][",")(","](",")["],SET_OPS:["{}","}{"],CONSTRAINT_REDUCTION:{"=":"=","<":"<","<=":"<",">":">",">=":">","[]":"[]","()":"[]","[)":"[]","(]":"[]","][":"][",")(":"][","](":"][",")[":"]["}}},{}],701:[function(t,e,r){"use strict";e.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]}},{}],702:[function(t,e,r){"use strict";e.exports={circle:"\u25cf","circle-open":"\u25cb",square:"\u25a0","square-open":"\u25a1",diamond:"\u25c6","diamond-open":"\u25c7",cross:"+",x:"\u274c"}},{}],703:[function(t,e,r){"use strict";e.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}},{}],704:[function(t,e,r){"use strict";e.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE/1e4,ONEAVGYEAR:315576e5,ONEAVGMONTH:26298e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,EPOCHJD:2440587.5,ALMOST_EQUAL:.999999,LOG_CLIP:10,MINUS_SIGN:"\u2212"}},{}],705:[function(t,e,r){"use strict";r.xmlns="http://www.w3.org/2000/xmlns/",r.svg="http://www.w3.org/2000/svg",r.xlink="http://www.w3.org/1999/xlink",r.svgAttrs={xmlns:r.svg,"xmlns:xlink":r.xlink}},{}],706:[function(t,e,r){"use strict";r.version=t("./version").version,t("es6-promise").polyfill(),t("../build/plotcss"),t("./fonts/mathjax_config")();for(var n=t("./registry"),a=r.register=n.register,i=t("./plot_api"),o=Object.keys(i),s=0;s<o.length;s++){var l=o[s];"_"!==l.charAt(0)&&(r[l]=i[l]),a({moduleType:"apiMethod",name:l,fn:i[l]})}a(t("./traces/scatter")),a([t("./components/legend"),t("./components/fx"),t("./components/annotations"),t("./components/annotations3d"),t("./components/shapes"),t("./components/images"),t("./components/updatemenus"),t("./components/sliders"),t("./components/rangeslider"),t("./components/rangeselector"),t("./components/grid"),t("./components/errorbars"),t("./components/colorscale"),t("./components/colorbar")]),a([t("./locale-en"),t("./locale-en-us")]),window.PlotlyLocales&&Array.isArray(window.PlotlyLocales)&&(a(window.PlotlyLocales),delete window.PlotlyLocales),r.Icons=t("./fonts/ploticon"),r.Plots=t("./plots/plots"),r.Fx=t("./components/fx"),r.Snapshot=t("./snapshot"),r.PlotSchema=t("./plot_api/plot_schema"),r.Queue=t("./lib/queue"),r.d3=t("d3")},{"../build/plotcss":1,"./components/annotations":586,"./components/annotations3d":591,"./components/colorbar":601,"./components/colorscale":607,"./components/errorbars":623,"./components/fx":635,"./components/grid":639,"./components/images":644,"./components/legend":652,"./components/rangeselector":663,"./components/rangeslider":670,"./components/shapes":684,"./components/sliders":689,"./components/updatemenus":695,"./fonts/mathjax_config":707,"./fonts/ploticon":708,"./lib/queue":743,"./locale-en":757,"./locale-en-us":756,"./plot_api":761,"./plot_api/plot_schema":765,"./plots/plots":839,"./registry":859,"./snapshot":864,"./traces/scatter":1146,"./version":1316,d3:164,"es6-promise":219}],707:[function(t,e,r){"use strict";e.exports=function(){"undefined"!=typeof MathJax&&("local"!==(window.PlotlyConfig||{}).MathJaxConfig&&(MathJax.Hub.Config({messageStyle:"none",skipStartupTypeset:!0,displayAlign:"left",tex2jax:{inlineMath:[["$","$"],["\\(","\\)"]]}}),MathJax.Hub.Configured()))}},{}],708:[function(t,e,r){"use strict";e.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:"<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 132 132'><defs><style>.cls-1 {fill: #3f4f75;} .cls-2 {fill: #80cfbe;} .cls-3 {fill: #fff;}</style></defs><title>plotly-logomark</title><g id='symbol'><rect class='cls-1' width='132' height='132' rx='6' ry='6'/><circle class='cls-2' cx='78' cy='54' r='6'/><circle class='cls-2' cx='102' cy='30' r='6'/><circle class='cls-2' cx='78' cy='30' r='6'/><circle class='cls-2' cx='54' cy='30' r='6'/><circle class='cls-2' cx='30' cy='30' r='6'/><circle class='cls-2' cx='30' cy='54' r='6'/><path class='cls-3' d='M30,72a6,6,0,0,0-6,6v24a6,6,0,0,0,12,0V78A6,6,0,0,0,30,72Z'/><path class='cls-3' d='M78,72a6,6,0,0,0-6,6v24a6,6,0,0,0,12,0V78A6,6,0,0,0,78,72Z'/><path class='cls-3' d='M54,48a6,6,0,0,0-6,6v48a6,6,0,0,0,12,0V54A6,6,0,0,0,54,48Z'/><path class='cls-3' d='M102,48a6,6,0,0,0-6,6v48a6,6,0,0,0,12,0V54A6,6,0,0,0,102,48Z'/></g></svg>"}}},{}],709:[function(t,e,r){"use strict";r.isLeftAnchor=function(t){return"left"===t.xanchor||"auto"===t.xanchor&&t.x<=1/3},r.isCenterAnchor=function(t){return"center"===t.xanchor||"auto"===t.xanchor&&t.x>1/3&&t.x<2/3},r.isRightAnchor=function(t){return"right"===t.xanchor||"auto"===t.xanchor&&t.x>=2/3},r.isTopAnchor=function(t){return"top"===t.yanchor||"auto"===t.yanchor&&t.y>=2/3},r.isMiddleAnchor=function(t){return"middle"===t.yanchor||"auto"===t.yanchor&&t.y>1/3&&t.y<2/3},r.isBottomAnchor=function(t){return"bottom"===t.yanchor||"auto"===t.yanchor&&t.y<=1/3}},{}],710:[function(t,e,r){"use strict";var n=t("./mod"),a=n.mod,i=n.modHalf,o=Math.PI,s=2*o;function l(t){return Math.abs(t[1]-t[0])>s-1e-14}function c(t,e){return i(e-t,s)}function u(t,e){if(l(e))return!0;var r,n;e[0]<e[1]?(r=e[0],n=e[1]):(r=e[1],n=e[0]),(r=a(r,s))>(n=a(n,s))&&(n+=s);var i=a(t,s),o=i+s;return i>=r&&i<=n||o>=r&&o<=n}function h(t,e,r,n,a,i,c){a=a||0,i=i||0;var u,h,f,p,d,g=l([r,n]);function m(t,e){return[t*Math.cos(e)+a,i-t*Math.sin(e)]}g?(u=0,h=o,f=s):r<n?(u=r,f=n):(u=n,f=r),t<e?(p=t,d=e):(p=e,d=t);var v,y=Math.abs(f-u)<=o?0:1;function x(t,e,r){return"A"+[t,t]+" "+[0,y,r]+" "+m(t,e)}return g?v=null===p?"M"+m(d,u)+x(d,h,0)+x(d,f,0)+"Z":"M"+m(p,u)+x(p,h,0)+x(p,f,0)+"ZM"+m(d,u)+x(d,h,1)+x(d,f,1)+"Z":null===p?(v="M"+m(d,u)+x(d,f,0),c&&(v+="L0,0Z")):v="M"+m(p,u)+"L"+m(d,u)+x(d,f,0)+"L"+m(p,f)+x(p,u,1)+"Z",v}e.exports={deg2rad:function(t){return t/180*o},rad2deg:function(t){return t/o*180},angleDelta:c,angleDist:function(t,e){return Math.abs(c(t,e))},isFullCircle:l,isAngleInsideSector:u,isPtInsideSector:function(t,e,r,n){return!!u(e,n)&&(r[0]<r[1]?(a=r[0],i=r[1]):(a=r[1],i=r[0]),t>=a&&t<=i);var a,i},pathArc:function(t,e,r,n,a){return h(null,t,e,r,n,a,0)},pathSector:function(t,e,r,n,a){return h(null,t,e,r,n,a,1)},pathAnnulus:function(t,e,r,n,a,i){return h(t,e,r,n,a,i,1)}}},{"./mod":735}],711:[function(t,e,r){"use strict";var n=Array.isArray,a="undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer:{isView:function(){return!1}},i="undefined"==typeof DataView?function(){}:DataView;function o(t){return a.isView(t)&&!(t instanceof i)}function s(t){return n(t)||o(t)}function l(t,e,r){if(s(t)){if(s(t[0])){for(var n=r,a=0;a<t.length;a++)n=e(n,t[a].length);return n}return t.length}return 0}r.isTypedArray=o,r.isArrayOrTypedArray=s,r.isArray1D=function(t){return!s(t[0])},r.ensureArray=function(t,e){return n(t)||(t=[]),t.length=e,t},r.concat=function(){var t,e,r,a,i,o,s,l,c=[],u=!0,h=0;for(r=0;r<arguments.length;r++)(o=(a=arguments[r]).length)&&(e?c.push(a):(e=a,i=o),n(a)?t=!1:(u=!1,h?t!==a.constructor&&(t=!1):t=a.constructor),h+=o);if(!h)return[];if(!c.length)return e;if(u)return e.concat.apply(e,c);if(t){for((s=new t(h)).set(e),r=0;r<c.length;r++)a=c[r],s.set(a,i),i+=a.length;return s}for(s=new Array(h),l=0;l<e.length;l++)s[l]=e[l];for(r=0;r<c.length;r++){for(a=c[r],l=0;l<a.length;l++)s[i+l]=a[l];i+=l}return s},r.maxRowLength=function(t){return l(t,Math.max,0)},r.minRowLength=function(t){return l(t,Math.min,1/0)}},{}],712:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../constants/numerical").BADNUM,i=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;e.exports=function(t){return"string"==typeof t&&(t=t.replace(i,"")),n(t)?Number(t):a}},{"../constants/numerical":704,"fast-isnumeric":236}],713:[function(t,e,r){"use strict";e.exports=function(t){var e=t._fullLayout;e._glcanvas&&e._glcanvas.size()&&e._glcanvas.each((function(t){t.regl&&t.regl.clear({color:!0,depth:!0})}))}},{}],714:[function(t,e,r){"use strict";e.exports=function(t){t._responsiveChartHandler&&(window.removeEventListener("resize",t._responsiveChartHandler),delete t._responsiveChartHandler)}},{}],715:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("tinycolor2"),i=t("../plots/attributes"),o=t("../components/colorscale/scales"),s=t("../constants/interactions").DESELECTDIM,l=t("./nested_property"),c=t("./regex").counter,u=t("./mod").modHalf,h=t("./array").isArrayOrTypedArray;function f(t,e,n,a,i,o){var s=(o||{}).shouldValidate,c=l(n,a).get();void 0===i&&(i=c.dflt);var u=!1,f=l(t,a),d=l(e,a),g=f.get(),m=e._template;if(void 0===g&&m&&(u=void 0!==(g=l(m,a).get()),m=0),c.arrayOk&&h(g))return d.set(g),{inp:g,val:g,src:!0};var v=r.valObjectMeta[c.valType].coerceFunction;v(g,d,i,c);var y=d.get();return u=void 0!==y&&s&&p(g,c),m&&y===i&&!p(g,c)&&(v(g=l(m,a).get(),d,i,c),u=void 0!==(y=d.get())&&s&&p(g,c)),{inp:g,val:y,src:u}}function p(t,e){var n=r.valObjectMeta[e.valType];if(e.arrayOk&&h(t))return!0;if(n.validateFunction)return n.validateFunction(t,e);var a={},i=a,o={set:function(t){i=t}};return n.coerceFunction(t,o,a,e),i!==a}r.valObjectMeta={data_array:{coerceFunction:function(t,e,r){h(t)?e.set(t):void 0!==r&&e.set(r)}},enumerated:{coerceFunction:function(t,e,r,n){n.coerceNumber&&(t=+t),-1===n.values.indexOf(t)?e.set(r):e.set(t)},validateFunction:function(t,e){e.coerceNumber&&(t=+t);for(var r=e.values,n=0;n<r.length;n++){var a=String(r[n]);if("/"===a.charAt(0)&&"/"===a.charAt(a.length-1)){if(new RegExp(a.substr(1,a.length-2)).test(t))return!0}else if(t===r[n])return!0}return!1}},boolean:{coerceFunction:function(t,e,r){!0===t||!1===t?e.set(t):e.set(r)}},number:{coerceFunction:function(t,e,r,a){!n(t)||void 0!==a.min&&t<a.min||void 0!==a.max&&t>a.max?e.set(r):e.set(+t)}},integer:{coerceFunction:function(t,e,r,a){t%1||!n(t)||void 0!==a.min&&t<a.min||void 0!==a.max&&t>a.max?e.set(r):e.set(+t)}},string:{coerceFunction:function(t,e,r,n){if("string"!=typeof t){var a="number"==typeof t;!0!==n.strict&&a?e.set(String(t)):e.set(r)}else n.noBlank&&!t?e.set(r):e.set(t)}},color:{coerceFunction:function(t,e,r){a(t).isValid()?e.set(t):e.set(r)}},colorlist:{coerceFunction:function(t,e,r){Array.isArray(t)&&t.length&&t.every((function(t){return a(t).isValid()}))?e.set(t):e.set(r)}},colorscale:{coerceFunction:function(t,e,r){e.set(o.get(t,r))}},angle:{coerceFunction:function(t,e,r){"auto"===t?e.set("auto"):n(t)?e.set(u(+t,360)):e.set(r)}},subplotid:{coerceFunction:function(t,e,r,n){var a=n.regex||c(r);"string"==typeof t&&a.test(t)?e.set(t):e.set(r)},validateFunction:function(t,e){var r=e.dflt;return t===r||"string"==typeof t&&!!c(r).test(t)}},flaglist:{coerceFunction:function(t,e,r,n){if("string"==typeof t)if(-1===(n.extras||[]).indexOf(t)){for(var a=t.split("+"),i=0;i<a.length;){var o=a[i];-1===n.flags.indexOf(o)||a.indexOf(o)<i?a.splice(i,1):i++}a.length?e.set(a.join("+")):e.set(r)}else e.set(t);else e.set(r)}},any:{coerceFunction:function(t,e,r){void 0===t?e.set(r):e.set(t)}},info_array:{coerceFunction:function(t,e,n,a){function i(t,e,n){var a,i={set:function(t){a=t}};return void 0===n&&(n=e.dflt),r.valObjectMeta[e.valType].coerceFunction(t,i,n,e),a}var o=2===a.dimensions||"1-2"===a.dimensions&&Array.isArray(t)&&Array.isArray(t[0]);if(Array.isArray(t)){var s,l,c,u,h,f,p=a.items,d=[],g=Array.isArray(p),m=g&&o&&Array.isArray(p[0]),v=o&&g&&!m,y=g&&!v?p.length:t.length;if(n=Array.isArray(n)?n:[],o)for(s=0;s<y;s++)for(d[s]=[],c=Array.isArray(t[s])?t[s]:[],h=v?p.length:g?p[s].length:c.length,l=0;l<h;l++)u=v?p[l]:g?p[s][l]:p,void 0!==(f=i(c[l],u,(n[s]||[])[l]))&&(d[s][l]=f);else for(s=0;s<y;s++)void 0!==(f=i(t[s],g?p[s]:p,n[s]))&&(d[s]=f);e.set(d)}else e.set(n)},validateFunction:function(t,e){if(!Array.isArray(t))return!1;var r=e.items,n=Array.isArray(r),a=2===e.dimensions;if(!e.freeLength&&t.length!==r.length)return!1;for(var i=0;i<t.length;i++)if(a){if(!Array.isArray(t[i])||!e.freeLength&&t[i].length!==r[i].length)return!1;for(var o=0;o<t[i].length;o++)if(!p(t[i][o],n?r[i][o]:r))return!1}else if(!p(t[i],n?r[i]:r))return!1;return!0}}},r.coerce=function(t,e,r,n,a){return f(t,e,r,n,a).val},r.coerce2=function(t,e,r,n,a){var i=f(t,e,r,n,a,{shouldValidate:!0});return!(!i.src||void 0===i.inp)&&i.val},r.coerceFont=function(t,e,r){var n={};return r=r||{},n.family=t(e+".family",r.family),n.size=t(e+".size",r.size),n.color=t(e+".color",r.color),n},r.coerceHoverinfo=function(t,e,n){var a,o=e._module.attributes,s=o.hoverinfo?o:i,l=s.hoverinfo;if(1===n._dataLength){var c="all"===l.dflt?l.flags.slice():l.dflt.split("+");c.splice(c.indexOf("name"),1),a=c.join("+")}return r.coerce(t,e,s,"hoverinfo",a)},r.coerceSelectionMarkerOpacity=function(t,e){if(t.marker){var r,n,a=t.marker.opacity;if(void 0!==a)h(a)||t.selected||t.unselected||(r=a,n=s*a),e("selected.marker.opacity",r),e("unselected.marker.opacity",n)}},r.validate=p},{"../components/colorscale/scales":610,"../constants/interactions":703,"../plots/attributes":773,"./array":711,"./mod":735,"./nested_property":736,"./regex":744,"fast-isnumeric":236,tinycolor2:528}],716:[function(t,e,r){"use strict";var n,a,i=t("d3"),o=t("fast-isnumeric"),s=t("./loggers"),l=t("./mod").mod,c=t("../constants/numerical"),u=c.BADNUM,h=c.ONEDAY,f=c.ONEHOUR,p=c.ONEMIN,d=c.ONESEC,g=c.EPOCHJD,m=t("../registry"),v=i.time.format.utc,y=/^\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,x=/^\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,b=(new Date).getFullYear()-70;function _(t){return t&&m.componentsRegistry.calendars&&"string"==typeof t&&"gregorian"!==t}function w(t,e){return String(t+Math.pow(10,e)).substr(1)}r.dateTick0=function(t,e){return _(t)?e?m.getComponentMethod("calendars","CANONICAL_SUNDAY")[t]:m.getComponentMethod("calendars","CANONICAL_TICK")[t]:e?"2000-01-02":"2000-01-01"},r.dfltRange=function(t){return _(t)?m.getComponentMethod("calendars","DFLTRANGE")[t]:["2000-01-01","2001-01-01"]},r.isJSDate=function(t){return"object"==typeof t&&null!==t&&"function"==typeof t.getTime},r.dateTime2ms=function(t,e){if(r.isJSDate(t)){var i=t.getTimezoneOffset()*p,o=(t.getUTCMinutes()-t.getMinutes())*p+(t.getUTCSeconds()-t.getSeconds())*d+(t.getUTCMilliseconds()-t.getMilliseconds());if(o){var s=3*p;i=i-s/2+l(o-i+s/2,s)}return(t=Number(t)-i)>=n&&t<=a?t:u}if("string"!=typeof t&&"number"!=typeof t)return u;t=String(t);var c=_(e),v=t.charAt(0);!c||"G"!==v&&"g"!==v||(t=t.substr(1),e="");var w=c&&"chinese"===e.substr(0,7),T=t.match(w?x:y);if(!T)return u;var k=T[1],A=T[3]||"1",M=Number(T[5]||1),S=Number(T[7]||0),E=Number(T[9]||0),C=Number(T[11]||0);if(c){if(2===k.length)return u;var L;k=Number(k);try{var P=m.getComponentMethod("calendars","getCal")(e);if(w){var I="i"===A.charAt(A.length-1);A=parseInt(A,10),L=P.newDate(k,P.toMonthIndex(k,A,I),M)}else L=P.newDate(k,Number(A),M)}catch(t){return u}return L?(L.toJD()-g)*h+S*f+E*p+C*d:u}k=2===k.length?(Number(k)+2e3-b)%100+b:Number(k),A-=1;var z=new Date(Date.UTC(2e3,A,M,S,E));return z.setUTCFullYear(k),z.getUTCMonth()!==A||z.getUTCDate()!==M?u:z.getTime()+C*d},n=r.MIN_MS=r.dateTime2ms("-9999"),a=r.MAX_MS=r.dateTime2ms("9999-12-31 23:59:59.9999"),r.isDateTime=function(t,e){return r.dateTime2ms(t,e)!==u};var T=90*h,k=3*f,A=5*p;function M(t,e,r,n,a){if((e||r||n||a)&&(t+=" "+w(e,2)+":"+w(r,2),(n||a)&&(t+=":"+w(n,2),a))){for(var i=4;a%10==0;)i-=1,a/=10;t+="."+w(a,i)}return t}r.ms2DateTime=function(t,e,r){if("number"!=typeof t||!(t>=n&&t<=a))return u;e||(e=0);var i,o,s,c,y,x,b=Math.floor(10*l(t+.05,1)),w=Math.round(t-b/10);if(_(r)){var S=Math.floor(w/h)+g,E=Math.floor(l(t,h));try{i=m.getComponentMethod("calendars","getCal")(r).fromJD(S).formatDate("yyyy-mm-dd")}catch(t){i=v("G%Y-%m-%d")(new Date(w))}if("-"===i.charAt(0))for(;i.length<11;)i="-0"+i.substr(1);else for(;i.length<10;)i="0"+i;o=e<T?Math.floor(E/f):0,s=e<T?Math.floor(E%f/p):0,c=e<k?Math.floor(E%p/d):0,y=e<A?E%d*10+b:0}else x=new Date(w),i=v("%Y-%m-%d")(x),o=e<T?x.getUTCHours():0,s=e<T?x.getUTCMinutes():0,c=e<k?x.getUTCSeconds():0,y=e<A?10*x.getUTCMilliseconds()+b:0;return M(i,o,s,c,y)},r.ms2DateTimeLocal=function(t){if(!(t>=n+h&&t<=a-h))return u;var e=Math.floor(10*l(t+.05,1)),r=new Date(Math.round(t-e/10));return M(i.time.format("%Y-%m-%d")(r),r.getHours(),r.getMinutes(),r.getSeconds(),10*r.getUTCMilliseconds()+e)},r.cleanDate=function(t,e,n){if(t===u)return e;if(r.isJSDate(t)||"number"==typeof t&&isFinite(t)){if(_(n))return s.error("JS Dates and milliseconds are incompatible with world calendars",t),e;if(!(t=r.ms2DateTimeLocal(+t))&&void 0!==e)return e}else if(!r.isDateTime(t,n))return s.error("unrecognized date",t),e;return t};var S=/%\d?f/g;function E(t,e,r,n){t=t.replace(S,(function(t){var r=Math.min(+t.charAt(1)||6,6);return(e/1e3%1+2).toFixed(r).substr(2).replace(/0+$/,"")||"0"}));var a=new Date(Math.floor(e+.05));if(_(n))try{t=m.getComponentMethod("calendars","worldCalFmt")(t,e,n)}catch(t){return"Invalid"}return r(t)(a)}var C=[59,59.9,59.99,59.999,59.9999];r.formatDate=function(t,e,r,n,a,i){if(a=_(a)&&a,!e)if("y"===r)e=i.year;else if("m"===r)e=i.month;else{if("d"!==r)return function(t,e){var r=l(t+.05,h),n=w(Math.floor(r/f),2)+":"+w(l(Math.floor(r/p),60),2);if("M"!==e){o(e)||(e=0);var a=(100+Math.min(l(t/d,60),C[e])).toFixed(e).substr(1);e>0&&(a=a.replace(/0+$/,"").replace(/[\.]$/,"")),n+=":"+a}return n}(t,r)+"\n"+E(i.dayMonthYear,t,n,a);e=i.dayMonth+"\n"+i.year}return E(e,t,n,a)};var L=3*h;r.incrementMonth=function(t,e,r){r=_(r)&&r;var n=l(t,h);if(t=Math.round(t-n),r)try{var a=Math.round(t/h)+g,i=m.getComponentMethod("calendars","getCal")(r),o=i.fromJD(a);return e%12?i.add(o,e,"m"):i.add(o,e/12,"y"),(o.toJD()-g)*h+n}catch(e){s.error("invalid ms "+t+" in calendar "+r)}var c=new Date(t+L);return c.setUTCMonth(c.getUTCMonth()+e)+n-L},r.findExactDates=function(t,e){for(var r,n,a=0,i=0,s=0,l=0,c=_(e)&&m.getComponentMethod("calendars","getCal")(e),u=0;u<t.length;u++)if(n=t[u],o(n)){if(!(n%h))if(c)try{1===(r=c.fromJD(n/h+g)).day()?1===r.month()?a++:i++:s++}catch(t){}else 1===(r=new Date(n)).getUTCDate()?0===r.getUTCMonth()?a++:i++:s++}else l++;s+=i+=a;var f=t.length-l;return{exactYears:a/f,exactMonths:i/f,exactDays:s/f}}},{"../constants/numerical":704,"../registry":859,"./loggers":732,"./mod":735,d3:164,"fast-isnumeric":236}],717:[function(t,e,r){"use strict";var n=t("d3"),a=t("./loggers");function i(t){var e=t&&t.parentNode;e&&e.removeChild(t)}function o(t,e,r){var n="plotly.js-style-"+t,i=document.getElementById(n);i||((i=document.createElement("style")).setAttribute("id",n),i.appendChild(document.createTextNode("")),document.head.appendChild(i));var o=i.sheet;o.insertRule?o.insertRule(e+"{"+r+"}",0):o.addRule?o.addRule(e,r,0):a.warn("addStyleRule failed")}e.exports={getGraphDiv:function(t){var e;if("string"==typeof t){if(null===(e=document.getElementById(t)))throw new Error("No DOM element with id '"+t+"' exists on the page.");return e}if(null==t)throw new Error("DOM element provided is null or undefined");return t},isPlotDiv:function(t){var e=n.select(t);return e.node()instanceof HTMLElement&&e.size()&&e.classed("js-plotly-plot")},removeElement:i,addStyleRule:function(t,e){o("global",t,e)},addRelatedStyleRule:o,deleteRelatedStyleRule:function(t){var e="plotly.js-style-"+t,r=document.getElementById(e);r&&i(r)}}},{"./loggers":732,d3:164}],718:[function(t,e,r){"use strict";var n=t("events").EventEmitter,a={init:function(t){if(t._ev instanceof n)return t;var e=new n,r=new n;return t._ev=e,t._internalEv=r,t.on=e.on.bind(e),t.once=e.once.bind(e),t.removeListener=e.removeListener.bind(e),t.removeAllListeners=e.removeAllListeners.bind(e),t._internalOn=r.on.bind(r),t._internalOnce=r.once.bind(r),t._removeInternalListener=r.removeListener.bind(r),t._removeAllInternalListeners=r.removeAllListeners.bind(r),t.emit=function(n,a){"undefined"!=typeof jQuery&&jQuery(t).trigger(n,a),e.emit(n,a),r.emit(n,a)},t},triggerHandler:function(t,e,r){var n,a;"undefined"!=typeof jQuery&&(n=jQuery(t).triggerHandler(e,r));var i=t._ev;if(!i)return n;var o,s=i._events[e];if(!s)return n;function l(t){return t.listener?(i.removeListener(e,t.listener),t.fired?void 0:(t.fired=!0,t.listener.apply(i,[r]))):t.apply(i,[r])}for(s=Array.isArray(s)?s:[s],o=0;o<s.length-1;o++)l(s[o]);return a=l(s[o]),void 0!==n?n:a},purge:function(t){return delete t._ev,delete t.on,delete t.once,delete t.removeListener,delete t.removeAllListeners,delete t.emit,delete t._ev,delete t._internalEv,delete t._internalOn,delete t._internalOnce,delete t._removeInternalListener,delete t._removeAllInternalListeners,t}};e.exports=a},{events:107}],719:[function(t,e,r){"use strict";var n=t("./is_plain_object.js"),a=Array.isArray;function i(t,e,r,o){var s,l,c,u,h,f,p=t[0],d=t.length;if(2===d&&a(p)&&a(t[1])&&0===p.length){if(function(t,e){var r,n;for(r=0;r<t.length;r++){if(null!==(n=t[r])&&"object"==typeof n)return!1;void 0!==n&&(e[r]=n)}return!0}(t[1],p))return p;p.splice(0,p.length)}for(var g=1;g<d;g++)for(l in s=t[g])c=p[l],u=s[l],o&&a(u)?p[l]=u:e&&u&&(n(u)||(h=a(u)))?(h?(h=!1,f=c&&a(c)?c:[]):f=c&&n(c)?c:{},p[l]=i([f,u],e,r,o)):("undefined"!=typeof u||r)&&(p[l]=u);return p}r.extendFlat=function(){return i(arguments,!1,!1,!1)},r.extendDeep=function(){return i(arguments,!0,!1,!1)},r.extendDeepAll=function(){return i(arguments,!0,!0,!1)},r.extendDeepNoArrays=function(){return i(arguments,!0,!1,!0)}},{"./is_plain_object.js":729}],720:[function(t,e,r){"use strict";e.exports=function(t){for(var e={},r=[],n=0,a=0;a<t.length;a++){var i=t[a];1!==e[i]&&(e[i]=1,r[n++]=i)}return r}},{}],721:[function(t,e,r){"use strict";function n(t){return!0===t.visible}function a(t){var e=t[0].trace;return!0===e.visible&&0!==e._length}e.exports=function(t){for(var e,r=(e=t,Array.isArray(e)&&Array.isArray(e[0])&&e[0][0]&&e[0][0].trace?a:n),i=[],o=0;o<t.length;o++){var s=t[o];r(s)&&i.push(s)}return i}},{}],722:[function(t,e,r){"use strict";var n=t("d3"),a=t("country-regex"),i=t("@turf/area"),o=t("@turf/centroid"),s=t("@turf/bbox"),l=t("./identity"),c=t("./loggers"),u=t("./is_plain_object"),h=t("./nested_property"),f=t("./polygon"),p=Object.keys(a),d={"ISO-3":l,"USA-states":l,"country names":function(t){for(var e=0;e<p.length;e++){var r=p[e];if(new RegExp(a[r]).test(t.trim().toLowerCase()))return r}return c.log("Unrecognized country name: "+t+"."),!1}};function g(t){var e=t.geojson,r=window.PlotlyGeoAssets||{},n="string"==typeof e?r[e]:e;return u(n)?n:(c.error("Oops ... something went wrong when fetching "+e),!1)}e.exports={locationToFeature:function(t,e,r){if(!e||"string"!=typeof e)return!1;var n,a,i,o=d[t](e);if(o){if("USA-states"===t)for(n=[],i=0;i<r.length;i++)(a=r[i]).properties&&a.properties.gu&&"USA"===a.properties.gu&&n.push(a);else n=r;for(i=0;i<n.length;i++)if((a=n[i]).id===o)return a;c.log(["Location with id",o,"does not have a matching topojson feature at this resolution."].join(" "))}return!1},feature2polygons:function(t){var e,r,n,a,i=t.geometry,o=i.coordinates,s=t.id,l=[];function c(t){for(var e=0;e<t.length-1;e++)if(t[e][0]>0&&t[e+1][0]<0)return e;return null}switch(e="RUS"===s||"FJI"===s?function(t){var e;if(null===c(t))e=t;else for(e=new Array(t.length),a=0;a<t.length;a++)e[a]=[t[a][0]<0?t[a][0]+360:t[a][0],t[a][1]];l.push(f.tester(e))}:"ATA"===s?function(t){var e=c(t);if(null===e)return l.push(f.tester(t));var r=new Array(t.length+1),n=0;for(a=0;a<t.length;a++)a>e?r[n++]=[t[a][0]+360,t[a][1]]:a===e?(r[n++]=t[a],r[n++]=[t[a][0],-90]):r[n++]=t[a];var i=f.tester(r);i.pts.pop(),l.push(i)}:function(t){l.push(f.tester(t))},i.type){case"MultiPolygon":for(r=0;r<o.length;r++)for(n=0;n<o[r].length;n++)e(o[r][n]);break;case"Polygon":for(r=0;r<o.length;r++)e(o[r])}return l},getTraceGeojson:g,extractTraceFeature:function(t){var e=t[0].trace,r=g(e);if(!r)return!1;var n,a={},s=[];for(n=0;n<e._length;n++){var l=t[n];(l.loc||0===l.loc)&&(a[l.loc]=l)}function u(t){var r=h(t,e.featureidkey||"id").get(),n=a[r];if(n){var l=t.geometry;if("Polygon"===l.type||"MultiPolygon"===l.type){var u={type:"Feature",id:r,geometry:l,properties:{}};u.properties.ct=function(t){var e,r=t.geometry;if("MultiPolygon"===r.type)for(var n=r.coordinates,a=0,s=0;s<n.length;s++){var l={type:"Polygon",coordinates:n[s]},c=i.default(l);c>a&&(a=c,e=l)}else e=r;return o.default(e).geometry.coordinates}(u),n.fIn=t,n.fOut=u,s.push(u)}else c.log(["Location",n.loc,"does not have a valid GeoJSON geometry.","Traces with locationmode *geojson-id* only support","*Polygon* and *MultiPolygon* geometries."].join(" "))}delete a[r]}switch(r.type){case"FeatureCollection":var f=r.features;for(n=0;n<f.length;n++)u(f[n]);break;case"Feature":u(r);break;default:return c.warn(["Invalid GeoJSON type",(r.type||"none")+".","Traces with locationmode *geojson-id* only support","*FeatureCollection* and *Feature* types."].join(" ")),!1}for(var p in a)c.log(["Location *"+p+"*","does not have a matching feature with id-key","*"+e.featureidkey+"*."].join(" "));return s},fetchTraceGeoData:function(t){var e=window.PlotlyGeoAssets||{},r=[];function a(t){return new Promise((function(r,a){n.json(t,(function(n,i){if(n){delete e[t];var o=404===n.status?'GeoJSON at URL "'+t+'" does not exist.':"Unexpected error while fetching from "+t;return a(new Error(o))}return e[t]=i,r(i)}))}))}function i(t){return new Promise((function(r,n){var a=0,i=setInterval((function(){return e[t]&&"pending"!==e[t]?(clearInterval(i),r(e[t])):a>100?(clearInterval(i),n("Unexpected error while fetching from "+t)):void a++}),50)}))}for(var o=0;o<t.length;o++){var s=t[o][0].trace.geojson;"string"==typeof s&&(e[s]?"pending"===e[s]&&r.push(i(s)):(e[s]="pending",r.push(a(s))))}return r},computeBbox:function(t){return s.default(t)}}},{"./identity":727,"./is_plain_object":729,"./loggers":732,"./nested_property":736,"./polygon":740,"@turf/area":57,"@turf/bbox":58,"@turf/centroid":59,"country-regex":136,d3:164}],723:[function(t,e,r){"use strict";var n=t("../constants/numerical").BADNUM;r.calcTraceToLineCoords=function(t){for(var e=t[0].trace.connectgaps,r=[],a=[],i=0;i<t.length;i++){var o=t[i].lonlat;o[0]!==n?a.push(o):!e&&a.length>0&&(r.push(a),a=[])}return a.length>0&&r.push(a),r},r.makeLine=function(t){return 1===t.length?{type:"LineString",coordinates:t[0]}:{type:"MultiLineString",coordinates:t}},r.makePolygon=function(t){if(1===t.length)return{type:"Polygon",coordinates:t};for(var e=new Array(t.length),r=0;r<t.length;r++)e[r]=[t[r]];return{type:"MultiPolygon",coordinates:e}},r.makeBlank=function(){return{type:"Point",coordinates:[]}}},{"../constants/numerical":704}],724:[function(t,e,r){"use strict";var n,a,i,o=t("./mod").mod;function s(t,e,r,n,a,i,o,s){var l=r-t,c=a-t,u=o-a,h=n-e,f=i-e,p=s-i,d=l*p-u*h;if(0===d)return null;var g=(c*p-u*f)/d,m=(c*h-l*f)/d;return m<0||m>1||g<0||g>1?null:{x:t+l*g,y:e+h*g}}function l(t,e,r,n,a){var i=n*t+a*e;if(i<0)return n*n+a*a;if(i>r){var o=n-t,s=a-e;return o*o+s*s}var l=n*e-a*t;return l*l/r}r.segmentsIntersect=s,r.segmentDistance=function(t,e,r,n,a,i,o,c){if(s(t,e,r,n,a,i,o,c))return 0;var u=r-t,h=n-e,f=o-a,p=c-i,d=u*u+h*h,g=f*f+p*p,m=Math.min(l(u,h,d,a-t,i-e),l(u,h,d,o-t,c-e),l(f,p,g,t-a,e-i),l(f,p,g,r-a,n-i));return Math.sqrt(m)},r.getTextLocation=function(t,e,r,s){if(t===a&&s===i||(n={},a=t,i=s),n[r])return n[r];var l=t.getPointAtLength(o(r-s/2,e)),c=t.getPointAtLength(o(r+s/2,e)),u=Math.atan((c.y-l.y)/(c.x-l.x)),h=t.getPointAtLength(o(r,e)),f={x:(4*h.x+l.x+c.x)/6,y:(4*h.y+l.y+c.y)/6,theta:u};return n[r]=f,f},r.clearLocationCache=function(){a=null},r.getVisibleSegment=function(t,e,r){var n,a,i=e.left,o=e.right,s=e.top,l=e.bottom,c=0,u=t.getTotalLength(),h=u;function f(e){var r=t.getPointAtLength(e);0===e?n=r:e===u&&(a=r);var c=r.x<i?i-r.x:r.x>o?r.x-o:0,h=r.y<s?s-r.y:r.y>l?r.y-l:0;return Math.sqrt(c*c+h*h)}for(var p=f(c);p;){if((c+=p+r)>h)return;p=f(c)}for(p=f(h);p;){if(c>(h-=p+r))return;p=f(h)}return{min:c,max:h,len:h-c,total:u,isClosed:0===c&&h===u&&Math.abs(n.x-a.x)<.1&&Math.abs(n.y-a.y)<.1}},r.findPointOnPath=function(t,e,r,n){for(var a,i,o,s=(n=n||{}).pathLength||t.getTotalLength(),l=n.tolerance||.001,c=n.iterationLimit||30,u=t.getPointAtLength(0)[r]>t.getPointAtLength(s)[r]?-1:1,h=0,f=0,p=s;h<c;){if(a=(f+p)/2,o=(i=t.getPointAtLength(a))[r]-e,Math.abs(o)<l)return i;u*o>0?p=a:f=a,h++}return i}},{"./mod":735}],725:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("tinycolor2"),i=t("color-normalize"),o=t("../components/colorscale"),s=t("../components/color/attributes").defaultLine,l=t("./array").isArrayOrTypedArray,c=i(s);function u(t,e){var r=t;return r[3]*=e,r}function h(t){if(n(t))return c;var e=i(t);return e.length?e:c}function f(t){return n(t)?t:1}e.exports={formatColor:function(t,e,r){var n,a,s,p,d,g=t.color,m=l(g),v=l(e),y=o.extractOpts(t),x=[];if(n=void 0!==y.colorscale?o.makeColorScaleFuncFromTrace(t):h,a=m?function(t,e){return void 0===t[e]?c:i(n(t[e]))}:h,s=v?function(t,e){return void 0===t[e]?1:f(t[e])}:f,m||v)for(var b=0;b<r;b++)p=a(g,b),d=s(e,b),x[b]=u(p,d);else x=u(i(g),e);return x},parseColorScale:function(t,e){void 0===e&&(e=1);var r=o.extractOpts(t);return(r.reversescale?o.flipScale(r.colorscale):r.colorscale).map((function(t){var r=t[0],n=a(t[1]).toRgb();return{index:r,rgb:[n.r,n.g,n.b,e]}}))}}},{"../components/color/attributes":594,"../components/colorscale":607,"./array":711,"color-normalize":122,"fast-isnumeric":236,tinycolor2:528}],726:[function(t,e,r){"use strict";var n=t("./identity");function a(t){return[t]}e.exports={keyFun:function(t){return t.key},repeat:a,descend:n,wrap:a,unwrap:function(t){return t[0]}}},{"./identity":727}],727:[function(t,e,r){"use strict";e.exports=function(t){return t}},{}],728:[function(t,e,r){"use strict";var n=t("d3"),a=t("fast-isnumeric"),i=t("../constants/numerical"),o=i.FP_SAFE,s=i.BADNUM,l=e.exports={};l.nestedProperty=t("./nested_property"),l.keyedContainer=t("./keyed_container"),l.relativeAttr=t("./relative_attr"),l.isPlainObject=t("./is_plain_object"),l.toLogRange=t("./to_log_range"),l.relinkPrivateKeys=t("./relink_private");var c=t("./array");l.isTypedArray=c.isTypedArray,l.isArrayOrTypedArray=c.isArrayOrTypedArray,l.isArray1D=c.isArray1D,l.ensureArray=c.ensureArray,l.concat=c.concat,l.maxRowLength=c.maxRowLength,l.minRowLength=c.minRowLength;var u=t("./mod");l.mod=u.mod,l.modHalf=u.modHalf;var h=t("./coerce");l.valObjectMeta=h.valObjectMeta,l.coerce=h.coerce,l.coerce2=h.coerce2,l.coerceFont=h.coerceFont,l.coerceHoverinfo=h.coerceHoverinfo,l.coerceSelectionMarkerOpacity=h.coerceSelectionMarkerOpacity,l.validate=h.validate;var f=t("./dates");l.dateTime2ms=f.dateTime2ms,l.isDateTime=f.isDateTime,l.ms2DateTime=f.ms2DateTime,l.ms2DateTimeLocal=f.ms2DateTimeLocal,l.cleanDate=f.cleanDate,l.isJSDate=f.isJSDate,l.formatDate=f.formatDate,l.incrementMonth=f.incrementMonth,l.dateTick0=f.dateTick0,l.dfltRange=f.dfltRange,l.findExactDates=f.findExactDates,l.MIN_MS=f.MIN_MS,l.MAX_MS=f.MAX_MS;var p=t("./search");l.findBin=p.findBin,l.sorterAsc=p.sorterAsc,l.sorterDes=p.sorterDes,l.distinctVals=p.distinctVals,l.roundUp=p.roundUp,l.sort=p.sort,l.findIndexOfMin=p.findIndexOfMin;var d=t("./stats");l.aggNums=d.aggNums,l.len=d.len,l.mean=d.mean,l.median=d.median,l.midRange=d.midRange,l.variance=d.variance,l.stdev=d.stdev,l.interp=d.interp;var g=t("./matrix");l.init2dArray=g.init2dArray,l.transposeRagged=g.transposeRagged,l.dot=g.dot,l.translationMatrix=g.translationMatrix,l.rotationMatrix=g.rotationMatrix,l.rotationXYMatrix=g.rotationXYMatrix,l.apply2DTransform=g.apply2DTransform,l.apply2DTransform2=g.apply2DTransform2;var m=t("./angles");l.deg2rad=m.deg2rad,l.rad2deg=m.rad2deg,l.angleDelta=m.angleDelta,l.angleDist=m.angleDist,l.isFullCircle=m.isFullCircle,l.isAngleInsideSector=m.isAngleInsideSector,l.isPtInsideSector=m.isPtInsideSector,l.pathArc=m.pathArc,l.pathSector=m.pathSector,l.pathAnnulus=m.pathAnnulus;var v=t("./anchor_utils");l.isLeftAnchor=v.isLeftAnchor,l.isCenterAnchor=v.isCenterAnchor,l.isRightAnchor=v.isRightAnchor,l.isTopAnchor=v.isTopAnchor,l.isMiddleAnchor=v.isMiddleAnchor,l.isBottomAnchor=v.isBottomAnchor;var y=t("./geometry2d");l.segmentsIntersect=y.segmentsIntersect,l.segmentDistance=y.segmentDistance,l.getTextLocation=y.getTextLocation,l.clearLocationCache=y.clearLocationCache,l.getVisibleSegment=y.getVisibleSegment,l.findPointOnPath=y.findPointOnPath;var x=t("./extend");l.extendFlat=x.extendFlat,l.extendDeep=x.extendDeep,l.extendDeepAll=x.extendDeepAll,l.extendDeepNoArrays=x.extendDeepNoArrays;var b=t("./loggers");l.log=b.log,l.warn=b.warn,l.error=b.error;var _=t("./regex");l.counterRegex=_.counter;var w=t("./throttle");l.throttle=w.throttle,l.throttleDone=w.done,l.clearThrottle=w.clear;var T=t("./dom");function k(t){var e={};for(var r in t)for(var n=t[r],a=0;a<n.length;a++)e[n[a]]=+r;return e}l.getGraphDiv=T.getGraphDiv,l.isPlotDiv=T.isPlotDiv,l.removeElement=T.removeElement,l.addStyleRule=T.addStyleRule,l.addRelatedStyleRule=T.addRelatedStyleRule,l.deleteRelatedStyleRule=T.deleteRelatedStyleRule,l.clearResponsive=t("./clear_responsive"),l.makeTraceGroups=t("./make_trace_groups"),l._=t("./localize"),l.notifier=t("./notifier"),l.filterUnique=t("./filter_unique"),l.filterVisible=t("./filter_visible"),l.pushUnique=t("./push_unique"),l.cleanNumber=t("./clean_number"),l.ensureNumber=function(t){return a(t)?(t=Number(t))<-o||t>o?s:a(t)?Number(t):s:s},l.isIndex=function(t,e){return!(void 0!==e&&t>=e)&&(a(t)&&t>=0&&t%1==0)},l.noop=t("./noop"),l.identity=t("./identity"),l.repeat=function(t,e){for(var r=new Array(e),n=0;n<e;n++)r[n]=t;return r},l.swapAttrs=function(t,e,r,n){r||(r="x"),n||(n="y");for(var a=0;a<e.length;a++){var i=e[a],o=l.nestedProperty(t,i.replace("?",r)),s=l.nestedProperty(t,i.replace("?",n)),c=o.get();o.set(s.get()),s.set(c)}},l.raiseToTop=function(t){t.parentNode.appendChild(t)},l.cancelTransition=function(t){return t.transition().duration(0)},l.constrain=function(t,e,r){return e>r?Math.max(r,Math.min(e,t)):Math.max(e,Math.min(r,t))},l.bBoxIntersect=function(t,e,r){return r=r||0,t.left<=e.right+r&&e.left<=t.right+r&&t.top<=e.bottom+r&&e.top<=t.bottom+r},l.simpleMap=function(t,e,r,n,a){for(var i=t.length,o=new Array(i),s=0;s<i;s++)o[s]=e(t[s],r,n,a);return o},l.randstr=function t(e,r,n,a){if(n||(n=16),void 0===r&&(r=24),r<=0)return"0";var i,o,s=Math.log(Math.pow(2,r))/Math.log(n),c="";for(i=2;s===1/0;i*=2)s=Math.log(Math.pow(2,r/i))/Math.log(n)*i;var u=s-Math.floor(s);for(i=0;i<Math.floor(s);i++)c=Math.floor(Math.random()*n).toString(n)+c;u&&(o=Math.pow(n,u),c=Math.floor(Math.random()*o).toString(n)+c);var h=parseInt(c,n);return e&&e[c]||h!==1/0&&h>=Math.pow(2,r)?a>10?(l.warn("randstr failed uniqueness"),c):t(e,r,n,(a||0)+1):c},l.OptionControl=function(t,e){t||(t={}),e||(e="opt");var r={optionList:[],_newoption:function(n){n[e]=t,r[n.name]=n,r.optionList.push(n)}};return r["_"+e]=t,r},l.smooth=function(t,e){if((e=Math.round(e)||0)<2)return t;var r,n,a,i,o=t.length,s=2*o,l=2*e-1,c=new Array(l),u=new Array(o);for(r=0;r<l;r++)c[r]=(1-Math.cos(Math.PI*(r+1)/e))/(2*e);for(r=0;r<o;r++){for(i=0,n=0;n<l;n++)(a=r+n+1-e)<-o?a-=s*Math.round(a/s):a>=s&&(a-=s*Math.floor(a/s)),a<0?a=-1-a:a>=o&&(a=s-1-a),i+=t[a]*c[n];u[r]=i}return u},l.syncOrAsync=function(t,e,r){var n;function a(){return l.syncOrAsync(t,e,r)}for(;t.length;)if((n=(0,t.splice(0,1)[0])(e))&&n.then)return n.then(a).then(void 0,l.promiseError);return r&&r(e)},l.stripTrailingSlash=function(t){return"/"===t.substr(-1)?t.substr(0,t.length-1):t},l.noneOrAll=function(t,e,r){if(t){var n,a=!1,i=!0;for(n=0;n<r.length;n++)null!=t[r[n]]?a=!0:i=!1;if(a&&!i)for(n=0;n<r.length;n++)t[r[n]]=e[r[n]]}},l.mergeArray=function(t,e,r,n){var a="function"==typeof n;if(l.isArrayOrTypedArray(t))for(var i=Math.min(t.length,e.length),o=0;o<i;o++){var s=t[o];e[o][r]=a?n(s):s}},l.mergeArrayCastPositive=function(t,e,r){return l.mergeArray(t,e,r,(function(t){var e=+t;return isFinite(e)&&e>0?e:0}))},l.fillArray=function(t,e,r,n){if(n=n||l.identity,l.isArrayOrTypedArray(t))for(var a=0;a<e.length;a++)e[a][r]=n(t[a])},l.castOption=function(t,e,r,n){n=n||l.identity;var a=l.nestedProperty(t,r).get();return l.isArrayOrTypedArray(a)?Array.isArray(e)&&l.isArrayOrTypedArray(a[e[0]])?n(a[e[0]][e[1]]):n(a[e]):a},l.extractOption=function(t,e,r,n){if(r in t)return t[r];var a=l.nestedProperty(e,n).get();return Array.isArray(a)?void 0:a},l.tagSelected=function(t,e,r){var n,a,i=e.selectedpoints,o=e._indexToPoints;o&&(n=k(o));for(var s=0;s<i.length;s++){var c=i[s];if(l.isIndex(c)||l.isArrayOrTypedArray(c)&&l.isIndex(c[0])&&l.isIndex(c[1])){var u=n?n[c]:c,h=r?r[u]:u;void 0!==(a=h)&&a<t.length&&(t[h].selected=1)}}},l.selIndices2selPoints=function(t){var e=t.selectedpoints,r=t._indexToPoints;if(r){for(var n=k(r),a=[],i=0;i<e.length;i++){var o=e[i];if(l.isIndex(o)){var s=n[o];l.isIndex(s)&&a.push(s)}}return a}return e},l.getTargetArray=function(t,e){var r=e.target;if("string"==typeof r&&r){var n=l.nestedProperty(t,r).get();return!!Array.isArray(n)&&n}return!!Array.isArray(r)&&r},l.minExtend=function(t,e){var r={};"object"!=typeof e&&(e={});var n,a,i,o=Object.keys(t);for(n=0;n<o.length;n++)i=t[a=o[n]],"_"!==a.charAt(0)&&"function"!=typeof i&&("module"===a?r[a]=i:Array.isArray(i)?r[a]="colorscale"===a?i.slice():i.slice(0,3):l.isTypedArray(i)?r[a]=i.subarray(0,3):r[a]=i&&"object"==typeof i?l.minExtend(t[a],e[a]):i);for(o=Object.keys(e),n=0;n<o.length;n++)"object"==typeof(i=e[a=o[n]])&&a in r&&"object"==typeof r[a]||(r[a]=i);return r},l.titleCase=function(t){return t.charAt(0).toUpperCase()+t.substr(1)},l.containsAny=function(t,e){for(var r=0;r<e.length;r++)if(-1!==t.indexOf(e[r]))return!0;return!1},l.isIE=function(){return"undefined"!=typeof window.navigator.msSaveBlob};var A=/MSIE [1-9]\./;l.isIE9orBelow=function(){return l.isIE()&&A.test(window.navigator.userAgent)};var M=/Version\/[\d\.]+.*Safari/;l.isSafari=function(){return M.test(window.navigator.userAgent)},l.isD3Selection=function(t){return t&&"function"==typeof t.classed},l.ensureSingle=function(t,e,r,n){var a=t.select(e+(r?"."+r:""));if(a.size())return a;var i=t.append(e);return r&&i.classed(r,!0),n&&i.call(n),i},l.ensureSingleById=function(t,e,r,n){var a=t.select(e+"#"+r);if(a.size())return a;var i=t.append(e).attr("id",r);return n&&i.call(n),i},l.objectFromPath=function(t,e){for(var r,n=t.split("."),a=r={},i=0;i<n.length;i++){var o=n[i],s=null,l=n[i].match(/(.*)\[([0-9]+)\]/);l?(o=l[1],s=l[2],r=r[o]=[],i===n.length-1?r[s]=e:r[s]={},r=r[s]):(i===n.length-1?r[o]=e:r[o]={},r=r[o])}return a};var S=/^([^\[\.]+)\.(.+)?/,E=/^([^\.]+)\[([0-9]+)\](\.)?(.+)?/;l.expandObjectPaths=function(t){var e,r,n,a,i,o,s;if("object"==typeof t&&!Array.isArray(t))for(r in t)t.hasOwnProperty(r)&&((e=r.match(S))?(a=t[r],n=e[1],delete t[r],t[n]=l.extendDeepNoArrays(t[n]||{},l.objectFromPath(r,l.expandObjectPaths(a))[n])):(e=r.match(E))?(a=t[r],n=e[1],i=parseInt(e[2]),delete t[r],t[n]=t[n]||[],"."===e[3]?(s=e[4],o=t[n][i]=t[n][i]||{},l.extendDeepNoArrays(o,l.objectFromPath(s,l.expandObjectPaths(a)))):t[n][i]=l.expandObjectPaths(a)):t[r]=l.expandObjectPaths(t[r]));return t},l.numSeparate=function(t,e,r){if(r||(r=!1),"string"!=typeof e||0===e.length)throw new Error("Separator string required for formatting!");"number"==typeof t&&(t=String(t));var n=/(\d+)(\d{3})/,a=e.charAt(0),i=e.charAt(1),o=t.split("."),s=o[0],l=o.length>1?a+o[1]:"";if(i&&(o.length>1||s.length>4||r))for(;n.test(s);)s=s.replace(n,"$1"+i+"$2");return s+l},l.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var C=/^\w*$/;l.templateString=function(t,e){var r={};return t.replace(l.TEMPLATE_STRING_REGEX,(function(t,n){var a;return C.test(n)?a=e[n]:(r[n]=r[n]||l.nestedProperty(e,n).get,a=r[n]()),l.isValidTextValue(a)?a:""}))};var L={max:10,count:0,name:"hovertemplate"};l.hovertemplateString=function(){return z.apply(L,arguments)};var P={max:10,count:0,name:"texttemplate"};l.texttemplateString=function(){return z.apply(P,arguments)};var I=/^[:|\|]/;function z(t,e,r){var a=this,i=arguments;e||(e={});var o={};return t.replace(l.TEMPLATE_STRING_REGEX,(function(t,s,c){var u,h,f,p;for(f=3;f<i.length;f++)if(u=i[f]){if(u.hasOwnProperty(s)){h=u[s];break}if(C.test(s)||(h=o[s]||l.nestedProperty(u,s).get())&&(o[s]=h),void 0!==h)break}if(void 0===h&&a)return a.count<a.max&&(l.warn("Variable '"+s+"' in "+a.name+" could not be found!"),h=t),a.count===a.max&&l.warn("Too many "+a.name+" warnings - additional warnings will be suppressed"),a.count++,t;if(c){if(":"===c[0]&&(h=(p=r?r.numberFormat:n.format)(c.replace(I,""))(h)),"|"===c[0]){p=r?r.timeFormat.utc:n.time.format.utc;var d=l.dateTime2ms(h);h=l.formatDate(d,c.replace(I,""),!1,p)}}else e.hasOwnProperty(s+"Label")&&(h=e[s+"Label"]);return h}))}l.subplotSort=function(t,e){for(var r=Math.min(t.length,e.length)+1,n=0,a=0,i=0;i<r;i++){var o=t.charCodeAt(i)||0,s=e.charCodeAt(i)||0,l=o>=48&&o<=57,c=s>=48&&s<=57;if(l&&(n=10*n+o-48),c&&(a=10*a+s-48),!l||!c){if(n!==a)return n-a;if(o!==s)return o-s}}return a-n};var O=2e9;l.seedPseudoRandom=function(){O=2e9},l.pseudoRandom=function(){var t=O;return O=(69069*O+1)%4294967296,Math.abs(O-t)<429496729?l.pseudoRandom():O/4294967296},l.fillText=function(t,e,r){var n=Array.isArray(r)?function(t){r.push(t)}:function(t){r.text=t},a=l.extractOption(t,e,"htx","hovertext");if(l.isValidTextValue(a))return n(a);var i=l.extractOption(t,e,"tx","text");return l.isValidTextValue(i)?n(i):void 0},l.isValidTextValue=function(t){return t||0===t},l.formatPercent=function(t,e){e=e||0;for(var r=(Math.round(100*t*Math.pow(10,e))*Math.pow(.1,e)).toFixed(e)+"%",n=0;n<e;n++)-1!==r.indexOf(".")&&(r=(r=r.replace("0%","%")).replace(".%","%"));return r},l.isHidden=function(t){var e=window.getComputedStyle(t).display;return!e||"none"===e},l.getTextTransform=function(t){var e=t.noCenter,r=t.textX,n=t.textY,a=t.targetX,i=t.targetY,o=t.anchorX||0,s=t.anchorY||0,l=t.rotate,c=t.scale;return c?c>1&&(c=1):c=0,"translate("+(a-c*(r+o))+","+(i-c*(n+s))+")"+(c<1?"scale("+c+")":"")+(l?"rotate("+l+(e?"":" "+r+" "+n)+")":"")},l.ensureUniformFontSize=function(t,e){var r=l.extendFlat({},e);return r.size=Math.max(e.size,t._fullLayout.uniformtext.minsize||0),r}},{"../constants/numerical":704,"./anchor_utils":709,"./angles":710,"./array":711,"./clean_number":712,"./clear_responsive":714,"./coerce":715,"./dates":716,"./dom":717,"./extend":719,"./filter_unique":720,"./filter_visible":721,"./geometry2d":724,"./identity":727,"./is_plain_object":729,"./keyed_container":730,"./localize":731,"./loggers":732,"./make_trace_groups":733,"./matrix":734,"./mod":735,"./nested_property":736,"./noop":737,"./notifier":738,"./push_unique":742,"./regex":744,"./relative_attr":745,"./relink_private":746,"./search":747,"./stats":750,"./throttle":753,"./to_log_range":754,d3:164,"fast-isnumeric":236}],729:[function(t,e,r){"use strict";e.exports=function(t){return window&&window.process&&window.process.versions?"[object Object]"===Object.prototype.toString.call(t):"[object Object]"===Object.prototype.toString.call(t)&&Object.getPrototypeOf(t)===Object.prototype}},{}],730:[function(t,e,r){"use strict";var n=t("./nested_property"),a=/^\w*$/;e.exports=function(t,e,r,i){var o,s,l;r=r||"name",i=i||"value";var c={};e&&e.length?(l=n(t,e),s=l.get()):s=t,e=e||"";var u={};if(s)for(o=0;o<s.length;o++)u[s[o][r]]=o;var h=a.test(i),f={set:function(t,e){var a=null===e?4:0;if(!s){if(!l||4===a)return;s=[],l.set(s)}var o=u[t];if(void 0===o){if(4===a)return;a|=3,o=s.length,u[t]=o}else e!==(h?s[o][i]:n(s[o],i).get())&&(a|=2);var p=s[o]=s[o]||{};return p[r]=t,h?p[i]=e:n(p,i).set(e),null!==e&&(a&=-5),c[o]=c[o]|a,f},get:function(t){if(s){var e=u[t];return void 0===e?void 0:h?s[e][i]:n(s[e],i).get()}},rename:function(t,e){var n=u[t];return void 0===n||(c[n]=1|c[n],u[e]=n,delete u[t],s[n][r]=e),f},remove:function(t){var e=u[t];if(void 0===e)return f;var a=s[e];if(Object.keys(a).length>2)return c[e]=2|c[e],f.set(t,null);if(h){for(o=e;o<s.length;o++)c[o]=3|c[o];for(o=e;o<s.length;o++)u[s[o][r]]--;s.splice(e,1),delete u[t]}else n(a,i).set(null),c[e]=6|c[e];return f},constructUpdate:function(){for(var t,a,o={},l=Object.keys(c),u=0;u<l.length;u++)a=l[u],t=e+"["+a+"]",s[a]?(1&c[a]&&(o[t+"."+r]=s[a][r]),2&c[a]&&(o[t+"."+i]=h?4&c[a]?null:s[a][i]:4&c[a]?null:n(s[a],i).get())):o[t]=null;return o}};return f}},{"./nested_property":736}],731:[function(t,e,r){"use strict";var n=t("../registry");e.exports=function(t,e){for(var r=t._context.locale,a=0;a<2;a++){for(var i=t._context.locales,o=0;o<2;o++){var s=(i[r]||{}).dictionary;if(s){var l=s[e];if(l)return l}i=n.localeRegistry}var c=r.split("-")[0];if(c===r)break;r=c}return e}},{"../registry":859}],732:[function(t,e,r){"use strict";var n=t("../plot_api/plot_config").dfltConfig,a=t("./notifier"),i=e.exports={};function o(t,e){if(t&&t.apply)try{return void t.apply(console,e)}catch(t){}for(var r=0;r<e.length;r++)try{t(e[r])}catch(t){console.log(e[r])}}i.log=function(){var t;if(n.logging>1){var e=["LOG:"];for(t=0;t<arguments.length;t++)e.push(arguments[t]);o(console.trace||console.log,e)}if(n.notifyOnLogging>1){var r=[];for(t=0;t<arguments.length;t++)r.push(arguments[t]);a(r.join("<br>"),"long")}},i.warn=function(){var t;if(n.logging>0){var e=["WARN:"];for(t=0;t<arguments.length;t++)e.push(arguments[t]);o(console.trace||console.log,e)}if(n.notifyOnLogging>0){var r=[];for(t=0;t<arguments.length;t++)r.push(arguments[t]);a(r.join("<br>"),"stick")}},i.error=function(){var t;if(n.logging>0){var e=["ERROR:"];for(t=0;t<arguments.length;t++)e.push(arguments[t]);o(console.error,e)}if(n.notifyOnLogging>0){var r=[];for(t=0;t<arguments.length;t++)r.push(arguments[t]);a(r.join("<br>"),"stick")}}},{"../plot_api/plot_config":764,"./notifier":738}],733:[function(t,e,r){"use strict";var n=t("d3");e.exports=function(t,e,r){var a=t.selectAll("g."+r.replace(/\s/g,".")).data(e,(function(t){return t[0].trace.uid}));a.exit().remove(),a.enter().append("g").attr("class",r),a.order();var i=t.classed("rangeplot")?"nodeRangePlot3":"node3";return a.each((function(t){t[0][i]=n.select(this)})),a}},{d3:164}],734:[function(t,e,r){"use strict";r.init2dArray=function(t,e){for(var r=new Array(t),n=0;n<t;n++)r[n]=new Array(e);return r},r.transposeRagged=function(t){var e,r,n=0,a=t.length;for(e=0;e<a;e++)n=Math.max(n,t[e].length);var i=new Array(n);for(e=0;e<n;e++)for(i[e]=new Array(a),r=0;r<a;r++)i[e][r]=t[r][e];return i},r.dot=function(t,e){if(!t.length||!e.length||t.length!==e.length)return null;var n,a,i=t.length;if(t[0].length)for(n=new Array(i),a=0;a<i;a++)n[a]=r.dot(t[a],e);else if(e[0].length){var o=r.transposeRagged(e);for(n=new Array(o.length),a=0;a<o.length;a++)n[a]=r.dot(t,o[a])}else for(n=0,a=0;a<i;a++)n+=t[a]*e[a];return n},r.translationMatrix=function(t,e){return[[1,0,t],[0,1,e],[0,0,1]]},r.rotationMatrix=function(t){var e=t*Math.PI/180;return[[Math.cos(e),-Math.sin(e),0],[Math.sin(e),Math.cos(e),0],[0,0,1]]},r.rotationXYMatrix=function(t,e,n){return r.dot(r.dot(r.translationMatrix(e,n),r.rotationMatrix(t)),r.translationMatrix(-e,-n))},r.apply2DTransform=function(t){return function(){var e=arguments;3===e.length&&(e=e[0]);var n=1===arguments.length?e[0]:[e[0],e[1]];return r.dot(t,[n[0],n[1],1]).slice(0,2)}},r.apply2DTransform2=function(t){var e=r.apply2DTransform(t);return function(t){return e(t.slice(0,2)).concat(e(t.slice(2,4)))}}},{}],735:[function(t,e,r){"use strict";e.exports={mod:function(t,e){var r=t%e;return r<0?r+e:r},modHalf:function(t,e){return Math.abs(t)>e/2?t-Math.round(t/e)*e:t}}},{}],736:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("./array").isArrayOrTypedArray;function i(t,e){return function(){var r,n,o,s,l,c=t;for(s=0;s<e.length-1;s++){if(-1===(r=e[s])){for(n=!0,o=[],l=0;l<c.length;l++)o[l]=i(c[l],e.slice(s+1))(),o[l]!==o[0]&&(n=!1);return n?o[0]:o}if("number"==typeof r&&!a(c))return;if("object"!=typeof(c=c[r])||null===c)return}if("object"==typeof c&&null!==c&&null!==(o=c[e[s]]))return o}}e.exports=function(t,e){if(n(e))e=String(e);else if("string"!=typeof e||"[-1]"===e.substr(e.length-4))throw"bad property string";for(var r,a,o,s=0,c=e.split(".");s<c.length;){if(r=String(c[s]).match(/^([^\[\]]*)((\[\-?[0-9]*\])+)$/)){if(r[1])c[s]=r[1];else{if(0!==s)throw"bad property string";c.splice(0,1)}for(a=r[2].substr(1,r[2].length-2).split("]["),o=0;o<a.length;o++)s++,c.splice(s,0,Number(a[o]))}s++}return"object"!=typeof t?function(t,e,r){return{set:function(){throw"bad container"},get:function(){},astr:e,parts:r,obj:t}}(t,e,c):{set:l(t,c,e),get:i(t,c),astr:e,parts:c,obj:t}};var o=/(^|\.)args\[/;function s(t,e){return void 0===t||null===t&&!e.match(o)}function l(t,e,r){return function(n){var i,o,l=t,f="",p=[[t,f]],d=s(n,r);for(o=0;o<e.length-1;o++){if("number"==typeof(i=e[o])&&!a(l))throw"array index but container is not an array";if(-1===i){if(d=!u(l,e.slice(o+1),n,r))break;return}if(!h(l,i,e[o+1],d))break;if("object"!=typeof(l=l[i])||null===l)throw"container is not an object";f=c(f,i),p.push([l,f])}if(d){if(o===e.length-1&&(delete l[e[o]],Array.isArray(l)&&+e[o]==l.length-1))for(;l.length&&void 0===l[l.length-1];)l.pop()}else l[e[o]]=n}}function c(t,e){var r=e;return n(e)?r="["+e+"]":t&&(r="."+e),t+r}function u(t,e,r,n){var i,o=a(r),c=!0,u=r,f=n.replace("-1",0),p=!o&&s(r,f),d=e[0];for(i=0;i<t.length;i++)f=n.replace("-1",i),o&&(p=s(u=r[i%r.length],f)),p&&(c=!1),h(t,i,d,p)&&l(t[i],e,n.replace("-1",i))(u);return c}function h(t,e,r,n){if(void 0===t[e]){if(n)return!1;t[e]="number"==typeof r?[]:{}}return!0}},{"./array":711,"fast-isnumeric":236}],737:[function(t,e,r){"use strict";e.exports=function(){}},{}],738:[function(t,e,r){"use strict";var n=t("d3"),a=t("fast-isnumeric"),i=[];e.exports=function(t,e){if(-1===i.indexOf(t)){i.push(t);var r=1e3;a(e)?r=e:"long"===e&&(r=3e3);var o=n.select("body").selectAll(".plotly-notifier").data([0]);o.enter().append("div").classed("plotly-notifier",!0),o.selectAll(".notifier-note").data(i).enter().append("div").classed("notifier-note",!0).style("opacity",0).each((function(t){var a=n.select(this);a.append("button").classed("notifier-close",!0).html("&times;").on("click",(function(){a.transition().call(s)}));for(var i=a.append("p"),o=t.split(/<br\s*\/?>/g),l=0;l<o.length;l++)l&&i.append("br"),i.append("span").text(o[l]);"stick"===e?a.transition().duration(350).style("opacity",1):a.transition().duration(700).style("opacity",1).transition().delay(r).call(s)}))}function s(t){t.duration(700).style("opacity",0).each("end",(function(t){var e=i.indexOf(t);-1!==e&&i.splice(e,1),n.select(this).remove()}))}}},{d3:164,"fast-isnumeric":236}],739:[function(t,e,r){"use strict";var n=t("./setcursor"),a="data-savedcursor";e.exports=function(t,e){var r=t.attr(a);if(e){if(!r){for(var i=(t.attr("class")||"").split(" "),o=0;o<i.length;o++){var s=i[o];0===s.indexOf("cursor-")&&t.attr(a,s.substr(7)).classed(s,!1)}t.attr(a)||t.attr(a,"!!")}n(t,e)}else r&&(t.attr(a,null),"!!"===r?n(t):n(t,r))}},{"./setcursor":748}],740:[function(t,e,r){"use strict";var n=t("./matrix").dot,a=t("../constants/numerical").BADNUM,i=e.exports={};i.tester=function(t){var e,r=t.slice(),n=r[0][0],i=n,o=r[0][1],s=o;for(r.push(r[0]),e=1;e<r.length;e++)n=Math.min(n,r[e][0]),i=Math.max(i,r[e][0]),o=Math.min(o,r[e][1]),s=Math.max(s,r[e][1]);var l,c=!1;5===r.length&&(r[0][0]===r[1][0]?r[2][0]===r[3][0]&&r[0][1]===r[3][1]&&r[1][1]===r[2][1]&&(c=!0,l=function(t){return t[0]===r[0][0]}):r[0][1]===r[1][1]&&r[2][1]===r[3][1]&&r[0][0]===r[3][0]&&r[1][0]===r[2][0]&&(c=!0,l=function(t){return t[1]===r[0][1]}));var u=!0,h=r[0];for(e=1;e<r.length;e++)if(h[0]!==r[e][0]||h[1]!==r[e][1]){u=!1;break}return{xmin:n,xmax:i,ymin:o,ymax:s,pts:r,contains:c?function(t,e){var r=t[0],c=t[1];return!(r===a||r<n||r>i||c===a||c<o||c>s)&&(!e||!l(t))}:function(t,e){var l=t[0],c=t[1];if(l===a||l<n||l>i||c===a||c<o||c>s)return!1;var u,h,f,p,d,g=r.length,m=r[0][0],v=r[0][1],y=0;for(u=1;u<g;u++)if(h=m,f=v,m=r[u][0],v=r[u][1],!(l<(p=Math.min(h,m))||l>Math.max(h,m)||c>Math.max(f,v)))if(c<Math.min(f,v))l!==p&&y++;else{if(c===(d=m===h?c:f+(l-h)*(v-f)/(m-h)))return 1!==u||!e;c<=d&&l!==p&&y++}return y%2==1},isRect:c,degenerate:u}},i.isSegmentBent=function(t,e,r,a){var i,o,s,l=t[e],c=[t[r][0]-l[0],t[r][1]-l[1]],u=n(c,c),h=Math.sqrt(u),f=[-c[1]/h,c[0]/h];for(i=e+1;i<r;i++)if(o=[t[i][0]-l[0],t[i][1]-l[1]],(s=n(o,c))<0||s>u||Math.abs(n(o,f))>a)return!0;return!1},i.filter=function(t,e){var r=[t[0]],n=0,a=0;function o(o){t.push(o);var s=r.length,l=n;r.splice(a+1);for(var c=l+1;c<t.length;c++)(c===t.length-1||i.isSegmentBent(t,l,c+1,e))&&(r.push(t[c]),r.length<s-2&&(n=c,a=r.length-1),l=c)}t.length>1&&o(t.pop());return{addPt:o,raw:t,filtered:r}}},{"../constants/numerical":704,"./matrix":734}],741:[function(t,e,r){(function(r){"use strict";var n=t("./show_no_webgl_msg"),a=t("regl");e.exports=function(t,e){var i=t._fullLayout,o=!0;return i._glcanvas.each((function(n){if(!n.regl&&(!n.pick||i._has("parcoords"))){try{n.regl=a({canvas:this,attributes:{antialias:!n.pick,preserveDrawingBuffer:!0},pixelRatio:t._context.plotGlPixelRatio||r.devicePixelRatio,extensions:e||[]})}catch(t){o=!1}n.regl||(o=!1),o&&this.addEventListener("webglcontextlost",(function(e){t&&t.emit&&t.emit("plotly_webglcontextlost",{event:e,layer:n.key})}),!1)}})),o||n({container:i._glcontainer.node()}),o}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./show_no_webgl_msg":749,regl:492}],742:[function(t,e,r){"use strict";e.exports=function(t,e){if(e instanceof RegExp){for(var r=e.toString(),n=0;n<t.length;n++)if(t[n]instanceof RegExp&&t[n].toString()===r)return t;t.push(e)}else!e&&0!==e||-1!==t.indexOf(e)||t.push(e);return t}},{}],743:[function(t,e,r){"use strict";var n=t("../lib"),a=t("../plot_api/plot_config").dfltConfig;var i={add:function(t,e,r,n,i){var o,s;t.undoQueue=t.undoQueue||{index:0,queue:[],sequence:!1},s=t.undoQueue.index,t.autoplay?t.undoQueue.inSequence||(t.autoplay=!1):(!t.undoQueue.sequence||t.undoQueue.beginSequence?(o={undo:{calls:[],args:[]},redo:{calls:[],args:[]}},t.undoQueue.queue.splice(s,t.undoQueue.queue.length-s,o),t.undoQueue.index+=1):o=t.undoQueue.queue[s-1],t.undoQueue.beginSequence=!1,o&&(o.undo.calls.unshift(e),o.undo.args.unshift(r),o.redo.calls.push(n),o.redo.args.push(i)),t.undoQueue.queue.length>a.queueLength&&(t.undoQueue.queue.shift(),t.undoQueue.index--))},startSequence:function(t){t.undoQueue=t.undoQueue||{index:0,queue:[],sequence:!1},t.undoQueue.sequence=!0,t.undoQueue.beginSequence=!0},stopSequence:function(t){t.undoQueue=t.undoQueue||{index:0,queue:[],sequence:!1},t.undoQueue.sequence=!1,t.undoQueue.beginSequence=!1},undo:function(t){var e,r;if(t.framework&&t.framework.isPolar)t.framework.undo();else if(!(void 0===t.undoQueue||isNaN(t.undoQueue.index)||t.undoQueue.index<=0)){for(t.undoQueue.index--,e=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,r=0;r<e.undo.calls.length;r++)i.plotDo(t,e.undo.calls[r],e.undo.args[r]);t.undoQueue.inSequence=!1,t.autoplay=!1}},redo:function(t){var e,r;if(t.framework&&t.framework.isPolar)t.framework.redo();else if(!(void 0===t.undoQueue||isNaN(t.undoQueue.index)||t.undoQueue.index>=t.undoQueue.queue.length)){for(e=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,r=0;r<e.redo.calls.length;r++)i.plotDo(t,e.redo.calls[r],e.redo.args[r]);t.undoQueue.inSequence=!1,t.autoplay=!1,t.undoQueue.index++}}};i.plotDo=function(t,e,r){t.autoplay=!0,r=function(t,e){for(var r,a=[],i=0;i<e.length;i++)r=e[i],a[i]=r===t?r:"object"==typeof r?Array.isArray(r)?n.extendDeep([],r):n.extendDeepAll({},r):r;return a}(t,r),e.apply(null,r)},e.exports=i},{"../lib":728,"../plot_api/plot_config":764}],744:[function(t,e,r){"use strict";r.counter=function(t,e,r,n){var a=(e||"")+(r?"":"$"),i=!1===n?"":"^";return"xy"===t?new RegExp(i+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+a):new RegExp(i+t+"([2-9]|[1-9][0-9]+)?"+a)}},{}],745:[function(t,e,r){"use strict";var n=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,a=/^[^\.\[\]]+$/;e.exports=function(t,e){for(;e;){var r=t.match(n);if(r)t=r[1];else{if(!t.match(a))throw new Error("bad relativeAttr call:"+[t,e]);t=""}if("^"!==e.charAt(0))break;e=e.slice(1)}return t&&"["!==e.charAt(0)?t+"."+e:t+e}},{}],746:[function(t,e,r){"use strict";var n=t("./array").isArrayOrTypedArray,a=t("./is_plain_object");e.exports=function t(e,r){for(var i in r){var o=r[i],s=e[i];if(s!==o)if("_"===i.charAt(0)||"function"==typeof o){if(i in e)continue;e[i]=o}else if(n(o)&&n(s)&&a(o[0])){if("customdata"===i||"ids"===i)continue;for(var l=Math.min(o.length,s.length),c=0;c<l;c++)s[c]!==o[c]&&a(o[c])&&a(s[c])&&t(s[c],o[c])}else a(o)&&a(s)&&(t(s,o),Object.keys(s).length||delete e[i])}}},{"./array":711,"./is_plain_object":729}],747:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("./loggers"),i=t("./identity"),o=t("../constants/numerical").BADNUM;function s(t,e){return t<e}function l(t,e){return t<=e}function c(t,e){return t>e}function u(t,e){return t>=e}r.findBin=function(t,e,r){if(n(e.start))return r?Math.ceil((t-e.start)/e.size-1e-9)-1:Math.floor((t-e.start)/e.size+1e-9);var i,o,h=0,f=e.length,p=0,d=f>1?(e[f-1]-e[0])/(f-1):1;for(o=d>=0?r?s:l:r?u:c,t+=1e-9*d*(r?-1:1)*(d>=0?1:-1);h<f&&p++<100;)o(e[i=Math.floor((h+f)/2)],t)?h=i+1:f=i;return p>90&&a.log("Long binary search..."),h-1},r.sorterAsc=function(t,e){return t-e},r.sorterDes=function(t,e){return e-t},r.distinctVals=function(t){var e,n=t.slice();for(n.sort(r.sorterAsc),e=n.length-1;e>-1&&n[e]===o;e--);for(var a,i=n[e]-n[0]||1,s=i/(e||1)/1e4,l=[],c=0;c<=e;c++){var u=n[c],h=u-a;void 0===a?(l.push(u),a=u):h>s&&(i=Math.min(i,h),l.push(u),a=u)}return{vals:l,minDiff:i}},r.roundUp=function(t,e,r){for(var n,a=0,i=e.length-1,o=0,s=r?0:1,l=r?1:0,c=r?Math.ceil:Math.floor;a<i&&o++<100;)e[n=c((a+i)/2)]<=t?a=n+s:i=n-l;return e[a]},r.sort=function(t,e){for(var r=0,n=0,a=1;a<t.length;a++){var i=e(t[a],t[a-1]);if(i<0?r=1:i>0&&(n=1),r&&n)return t.sort(e)}return n?t:t.reverse()},r.findIndexOfMin=function(t,e){e=e||i;for(var r,n=1/0,a=0;a<t.length;a++){var o=e(t[a]);o<n&&(n=o,r=a)}return r}},{"../constants/numerical":704,"./identity":727,"./loggers":732,"fast-isnumeric":236}],748:[function(t,e,r){"use strict";e.exports=function(t,e){(t.attr("class")||"").split(" ").forEach((function(e){0===e.indexOf("cursor-")&&t.classed(e,!1)})),e&&t.classed("cursor-"+e,!0)}},{}],749:[function(t,e,r){"use strict";var n=t("../components/color"),a=function(){};e.exports=function(t){for(var e in t)"function"==typeof t[e]&&(t[e]=a);t.destroy=function(){t.container.parentNode.removeChild(t.container)};var r=document.createElement("div");r.className="no-webgl",r.style.cursor="pointer",r.style.fontSize="24px",r.style.color=n.defaults[0],r.style.position="absolute",r.style.left=r.style.top="0px",r.style.width=r.style.height="100%",r.style["background-color"]=n.lightLine,r.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%",r.appendChild(i),t.container.appendChild(r),t.container.style.background="#FFFFFF",t.container.onclick=function(){window.open("https://get.webgl.org")},!1}},{"../components/color":595}],750:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("./array").isArrayOrTypedArray;r.aggNums=function(t,e,i,o){var s,l;if((!o||o>i.length)&&(o=i.length),n(e)||(e=!1),a(i[0])){for(l=new Array(o),s=0;s<o;s++)l[s]=r.aggNums(t,e,i[s]);i=l}for(s=0;s<o;s++)n(e)?n(i[s])&&(e=t(+e,+i[s])):e=i[s];return e},r.len=function(t){return r.aggNums((function(t){return t+1}),0,t)},r.mean=function(t,e){return e||(e=r.len(t)),r.aggNums((function(t,e){return t+e}),0,t)/e},r.midRange=function(t){if(void 0!==t&&0!==t.length)return(r.aggNums(Math.max,null,t)+r.aggNums(Math.min,null,t))/2},r.variance=function(t,e,a){return e||(e=r.len(t)),n(a)||(a=r.mean(t,e)),r.aggNums((function(t,e){return t+Math.pow(e-a,2)}),0,t)/e},r.stdev=function(t,e,n){return Math.sqrt(r.variance(t,e,n))},r.median=function(t){var e=t.slice().sort();return r.interp(e,.5)},r.interp=function(t,e){if(!n(e))throw"n should be a finite number";if((e=e*t.length-.5)<0)return t[0];if(e>t.length-1)return t[t.length-1];var r=e%1;return r*t[Math.ceil(e)]+(1-r)*t[Math.floor(e)]}},{"./array":711,"fast-isnumeric":236}],751:[function(t,e,r){"use strict";var n=t("color-normalize");e.exports=function(t){return t?n(t):[0,0,0,1]}},{"color-normalize":122}],752:[function(t,e,r){"use strict";var n=t("d3"),a=t("../lib"),i=t("../constants/xmlns_namespaces"),o=t("../constants/alignment").LINE_SPACING;function s(t,e){return t.node().getBoundingClientRect()[e]}var l=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;r.convertToTspans=function(t,e,A){var M=t.text(),E=!t.attr("data-notex")&&"undefined"!=typeof MathJax&&M.match(l),C=n.select(t.node().parentNode);if(!C.empty()){var L=t.attr("class")?t.attr("class").split(" ")[0]:"text";return L+="-math",C.selectAll("svg."+L).remove(),C.selectAll("g."+L+"-group").remove(),t.style("display",null).attr({"data-unformatted":M,"data-math":"N"}),E?(e&&e._promises||[]).push(new Promise((function(e){t.style("display","none");var r=parseInt(t.node().style.fontSize,10),i={fontSize:r};!function(t,e,r){var i,o,s,l;MathJax.Hub.Queue((function(){return o=a.extendDeepAll({},MathJax.Hub.config),s=MathJax.Hub.processSectionDelay,void 0!==MathJax.Hub.processSectionDelay&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:[["$","$"],["\\(","\\)"]]},displayAlign:"left"})}),(function(){if("SVG"!==(i=MathJax.Hub.config.menuSettings.renderer))return MathJax.Hub.setRenderer("SVG")}),(function(){var r="math-output-"+a.randstr({},64);return l=n.select("body").append("div").attr({id:r}).style({visibility:"hidden",position:"absolute"}).style({"font-size":e.fontSize+"px"}).text(t.replace(c,"\\lt ").replace(u,"\\gt ")),MathJax.Hub.Typeset(l.node())}),(function(){var e=n.select("body").select("#MathJax_SVG_glyphs");if(l.select(".MathJax_SVG").empty()||!l.select("svg").node())a.log("There was an error in the tex syntax.",t),r();else{var o=l.select("svg").node().getBoundingClientRect();r(l.select(".MathJax_SVG"),e,o)}if(l.remove(),"SVG"!==i)return MathJax.Hub.setRenderer(i)}),(function(){return void 0!==s&&(MathJax.Hub.processSectionDelay=s),MathJax.Hub.Config(o)}))}(E[2],i,(function(n,a,i){C.selectAll("svg."+L).remove(),C.selectAll("g."+L+"-group").remove();var o=n&&n.select("svg");if(!o||!o.node())return P(),void e();var l=C.append("g").classed(L+"-group",!0).attr({"pointer-events":"none","data-unformatted":M,"data-math":"Y"});l.node().appendChild(o.node()),a&&a.node()&&o.node().insertBefore(a.node().cloneNode(!0),o.node().firstChild),o.attr({class:L,height:i.height,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var c=t.node().style.fill||"black",u=o.select("g");u.attr({fill:c,stroke:c});var h=s(u,"width"),f=s(u,"height"),p=+t.attr("x")-h*{start:0,middle:.5,end:1}[t.attr("text-anchor")||"start"],d=-(r||s(t,"height"))/4;"y"===L[0]?(l.attr({transform:"rotate("+[-90,+t.attr("x"),+t.attr("y")]+") translate("+[-h/2,d-f/2]+")"}),o.attr({x:+t.attr("x"),y:+t.attr("y")})):"l"===L[0]?o.attr({x:t.attr("x"),y:d-f/2}):"a"===L[0]&&0!==L.indexOf("atitle")?o.attr({x:0,y:d}):o.attr({x:p,y:+t.attr("y")+d-f/2}),A&&A.call(t,l),e(l)}))}))):P(),t}function P(){C.empty()||(L=t.attr("class")+"-math",C.select("svg."+L).remove()),t.text("").style("white-space","pre"),function(t,e){e=e.replace(g," ");var r,s=!1,l=[],c=-1;function u(){c++;var e=document.createElementNS(i.svg,"tspan");n.select(e).attr({class:"line",dy:c*o+"em"}),t.appendChild(e),r=e;var a=l;if(l=[{node:e}],a.length>1)for(var s=1;s<a.length;s++)A(a[s])}function A(t){var e,a=t.type,o={};if("a"===a){e="a";var s=t.target,c=t.href,u=t.popup;c&&(o={"xlink:xlink:show":"_blank"===s||"_"!==s.charAt(0)?"new":"replace",target:s,"xlink:xlink:href":c},u&&(o.onclick='window.open(this.href.baseVal,this.target.baseVal,"'+u+'");return false;'))}else e="tspan";t.style&&(o.style=t.style);var h=document.createElementNS(i.svg,e);if("sup"===a||"sub"===a){M(r,"\u200b"),r.appendChild(h);var d=document.createElementNS(i.svg,"tspan");M(d,"\u200b"),n.select(d).attr("dy",p[a]),o.dy=f[a],r.appendChild(h),r.appendChild(d)}else r.appendChild(h);n.select(h).attr(o),r=t.node=h,l.push(t)}function M(t,e){t.appendChild(document.createTextNode(e))}function E(t){if(1!==l.length){var n=l.pop();t!==n.type&&a.log("Start tag <"+n.type+"> doesnt match end tag <"+t+">. Pretending it did match.",e),r=l[l.length-1].node}else a.log("Ignoring unexpected end tag </"+t+">.",e)}y.test(e)?u():(r=t,l=[{node:t}]);for(var C=e.split(m),L=0;L<C.length;L++){var P=C[L],I=P.match(v),z=I&&I[2].toLowerCase(),O=h[z];if("br"===z)u();else if(void 0===O)M(r,S(P));else if(I[1])E(z);else{var D=I[4],R={type:z},F=T(D,x);if(F?(F=F.replace(k,"$1 fill:"),O&&(F+=";"+O)):O&&(F=O),F&&(R.style=F),"a"===z){s=!0;var B=T(D,b);if(B){var N=document.createElement("a");N.href=B,-1!==d.indexOf(N.protocol)&&(R.href=encodeURI(decodeURI(B)),R.target=T(D,_)||"_blank",R.popup=T(D,w))}}A(R)}}return s}(t.node(),M)&&t.style("pointer-events","all"),r.positionText(t),A&&A.call(t)}};var c=/(<|&lt;|&#60;)/g,u=/(>|&gt;|&#62;)/g;var h={sup:"font-size:70%",sub:"font-size:70%",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},f={sub:"0.3em",sup:"-0.6em"},p={sub:"-0.21em",sup:"0.42em"},d=["http:","https:","mailto:","",void 0,":"],g=r.NEWLINES=/(\r\n?|\n)/g,m=/(<[^<>]*>)/,v=/<(\/?)([^ >]*)(\s+(.*))?>/i,y=/<br(\s+.*)?>/i;r.BR_TAG_ALL=/<br(\s+.*)?>/gi;var x=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,b=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,_=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,w=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function T(t,e){if(!t)return null;var r=t.match(e),n=r&&(r[3]||r[4]);return n&&S(n)}var k=/(^|;)\s*color:/;r.plainText=function(t,e){for(var r=void 0!==(e=e||{}).len&&-1!==e.len?e.len:1/0,n=void 0!==e.allowedTags?e.allowedTags:["br"],a="...".length,i=t.split(m),o=[],s="",l=0,c=0;c<i.length;c++){var u=i[c],h=u.match(v),f=h&&h[2].toLowerCase();if(f)-1!==n.indexOf(f)&&(o.push(u),s=f);else{var p=u.length;if(l+p<r)o.push(u),l+=p;else if(l<r){var d=r-l;s&&("br"!==s||d<=a||p<=a)&&o.pop(),r>a?o.push(u.substr(0,d-a)+"..."):o.push(u.substr(0,d));break}s=""}}return o.join("")};var A={mu:"\u03bc",amp:"&",lt:"<",gt:">",nbsp:"\xa0",times:"\xd7",plusmn:"\xb1",deg:"\xb0"},M=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function S(t){return t.replace(M,(function(t,e){return("#"===e.charAt(0)?function(t){if(t>1114111)return;var e=String.fromCodePoint;if(e)return e(t);var r=String.fromCharCode;return t<=65535?r(t):r(55232+(t>>10),t%1024+56320)}("x"===e.charAt(1)?parseInt(e.substr(2),16):parseInt(e.substr(1),10)):A[e])||t}))}function E(t,e,r){var n,a,i,o=r.horizontalAlign,s=r.verticalAlign||"top",l=t.node().getBoundingClientRect(),c=e.node().getBoundingClientRect();return a="bottom"===s?function(){return l.bottom-n.height}:"middle"===s?function(){return l.top+(l.height-n.height)/2}:function(){return l.top},i="right"===o?function(){return l.right-n.width}:"center"===o?function(){return l.left+(l.width-n.width)/2}:function(){return l.left},function(){return n=this.node().getBoundingClientRect(),this.style({top:a()-c.top+"px",left:i()-c.left+"px","z-index":1e3}),this}}r.convertEntities=S,r.sanitizeHTML=function(t){t=t.replace(g," ");for(var e=document.createElement("p"),r=e,a=[],i=t.split(m),o=0;o<i.length;o++){var s=i[o],l=s.match(v),c=l&&l[2].toLowerCase();if(c in h)if(l[1])a.length&&(r=a.pop());else{var u=l[4],f=T(u,x),p=f?{style:f}:{};if("a"===c){var y=T(u,b);if(y){var w=document.createElement("a");if(w.href=y,-1!==d.indexOf(w.protocol)){p.href=encodeURI(decodeURI(y));var k=T(u,_);k&&(p.target=k)}}}var A=document.createElement(c);r.appendChild(A),n.select(A).attr(p),r=A,a.push(A)}else r.appendChild(document.createTextNode(S(s)))}return e.innerHTML},r.lineCount=function(t){return t.selectAll("tspan.line").size()||1},r.positionText=function(t,e,r){return t.each((function(){var t=n.select(this);function a(e,r){return void 0===r?null===(r=t.attr(e))&&(t.attr(e,0),r=0):t.attr(e,r),r}var i=a("x",e),o=a("y",r);"text"===this.nodeName&&t.selectAll("tspan.line").attr({x:i,y:o})}))},r.makeEditable=function(t,e){var r=e.gd,a=e.delegate,i=n.dispatch("edit","input","cancel"),o=a||t;if(t.style({"pointer-events":a?"none":"all"}),1!==t.size())throw new Error("boo");function s(){!function(){var a=n.select(r).select(".svg-container"),o=a.append("div"),s=t.node().style,c=parseFloat(s.fontSize||12),u=e.text;void 0===u&&(u=t.attr("data-unformatted"));o.classed("plugin-editable editable",!0).style({position:"absolute","font-family":s.fontFamily||"Arial","font-size":c,color:e.fill||s.fill||"black",opacity:1,"background-color":e.background||"transparent",outline:"#ffffff33 1px solid",margin:[-c/8+1,0,0,-1].join("px ")+"px",padding:"0","box-sizing":"border-box"}).attr({contenteditable:!0}).text(u).call(E(t,a,e)).on("blur",(function(){r._editing=!1,t.text(this.textContent).style({opacity:1});var e,a=n.select(this).attr("class");(e=a?"."+a.split(" ")[0]+"-math-group":"[class*=-math-group]")&&n.select(t.node().parentNode).select(e).style({opacity:0});var o=this.textContent;n.select(this).transition().duration(0).remove(),n.select(document).on("mouseup",null),i.edit.call(t,o)})).on("focus",(function(){var t=this;r._editing=!0,n.select(document).on("mouseup",(function(){if(n.event.target===t)return!1;document.activeElement===o.node()&&o.node().blur()}))})).on("keyup",(function(){27===n.event.which?(r._editing=!1,t.style({opacity:1}),n.select(this).style({opacity:0}).on("blur",(function(){return!1})).transition().remove(),i.cancel.call(t,this.textContent)):(i.input.call(t,this.textContent),n.select(this).call(E(t,a,e)))})).on("keydown",(function(){13===n.event.which&&this.blur()})).call(l)}(),t.style({opacity:0});var a,s=o.attr("class");(a=s?"."+s.split(" ")[0]+"-math-group":"[class*=-math-group]")&&n.select(t.node().parentNode).select(a).style({opacity:0})}function l(t){var e=t.node(),r=document.createRange();r.selectNodeContents(e);var n=window.getSelection();n.removeAllRanges(),n.addRange(r),e.focus()}return e.immediate?s():o.on("click",s),n.rebind(t,i,"on")}},{"../constants/alignment":697,"../constants/xmlns_namespaces":705,"../lib":728,d3:164}],753:[function(t,e,r){"use strict";var n={};function a(t){t&&null!==t.timer&&(clearTimeout(t.timer),t.timer=null)}r.throttle=function(t,e,r){var i=n[t],o=Date.now();if(!i){for(var s in n)n[s].ts<o-6e4&&delete n[s];i=n[t]={ts:0,timer:null}}function l(){r(),i.ts=Date.now(),i.onDone&&(i.onDone(),i.onDone=null)}a(i),o>i.ts+e?l():i.timer=setTimeout((function(){l(),i.timer=null}),e)},r.done=function(t){var e=n[t];return e&&e.timer?new Promise((function(t){var r=e.onDone;e.onDone=function(){r&&r(),t(),e.onDone=null}})):Promise.resolve()},r.clear=function(t){if(t)a(n[t]),delete n[t];else for(var e in n)r.clear(e)}},{}],754:[function(t,e,r){"use strict";var n=t("fast-isnumeric");e.exports=function(t,e){if(t>0)return Math.log(t)/Math.LN10;var r=Math.log(Math.min(e[0],e[1]))/Math.LN10;return n(r)||(r=Math.log(Math.max(e[0],e[1]))/Math.LN10-6),r}},{"fast-isnumeric":236}],755:[function(t,e,r){"use strict";var n=e.exports={},a=t("../plots/geo/constants").locationmodeToLayer,i=t("topojson-client").feature;n.getTopojsonName=function(t){return[t.scope.replace(/ /g,"-"),"_",t.resolution.toString(),"m"].join("")},n.getTopojsonPath=function(t,e){return t+e+".json"},n.getTopojsonFeatures=function(t,e){var r=a[t.locationmode],n=e.objects[r];return i(e,n).features}},{"../plots/geo/constants":806,"topojson-client":531}],756:[function(t,e,r){"use strict";e.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}},{}],757:[function(t,e,r){"use strict";e.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"}}},{}],758:[function(t,e,r){"use strict";var n=t("../registry");e.exports=function(t){for(var e,r,a=n.layoutArrayContainers,i=n.layoutArrayRegexes,o=t.split("[")[0],s=0;s<i.length;s++)if((r=t.match(i[s]))&&0===r.index){e=r[0];break}if(e||(e=a[a.indexOf(o)]),!e)return!1;var l=t.substr(e.length);return l?!!(r=l.match(/^\[(0|[1-9][0-9]*)\](\.(.+))?$/))&&{array:e,index:Number(r[1]),property:r[3]||""}:{array:e,index:"",property:""}}},{"../registry":859}],759:[function(t,e,r){"use strict";var n=t("../lib"),a=n.extendFlat,i=n.isPlainObject,o={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},s={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},l=o.flags.slice().concat(["fullReplot"]),c=s.flags.slice().concat("layoutReplot");function u(t){for(var e={},r=0;r<t.length;r++)e[t[r]]=!1;return e}function h(t,e,r){var n=a({},t);for(var o in n){var s=n[o];i(s)&&(n[o]=f(s,e,r,o))}return"from-root"===r&&(n.editType=e),n}function f(t,e,r,n){if(t.valType){var i=a({},t);if(i.editType=e,Array.isArray(t.items)){i.items=new Array(t.items.length);for(var o=0;o<t.items.length;o++)i.items[o]=f(t.items[o],e,"from-root")}return i}return h(t,e,"_"===n.charAt(0)?"nested":"from-root")}e.exports={traces:o,layout:s,traceFlags:function(){return u(l)},layoutFlags:function(){return u(c)},update:function(t,e){var r=e.editType;if(r&&"none"!==r)for(var n=r.split("+"),a=0;a<n.length;a++)t[n[a]]=!0},overrideAll:h}},{"../lib":728}],760:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("gl-mat4/fromQuat"),i=t("../registry"),o=t("../lib"),s=t("../plots/plots"),l=t("../plots/cartesian/axis_ids"),c=t("../components/color"),u=l.cleanId,h=l.getFromTrace,f=i.traceIs;function p(t,e){var r=t[e],n=e.charAt(0);r&&"paper"!==r&&(t[e]=u(r,n))}function d(t){function e(e,r){var n=t[e],a=t.title&&t.title[r];n&&!a&&(t.title||(t.title={}),t.title[r]=t[e],delete t[e])}t&&("string"!=typeof t.title&&"number"!=typeof t.title||(t.title={text:t.title}),e("titlefont","font"),e("titleposition","position"),e("titleside","side"),e("titleoffset","offset"))}function g(t){if(!o.isPlainObject(t))return!1;var e=t.name;return delete t.name,delete t.showlegend,("string"==typeof e||"number"==typeof e)&&String(e)}function m(t,e,r,n){if(r&&!n)return t;if(n&&!r)return e;if(!t.trim())return e;if(!e.trim())return t;var a,i=Math.min(t.length,e.length);for(a=0;a<i&&t.charAt(a)===e.charAt(a);a++);return t.substr(0,a).trim()}function v(t){var e="middle",r="center";return"string"==typeof t&&(-1!==t.indexOf("top")?e="top":-1!==t.indexOf("bottom")&&(e="bottom"),-1!==t.indexOf("left")?r="left":-1!==t.indexOf("right")&&(r="right")),e+" "+r}function y(t,e){return e in t&&"object"==typeof t[e]&&0===Object.keys(t[e]).length}r.clearPromiseQueue=function(t){Array.isArray(t._promises)&&t._promises.length>0&&o.log("Clearing previous rejected promises from queue."),t._promises=[]},r.cleanLayout=function(t){var e,n;t||(t={}),t.xaxis1&&(t.xaxis||(t.xaxis=t.xaxis1),delete t.xaxis1),t.yaxis1&&(t.yaxis||(t.yaxis=t.yaxis1),delete t.yaxis1),t.scene1&&(t.scene||(t.scene=t.scene1),delete t.scene1);var i=(s.subplotsRegistry.cartesian||{}).attrRegex,l=(s.subplotsRegistry.polar||{}).attrRegex,h=(s.subplotsRegistry.ternary||{}).attrRegex,f=(s.subplotsRegistry.gl3d||{}).attrRegex,g=Object.keys(t);for(e=0;e<g.length;e++){var m=g[e];if(i&&i.test(m)){var v=t[m];v.anchor&&"free"!==v.anchor&&(v.anchor=u(v.anchor)),v.overlaying&&(v.overlaying=u(v.overlaying)),v.type||(v.isdate?v.type="date":v.islog?v.type="log":!1===v.isdate&&!1===v.islog&&(v.type="linear")),"withzero"!==v.autorange&&"tozero"!==v.autorange||(v.autorange=!0,v.rangemode="tozero"),delete v.islog,delete v.isdate,delete v.categories,y(v,"domain")&&delete v.domain,void 0!==v.autotick&&(void 0===v.tickmode&&(v.tickmode=v.autotick?"auto":"linear"),delete v.autotick),d(v)}else if(l&&l.test(m)){d(t[m].radialaxis)}else if(h&&h.test(m)){var x=t[m];d(x.aaxis),d(x.baxis),d(x.caxis)}else if(f&&f.test(m)){var b=t[m],_=b.cameraposition;if(Array.isArray(_)&&4===_[0].length){var w=_[0],T=_[1],k=_[2],A=a([],w),M=[];for(n=0;n<3;++n)M[n]=T[n]+k*A[2+4*n];b.camera={eye:{x:M[0],y:M[1],z:M[2]},center:{x:T[0],y:T[1],z:T[2]},up:{x:0,y:0,z:1}},delete b.cameraposition}d(b.xaxis),d(b.yaxis),d(b.zaxis)}}var S=Array.isArray(t.annotations)?t.annotations.length:0;for(e=0;e<S;e++){var E=t.annotations[e];o.isPlainObject(E)&&(E.ref&&("paper"===E.ref?(E.xref="paper",E.yref="paper"):"data"===E.ref&&(E.xref="x",E.yref="y"),delete E.ref),p(E,"xref"),p(E,"yref"))}var C=Array.isArray(t.shapes)?t.shapes.length:0;for(e=0;e<C;e++){var L=t.shapes[e];o.isPlainObject(L)&&(p(L,"xref"),p(L,"yref"))}var P=t.legend;return P&&(P.x>3?(P.x=1.02,P.xanchor="left"):P.x<-2&&(P.x=-.02,P.xanchor="right"),P.y>3?(P.y=1.02,P.yanchor="bottom"):P.y<-2&&(P.y=-.02,P.yanchor="top")),d(t),"rotate"===t.dragmode&&(t.dragmode="orbit"),c.clean(t),t.template&&t.template.layout&&r.cleanLayout(t.template.layout),t},r.cleanData=function(t){for(var e=0;e<t.length;e++){var n,a=t[e];if("histogramy"===a.type&&"xbins"in a&&!("ybins"in a)&&(a.ybins=a.xbins,delete a.xbins),a.error_y&&"opacity"in a.error_y){var l=c.defaults,h=a.error_y.color||(f(a,"bar")?c.defaultLine:l[e%l.length]);a.error_y.color=c.addOpacity(c.rgb(h),c.opacity(h)*a.error_y.opacity),delete a.error_y.opacity}if("bardir"in a&&("h"!==a.bardir||!f(a,"bar")&&"histogram"!==a.type.substr(0,9)||(a.orientation="h",r.swapXYData(a)),delete a.bardir),"histogramy"===a.type&&r.swapXYData(a),"histogramx"!==a.type&&"histogramy"!==a.type||(a.type="histogram"),"scl"in a&&!("colorscale"in a)&&(a.colorscale=a.scl,delete a.scl),"reversescl"in a&&!("reversescale"in a)&&(a.reversescale=a.reversescl,delete a.reversescl),a.xaxis&&(a.xaxis=u(a.xaxis,"x")),a.yaxis&&(a.yaxis=u(a.yaxis,"y")),f(a,"gl3d")&&a.scene&&(a.scene=s.subplotsRegistry.gl3d.cleanId(a.scene)),!f(a,"pie-like")&&!f(a,"bar-like"))if(Array.isArray(a.textposition))for(n=0;n<a.textposition.length;n++)a.textposition[n]=v(a.textposition[n]);else a.textposition&&(a.textposition=v(a.textposition));var p=i.getModule(a);if(p&&p.colorbar){var x=p.colorbar.container,b=x?a[x]:a;b&&b.colorscale&&("YIGnBu"===b.colorscale&&(b.colorscale="YlGnBu"),"YIOrRd"===b.colorscale&&(b.colorscale="YlOrRd"))}if("surface"===a.type&&o.isPlainObject(a.contours)){var _=["x","y","z"];for(n=0;n<_.length;n++){var w=a.contours[_[n]];o.isPlainObject(w)&&(w.highlightColor&&(w.highlightcolor=w.highlightColor,delete w.highlightColor),w.highlightWidth&&(w.highlightwidth=w.highlightWidth,delete w.highlightWidth))}}if("candlestick"===a.type||"ohlc"===a.type){var T=!1!==(a.increasing||{}).showlegend,k=!1!==(a.decreasing||{}).showlegend,A=g(a.increasing),M=g(a.decreasing);if(!1!==A&&!1!==M){var S=m(A,M,T,k);S&&(a.name=S)}else!A&&!M||a.name||(a.name=A||M)}if(Array.isArray(a.transforms)){var E=a.transforms;for(n=0;n<E.length;n++){var C=E[n];if(o.isPlainObject(C))switch(C.type){case"filter":C.filtersrc&&(C.target=C.filtersrc,delete C.filtersrc),C.calendar&&(C.valuecalendar||(C.valuecalendar=C.calendar),delete C.calendar);break;case"groupby":if(C.styles=C.styles||C.style,C.styles&&!Array.isArray(C.styles)){var L=C.styles,P=Object.keys(L);C.styles=[];for(var I=0;I<P.length;I++)C.styles.push({target:P[I],value:L[P[I]]})}}}}y(a,"line")&&delete a.line,"marker"in a&&(y(a.marker,"line")&&delete a.marker.line,y(a,"marker")&&delete a.marker),c.clean(a),a.autobinx&&(delete a.autobinx,delete a.xbins),a.autobiny&&(delete a.autobiny,delete a.ybins),d(a),a.colorbar&&d(a.colorbar),a.marker&&a.marker.colorbar&&d(a.marker.colorbar),a.line&&a.line.colorbar&&d(a.line.colorbar),a.aaxis&&d(a.aaxis),a.baxis&&d(a.baxis)}},r.swapXYData=function(t){var e;if(o.swapAttrs(t,["?","?0","d?","?bins","nbins?","autobin?","?src","error_?"]),Array.isArray(t.z)&&Array.isArray(t.z[0])&&(t.transpose?delete t.transpose:t.transpose=!0),t.error_x&&t.error_y){var r=t.error_y,n="copy_ystyle"in r?r.copy_ystyle:!(r.color||r.thickness||r.width);o.swapAttrs(t,["error_?.copy_ystyle"]),n&&o.swapAttrs(t,["error_?.color","error_?.thickness","error_?.width"])}if("string"==typeof t.hoverinfo){var a=t.hoverinfo.split("+");for(e=0;e<a.length;e++)"x"===a[e]?a[e]="y":"y"===a[e]&&(a[e]="x");t.hoverinfo=a.join("+")}},r.coerceTraceIndices=function(t,e){if(n(e))return[e];if(!Array.isArray(e)||!e.length)return t.data.map((function(t,e){return e}));if(Array.isArray(e)){for(var r=[],a=0;a<e.length;a++)o.isIndex(e[a],t.data.length)?r.push(e[a]):o.warn("trace index (",e[a],") is not a number or is out of bounds");return r}return e},r.manageArrayContainers=function(t,e,r){var a=t.obj,i=t.parts,s=i.length,l=i[s-1],c=n(l);if(c&&null===e){var u=i.slice(0,s-1).join(".");o.nestedProperty(a,u).get().splice(l,1)}else c&&void 0===t.get()?(void 0===t.get()&&(r[t.astr]=null),t.set(e)):t.set(e)};var x=/(\.[^\[\]\.]+|\[[^\[\]\.]+\])$/;function b(t){var e=t.search(x);if(e>0)return t.substr(0,e)}r.hasParent=function(t,e){for(var r=b(e);r;){if(r in t)return!0;r=b(r)}return!1};var _=["x","y","z"];r.clearAxisTypes=function(t,e,r){for(var n=0;n<e.length;n++)for(var a=t._fullData[n],i=0;i<3;i++){var s=h(t,a,_[i]);if(s&&"log"!==s.type){var l=s._name,c=s._id.substr(1);if("scene"===c.substr(0,5)){if(void 0!==r[c])continue;l=c+"."+l}var u=l+".type";void 0===r[l]&&void 0===r[u]&&o.nestedProperty(t.layout,u).set(null)}}}},{"../components/color":595,"../lib":728,"../plots/cartesian/axis_ids":779,"../plots/plots":839,"../registry":859,"fast-isnumeric":236,"gl-mat4/fromQuat":270}],761:[function(t,e,r){"use strict";var n=t("./plot_api");r.plot=n.plot,r.newPlot=n.newPlot,r.restyle=n.restyle,r.relayout=n.relayout,r.redraw=n.redraw,r.update=n.update,r._guiRestyle=n._guiRestyle,r._guiRelayout=n._guiRelayout,r._guiUpdate=n._guiUpdate,r._storeDirectGUIEdit=n._storeDirectGUIEdit,r.react=n.react,r.extendTraces=n.extendTraces,r.prependTraces=n.prependTraces,r.addTraces=n.addTraces,r.deleteTraces=n.deleteTraces,r.moveTraces=n.moveTraces,r.purge=n.purge,r.addFrames=n.addFrames,r.deleteFrames=n.deleteFrames,r.animate=n.animate,r.setPlotConfig=n.setPlotConfig,r.toImage=t("./to_image"),r.validate=t("./validate"),r.downloadImage=t("../snapshot/download");var a=t("./template_api");r.makeTemplate=a.makeTemplate,r.validateTemplate=a.validateTemplate},{"../snapshot/download":861,"./plot_api":763,"./template_api":768,"./to_image":769,"./validate":770}],762:[function(t,e,r){"use strict";var n=t("../lib/is_plain_object"),a=t("../lib/noop"),i=t("../lib/loggers"),o=t("../lib/search").sorterAsc,s=t("../registry");r.containerArrayMatch=t("./container_array_match");var l=r.isAddVal=function(t){return"add"===t||n(t)},c=r.isRemoveVal=function(t){return null===t||"remove"===t};r.applyContainerArrayChanges=function(t,e,r,n,u){var h=e.astr,f=s.getComponentMethod(h,"supplyLayoutDefaults"),p=s.getComponentMethod(h,"draw"),d=s.getComponentMethod(h,"drawOne"),g=n.replot||n.recalc||f===a||p===a,m=t.layout,v=t._fullLayout;if(r[""]){Object.keys(r).length>1&&i.warn("Full array edits are incompatible with other edits",h);var y=r[""][""];if(c(y))e.set(null);else{if(!Array.isArray(y))return i.warn("Unrecognized full array edit value",h,y),!0;e.set(y)}return!g&&(f(m,v),p(t),!0)}var x,b,_,w,T,k,A,M,S=Object.keys(r).map(Number).sort(o),E=e.get(),C=E||[],L=u(v,h).get(),P=[],I=-1,z=C.length;for(x=0;x<S.length;x++)if(w=r[_=S[x]],T=Object.keys(w),k=w[""],A=l(k),_<0||_>C.length-(A?0:1))i.warn("index out of range",h,_);else if(void 0!==k)T.length>1&&i.warn("Insertion & removal are incompatible with edits to the same index.",h,_),c(k)?P.push(_):A?("add"===k&&(k={}),C.splice(_,0,k),L&&L.splice(_,0,{})):i.warn("Unrecognized full object edit value",h,_,k),-1===I&&(I=_);else for(b=0;b<T.length;b++)M=h+"["+_+"].",u(C[_],T[b],M).set(w[T[b]]);for(x=P.length-1;x>=0;x--)C.splice(P[x],1),L&&L.splice(P[x],1);if(C.length?E||e.set(C):e.set(null),g)return!1;if(f(m,v),d!==a){var O;if(-1===I)O=S;else{for(z=Math.max(C.length,z),O=[],x=0;x<S.length&&!((_=S[x])>=I);x++)O.push(_);for(x=I;x<z;x++)O.push(x)}for(x=0;x<O.length;x++)d(t,O[x])}else p(t);return!0}},{"../lib/is_plain_object":729,"../lib/loggers":732,"../lib/noop":737,"../lib/search":747,"../registry":859,"./container_array_match":758}],763:[function(t,e,r){"use strict";var n=t("d3"),a=t("fast-isnumeric"),i=t("has-hover"),o=t("../lib"),s=o.nestedProperty,l=t("../lib/events"),c=t("../lib/queue"),u=t("../registry"),h=t("./plot_schema"),f=t("../plots/plots"),p=t("../plots/polar/legacy"),d=t("../plots/cartesian/axes"),g=t("../components/drawing"),m=t("../components/color"),v=t("../plots/cartesian/graph_interact").initInteractions,y=t("../constants/xmlns_namespaces"),x=t("../lib/svg_text_utils"),b=t("../plots/cartesian/select").clearSelect,_=t("./plot_config").dfltConfig,w=t("./manage_arrays"),T=t("./helpers"),k=t("./subroutines"),A=t("./edit_types"),M=t("../plots/cartesian/constants").AX_NAME_PATTERN,S=0;function E(t){var e=t._fullLayout;e._redrawFromAutoMarginCount?e._redrawFromAutoMarginCount--:t.emit("plotly_afterplot")}function C(t,e){try{t._fullLayout._paper.style("background",e)}catch(t){o.error(t)}}function L(t,e){C(t,m.combine(e,"white"))}function P(t,e){if(!t._context){t._context=o.extendDeep({},_);var r=n.select("base");t._context._baseUrl=r.size()&&r.attr("href")?window.location.href.split("#")[0]:""}var a,s,l,c=t._context;if(e){for(s=Object.keys(e),a=0;a<s.length;a++)"editable"!==(l=s[a])&&"edits"!==l&&l in c&&("setBackground"===l&&"opaque"===e[l]?c[l]=L:c[l]=e[l]);e.plot3dPixelRatio&&!c.plotGlPixelRatio&&(c.plotGlPixelRatio=c.plot3dPixelRatio);var u=e.editable;if(void 0!==u)for(c.editable=u,s=Object.keys(c.edits),a=0;a<s.length;a++)c.edits[s[a]]=u;if(e.edits)for(s=Object.keys(e.edits),a=0;a<s.length;a++)(l=s[a])in c.edits&&(c.edits[l]=e.edits[l]);c._exportedPlot=e._exportedPlot}c.staticPlot&&(c.editable=!1,c.edits={},c.autosizable=!1,c.scrollZoom=!1,c.doubleClick=!1,c.showTips=!1,c.showLink=!1,c.displayModeBar=!1),"hover"!==c.displayModeBar||i||(c.displayModeBar=!0),"transparent"!==c.setBackground&&"function"==typeof c.setBackground||(c.setBackground=C),c._hasZeroHeight=c._hasZeroHeight||0===t.clientHeight,c._hasZeroWidth=c._hasZeroWidth||0===t.clientWidth;var h=c.scrollZoom,f=c._scrollZoom={};if(!0===h)f.cartesian=1,f.gl3d=1,f.geo=1,f.mapbox=1;else if("string"==typeof h){var p=h.split("+");for(a=0;a<p.length;a++)f[p[a]]=1}else!1!==h&&(f.gl3d=1,f.geo=1,f.mapbox=1)}function I(t,e){var r,n,a=e+1,i=[];for(r=0;r<t.length;r++)(n=t[r])<0?i.push(a+n):i.push(n);return i}function z(t,e,r){var n,a;for(n=0;n<e.length;n++){if((a=e[n])!==parseInt(a,10))throw new Error("all values in "+r+" must be integers");if(a>=t.data.length||a<-t.data.length)throw new Error(r+" must be valid indices for gd.data.");if(e.indexOf(a,n+1)>-1||a>=0&&e.indexOf(-t.data.length+a)>-1||a<0&&e.indexOf(t.data.length+a)>-1)throw new Error("each index in "+r+" must be unique.")}}function O(t,e,r){if(!Array.isArray(t.data))throw new Error("gd.data must be an array.");if("undefined"==typeof e)throw new Error("currentIndices is a required argument.");if(Array.isArray(e)||(e=[e]),z(t,e,"currentIndices"),"undefined"==typeof r||Array.isArray(r)||(r=[r]),"undefined"!=typeof r&&z(t,r,"newIndices"),"undefined"!=typeof r&&e.length!==r.length)throw new Error("current and new indices must be of equal length.")}function D(t,e,r,n,i){!function(t,e,r,n){var a=o.isPlainObject(n);if(!Array.isArray(t.data))throw new Error("gd.data must be an array");if(!o.isPlainObject(e))throw new Error("update must be a key:value object");if("undefined"==typeof r)throw new Error("indices must be an integer or array of integers");for(var i in z(t,r,"indices"),e){if(!Array.isArray(e[i])||e[i].length!==r.length)throw new Error("attribute "+i+" must be an array of length equal to indices array length");if(a&&(!(i in n)||!Array.isArray(n[i])||n[i].length!==e[i].length))throw new Error("when maxPoints is set as a key:value object it must contain a 1:1 corrispondence with the keys and number of traces in the update object")}}(t,e,r,n);for(var l=function(t,e,r,n){var i,l,c,u,h,f=o.isPlainObject(n),p=[];for(var d in Array.isArray(r)||(r=[r]),r=I(r,t.data.length-1),e)for(var g=0;g<r.length;g++){if(i=t.data[r[g]],l=(c=s(i,d)).get(),u=e[d][g],!o.isArrayOrTypedArray(u))throw new Error("attribute: "+d+" index: "+g+" must be an array");if(!o.isArrayOrTypedArray(l))throw new Error("cannot extend missing or non-array attribute: "+d);if(l.constructor!==u.constructor)throw new Error("cannot extend array with an array of a different type: "+d);h=f?n[d][g]:n,a(h)||(h=-1),p.push({prop:c,target:l,insert:u,maxp:Math.floor(h)})}return p}(t,e,r,n),c={},u={},h=0;h<l.length;h++){var f=l[h].prop,p=l[h].maxp,d=i(l[h].target,l[h].insert,p);f.set(d[0]),Array.isArray(c[f.astr])||(c[f.astr]=[]),c[f.astr].push(d[1]),Array.isArray(u[f.astr])||(u[f.astr]=[]),u[f.astr].push(l[h].target.length)}return{update:c,maxPoints:u}}function R(t,e){var r=new t.constructor(t.length+e.length);return r.set(t),r.set(e,t.length),r}function F(t,e,n,a){t=o.getGraphDiv(t),T.clearPromiseQueue(t);var i={};if("string"==typeof e)i[e]=n;else{if(!o.isPlainObject(e))return o.warn("Restyle fail.",e,n,a),Promise.reject();i=o.extendFlat({},e),void 0===a&&(a=n)}Object.keys(i).length&&(t.changed=!0);var s=T.coerceTraceIndices(t,a),l=V(t,i,s),u=l.flags;u.calc&&(t.calcdata=void 0),u.clearAxisTypes&&T.clearAxisTypes(t,s,{});var h=[];u.fullReplot?h.push(r.plot):(h.push(f.previousPromises),f.supplyDefaults(t),u.markerSize&&(f.doCalcdata(t),G(h)),u.style&&h.push(k.doTraceStyle),u.colorbars&&h.push(k.doColorBars),h.push(E)),h.push(f.rehover,f.redrag),c.add(t,F,[t,l.undoit,l.traces],F,[t,l.redoit,l.traces]);var p=o.syncOrAsync(h,t);return p&&p.then||(p=Promise.resolve()),p.then((function(){return t.emit("plotly_restyle",l.eventData),t}))}function B(t){return void 0===t?null:t}function N(t,e){return e?function(e,r,n){var a=s(e,r),i=a.set;return a.set=function(e){j((n||"")+r,a.get(),e,t),i(e)},a}:s}function j(t,e,r,n){if(Array.isArray(e)||Array.isArray(r))for(var a=Array.isArray(e)?e:[],i=Array.isArray(r)?r:[],s=Math.max(a.length,i.length),l=0;l<s;l++)j(t+"["+l+"]",a[l],i[l],n);else if(o.isPlainObject(e)||o.isPlainObject(r)){var c=o.isPlainObject(e)?e:{},u=o.isPlainObject(r)?r:{},h=o.extendFlat({},c,u);for(var f in h)j(t+"."+f,c[f],u[f],n)}else void 0===n[t]&&(n[t]=B(e))}function V(t,e,r){var n,a=t._fullLayout,i=t._fullData,l=t.data,c=a._guiEditing,p=N(a._preGUI,c),g=o.extendDeepAll({},e);U(e);var m,v=A.traceFlags(),y={},x={};function b(){return r.map((function(){}))}function _(t){var e=d.id2name(t);-1===m.indexOf(e)&&m.push(e)}function w(t){return"LAYOUT"+t+".autorange"}function k(t){return"LAYOUT"+t+".range"}function M(t){for(var e=t;e<i.length;e++)if(i[e]._input===l[t])return i[e]}function S(n,i,o){if(Array.isArray(n))n.forEach((function(t){S(t,i,o)}));else if(!(n in e)&&!T.hasParent(e,n)){var s;if("LAYOUT"===n.substr(0,6))s=p(t.layout,n.replace("LAYOUT",""));else{var u=r[o];s=N(a._tracePreGUI[M(u)._fullInput.uid],c)(l[u],n)}n in x||(x[n]=b()),void 0===x[n][o]&&(x[n][o]=B(s.get())),void 0!==i&&s.set(i)}}function E(t){return function(e){return i[e][t]}}function C(t){return function(e,n){return!1===e?i[r[n]][t]:null}}for(var L in e){if(T.hasParent(e,L))throw new Error("cannot set "+L+" and a parent attribute simultaneously");var P,I,z,O,D,R,F=e[L];if("autobinx"!==L&&"autobiny"!==L||(L=L.charAt(L.length-1)+"bins",F=Array.isArray(F)?F.map(C(L)):!1===F?r.map(E(L)):null),y[L]=F,"LAYOUT"!==L.substr(0,6)){for(x[L]=b(),n=0;n<r.length;n++){if(P=l[r[n]],I=M(r[n]),O=(z=N(a._tracePreGUI[I._fullInput.uid],c)(P,L)).get(),void 0!==(D=Array.isArray(F)?F[n%F.length]:F)){var j=z.parts[z.parts.length-1],V=L.substr(0,L.length-j.length-1),q=V?V+".":"",H=V?s(I,V).get():I;if((R=h.getTraceValObject(I,z.parts))&&R.impliedEdits&&null!==D)for(var G in R.impliedEdits)S(o.relativeAttr(L,G),R.impliedEdits[G],n);else if("thicknessmode"!==j&&"lenmode"!==j||O===D||"fraction"!==D&&"pixels"!==D||!H){if("type"===L&&("pie"===D!=("pie"===O)||"funnelarea"===D!=("funnelarea"===O))){var Y="x",W="y";"bar"!==D&&"bar"!==O||"h"!==P.orientation||(Y="y",W="x"),o.swapAttrs(P,["?","?src"],"labels",Y),o.swapAttrs(P,["d?","?0"],"label",Y),o.swapAttrs(P,["?","?src"],"values",W),"pie"===O||"funnelarea"===O?(s(P,"marker.color").set(s(P,"marker.colors").get()),a._pielayer.selectAll("g.trace").remove()):u.traceIs(P,"cartesian")&&s(P,"marker.colors").set(s(P,"marker.color").get())}}else{var Z=a._size,X=H.orient,J="top"===X||"bottom"===X;if("thicknessmode"===j){var K=J?Z.h:Z.w;S(q+"thickness",H.thickness*("fraction"===D?1/K:K),n)}else{var Q=J?Z.w:Z.h;S(q+"len",H.len*("fraction"===D?1/Q:Q),n)}}x[L][n]=B(O);if(-1!==["swapxy","swapxyaxes","orientation","orientationaxes"].indexOf(L)){if("orientation"===L){z.set(D);var $=P.x&&!P.y?"h":"v";if((z.get()||$)===I.orientation)continue}else"orientationaxes"===L&&(P.orientation={v:"h",h:"v"}[I.orientation]);T.swapXYData(P),v.calc=v.clearAxisTypes=!0}else-1!==f.dataArrayContainers.indexOf(z.parts[0])?(T.manageArrayContainers(z,D,x),v.calc=!0):(R?R.arrayOk&&!u.traceIs(I,"regl")&&(o.isArrayOrTypedArray(D)||o.isArrayOrTypedArray(O))?v.calc=!0:A.update(v,R):v.calc=!0,z.set(D))}}if(-1!==["swapxyaxes","orientationaxes"].indexOf(L)&&d.swap(t,r),"orientationaxes"===L){var tt=s(t.layout,"hovermode");"x"===tt.get()?tt.set("y"):"y"===tt.get()?tt.set("x"):"x unified"===tt.get()?tt.set("y unified"):"y unified"===tt.get()&&tt.set("x unified")}if(-1!==["orientation","type"].indexOf(L)){for(m=[],n=0;n<r.length;n++){var et=l[r[n]];u.traceIs(et,"cartesian")&&(_(et.xaxis||"x"),_(et.yaxis||"y"))}S(m.map(w),!0,0),S(m.map(k),[0,1],0)}}else z=p(t.layout,L.replace("LAYOUT","")),x[L]=[B(z.get())],z.set(Array.isArray(F)?F[0]:F),v.calc=!0}return(v.calc||v.plot)&&(v.fullReplot=!0),{flags:v,undoit:x,redoit:y,traces:r,eventData:o.extendDeepNoArrays([],[g,r])}}function U(t){var e,r,n,a=o.counterRegex("axis",".title",!1,!1),i=/colorbar\.title$/,s=Object.keys(t);for(e=0;e<s.length;e++)r=s[e],n=t[r],"title"!==r&&!a.test(r)&&!i.test(r)||"string"!=typeof n&&"number"!=typeof n?r.indexOf("titlefont")>-1?l(r,r.replace("titlefont","title.font")):r.indexOf("titleposition")>-1?l(r,r.replace("titleposition","title.position")):r.indexOf("titleside")>-1?l(r,r.replace("titleside","title.side")):r.indexOf("titleoffset")>-1&&l(r,r.replace("titleoffset","title.offset")):l(r,r.replace("title","title.text"));function l(e,r){t[r]=t[e],delete t[e]}}function q(t,e,r){if(t=o.getGraphDiv(t),T.clearPromiseQueue(t),t.framework&&t.framework.isPolar)return Promise.resolve(t);var n={};if("string"==typeof e)n[e]=r;else{if(!o.isPlainObject(e))return o.warn("Relayout fail.",e,r),Promise.reject();n=o.extendFlat({},e)}Object.keys(n).length&&(t.changed=!0);var a=X(t,n),i=a.flags;i.calc&&(t.calcdata=void 0);var s=[f.previousPromises];i.layoutReplot?s.push(k.layoutReplot):Object.keys(n).length&&(H(t,i,a)||f.supplyDefaults(t),i.legend&&s.push(k.doLegend),i.layoutstyle&&s.push(k.layoutStyles),i.axrange&&G(s,a.rangesAltered),i.ticks&&s.push(k.doTicksRelayout),i.modebar&&s.push(k.doModeBar),i.camera&&s.push(k.doCamera),i.colorbars&&s.push(k.doColorBars),s.push(E)),s.push(f.rehover,f.redrag),c.add(t,q,[t,a.undoit],q,[t,a.redoit]);var l=o.syncOrAsync(s,t);return l&&l.then||(l=Promise.resolve(t)),l.then((function(){return t.emit("plotly_relayout",a.eventData),t}))}function H(t,e,r){var n=t._fullLayout;if(!e.axrange)return!1;for(var a in e)if("axrange"!==a&&e[a])return!1;for(var i in r.rangesAltered){var o=d.id2name(i),s=t.layout[o],l=n[o];if(l.autorange=s.autorange,l.range=s.range.slice(),l.cleanRange(),l._matchGroup)for(var c in l._matchGroup)if(c!==i){var u=n[d.id2name(c)];u.autorange=l.autorange,u.range=l.range.slice(),u._input.range=l.range.slice()}}return!0}function G(t,e){var r=e?function(t){var r=[],n=!0;for(var a in e){var i=d.getFromId(t,a);if(r.push(a),i._matchGroup)for(var o in i._matchGroup)e[o]||r.push(o);i.automargin&&(n=!1)}return d.draw(t,r,{skipTitle:n})}:function(t){return d.draw(t,"redraw")};t.push(b,k.doAutoRangeAndConstraints,r,k.drawData,k.finalDraw)}var Y=/^[xyz]axis[0-9]*\.range(\[[0|1]\])?$/,W=/^[xyz]axis[0-9]*\.autorange$/,Z=/^[xyz]axis[0-9]*\.domain(\[[0|1]\])?$/;function X(t,e){var r,n,a,i=t.layout,l=t._fullLayout,c=l._guiEditing,f=N(l._preGUI,c),p=Object.keys(e),g=d.list(t),m=o.extendDeepAll({},e),v={};for(U(e),p=Object.keys(e),n=0;n<p.length;n++)if(0===p[n].indexOf("allaxes")){for(a=0;a<g.length;a++){var y=g[a]._id.substr(1),x=-1!==y.indexOf("scene")?y+".":"",b=p[n].replace("allaxes",x+g[a]._name);e[b]||(e[b]=e[p[n]])}delete e[p[n]]}var _=A.layoutFlags(),k={},S={};function E(t,r){if(Array.isArray(t))t.forEach((function(t){E(t,r)}));else if(!(t in e)&&!T.hasParent(e,t)){var n=f(i,t);t in S||(S[t]=B(n.get())),void 0!==r&&n.set(r)}}var C,L={};function P(t){var e=d.name2id(t.split(".")[0]);return L[e]=1,e}for(var I in e){if(T.hasParent(e,I))throw new Error("cannot set "+I+" and a parent attribute simultaneously");for(var z=f(i,I),O=e[I],D=z.parts.length-1;D>0&&"string"!=typeof z.parts[D];)D--;var R=z.parts[D],F=z.parts[D-1]+"."+R,j=z.parts.slice(0,D).join("."),V=s(t.layout,j).get(),q=s(l,j).get(),H=z.get();if(void 0!==O){k[I]=O,S[I]="reverse"===R?O:B(H);var G=h.getLayoutValObject(l,z.parts);if(G&&G.impliedEdits&&null!==O)for(var X in G.impliedEdits)E(o.relativeAttr(I,X),G.impliedEdits[X]);if(-1!==["width","height"].indexOf(I))if(O){E("autosize",null);var K="height"===I?"width":"height";E(K,l[K])}else l[I]=t._initialAutoSize[I];else if("autosize"===I)E("width",O?null:l.width),E("height",O?null:l.height);else if(F.match(Y))P(F),s(l,j+"._inputRange").set(null);else if(F.match(W)){P(F),s(l,j+"._inputRange").set(null);var Q=s(l,j).get();Q._inputDomain&&(Q._input.domain=Q._inputDomain.slice())}else F.match(Z)&&s(l,j+"._inputDomain").set(null);if("type"===R){var $=V,tt="linear"===q.type&&"log"===O,et="log"===q.type&&"linear"===O;if(tt||et){if($&&$.range)if(q.autorange)tt&&($.range=$.range[1]>$.range[0]?[1,2]:[2,1]);else{var rt=$.range[0],nt=$.range[1];tt?(rt<=0&&nt<=0&&E(j+".autorange",!0),rt<=0?rt=nt/1e6:nt<=0&&(nt=rt/1e6),E(j+".range[0]",Math.log(rt)/Math.LN10),E(j+".range[1]",Math.log(nt)/Math.LN10)):(E(j+".range[0]",Math.pow(10,rt)),E(j+".range[1]",Math.pow(10,nt)))}else E(j+".autorange",!0);Array.isArray(l._subplots.polar)&&l._subplots.polar.length&&l[z.parts[0]]&&"radialaxis"===z.parts[1]&&delete l[z.parts[0]]._subplot.viewInitial["radialaxis.range"],u.getComponentMethod("annotations","convertCoords")(t,q,O,E),u.getComponentMethod("images","convertCoords")(t,q,O,E)}else E(j+".autorange",!0),E(j+".range",null);s(l,j+"._inputRange").set(null)}else if(R.match(M)){var at=s(l,I).get(),it=(O||{}).type;it&&"-"!==it||(it="linear"),u.getComponentMethod("annotations","convertCoords")(t,at,it,E),u.getComponentMethod("images","convertCoords")(t,at,it,E)}var ot=w.containerArrayMatch(I);if(ot){r=ot.array,n=ot.index;var st=ot.property,lt=G||{editType:"calc"};""!==n&&""===st&&(w.isAddVal(O)?S[I]=null:w.isRemoveVal(O)?S[I]=(s(i,r).get()||[])[n]:o.warn("unrecognized full object value",e)),A.update(_,lt),v[r]||(v[r]={});var ct=v[r][n];ct||(ct=v[r][n]={}),ct[st]=O,delete e[I]}else"reverse"===R?(V.range?V.range.reverse():(E(j+".autorange",!0),V.range=[1,0]),q.autorange?_.calc=!0:_.plot=!0):(l._has("scatter-like")&&l._has("regl")&&"dragmode"===I&&("lasso"===O||"select"===O)&&"lasso"!==H&&"select"!==H||l._has("gl2d")?_.plot=!0:G?A.update(_,G):_.calc=!0,z.set(O))}}for(r in v){w.applyContainerArrayChanges(t,f(i,r),v[r],_,f)||(_.plot=!0)}var ut=l._axisConstraintGroups||[];for(C in L)for(n=0;n<ut.length;n++){var ht=ut[n];if(ht[C])for(var ft in _.calc=!0,ht)L[ft]||(d.getFromId(t,ft)._constraintShrinkable=!0)}return(J(t)||e.height||e.width)&&(_.plot=!0),(_.plot||_.calc)&&(_.layoutReplot=!0),{flags:_,rangesAltered:L,undoit:S,redoit:k,eventData:m}}function J(t){var e=t._fullLayout,r=e.width,n=e.height;return t.layout.autosize&&f.plotAutoSize(t,t.layout,e),e.width!==r||e.height!==n}function K(t,e,n,a){if(t=o.getGraphDiv(t),T.clearPromiseQueue(t),t.framework&&t.framework.isPolar)return Promise.resolve(t);o.isPlainObject(e)||(e={}),o.isPlainObject(n)||(n={}),Object.keys(e).length&&(t.changed=!0),Object.keys(n).length&&(t.changed=!0);var i=T.coerceTraceIndices(t,a),s=V(t,o.extendFlat({},e),i),l=s.flags,u=X(t,o.extendFlat({},n)),h=u.flags;(l.calc||h.calc)&&(t.calcdata=void 0),l.clearAxisTypes&&T.clearAxisTypes(t,i,n);var p=[];h.layoutReplot?p.push(k.layoutReplot):l.fullReplot?p.push(r.plot):(p.push(f.previousPromises),H(t,h,u)||f.supplyDefaults(t),l.style&&p.push(k.doTraceStyle),(l.colorbars||h.colorbars)&&p.push(k.doColorBars),h.legend&&p.push(k.doLegend),h.layoutstyle&&p.push(k.layoutStyles),h.axrange&&G(p,u.rangesAltered),h.ticks&&p.push(k.doTicksRelayout),h.modebar&&p.push(k.doModeBar),h.camera&&p.push(k.doCamera),p.push(E)),p.push(f.rehover,f.redrag),c.add(t,K,[t,s.undoit,u.undoit,s.traces],K,[t,s.redoit,u.redoit,s.traces]);var d=o.syncOrAsync(p,t);return d&&d.then||(d=Promise.resolve(t)),d.then((function(){return t.emit("plotly_update",{data:s.eventData,layout:u.eventData}),t}))}function Q(t){return function(e){e._fullLayout._guiEditing=!0;var r=t.apply(null,arguments);return e._fullLayout._guiEditing=!1,r}}var $=[{pattern:/^hiddenlabels/,attr:"legend.uirevision"},{pattern:/^((x|y)axis\d*)\.((auto)?range|title\.text)/},{pattern:/axis\d*\.showspikes$/,attr:"modebar.uirevision"},{pattern:/(hover|drag)mode$/,attr:"modebar.uirevision"},{pattern:/^(scene\d*)\.camera/},{pattern:/^(geo\d*)\.(projection|center|fitbounds)/},{pattern:/^(ternary\d*\.[abc]axis)\.(min|title\.text)$/},{pattern:/^(polar\d*\.radialaxis)\.((auto)?range|angle|title\.text)/},{pattern:/^(polar\d*\.angularaxis)\.rotation/},{pattern:/^(mapbox\d*)\.(center|zoom|bearing|pitch)/},{pattern:/^legend\.(x|y)$/,attr:"editrevision"},{pattern:/^(shapes|annotations)/,attr:"editrevision"},{pattern:/^title\.text$/,attr:"editrevision"}],tt=[{pattern:/^selectedpoints$/,attr:"selectionrevision"},{pattern:/(^|value\.)visible$/,attr:"legend.uirevision"},{pattern:/^dimensions\[\d+\]\.constraintrange/},{pattern:/^node\.(x|y|groups)/},{pattern:/^level$/},{pattern:/(^|value\.)name$/},{pattern:/colorbar\.title\.text$/},{pattern:/colorbar\.(x|y)$/,attr:"editrevision"}];function et(t,e){for(var r=0;r<e.length;r++){var n=e[r],a=t.match(n.pattern);if(a)return{head:a[1],attr:n.attr}}}function rt(t,e){var r=s(e,t).get();if(void 0!==r)return r;var n=t.split(".");for(n.pop();n.length>1;)if(n.pop(),void 0!==(r=s(e,n.join(".")+".uirevision").get()))return r;return e.uirevision}function nt(t,e){for(var r=0;r<e.length;r++)if(e[r]._fullInput.uid===t)return r;return-1}function at(t,e,r){for(var n=0;n<e.length;n++)if(e[n].uid===t)return n;return!e[r]||e[r].uid?-1:r}function it(t,e){var r=o.isPlainObject(t),n=Array.isArray(t);return r||n?(r&&o.isPlainObject(e)||n&&Array.isArray(e))&&JSON.stringify(t)===JSON.stringify(e):t===e}function ot(t,e,r,n){var a,i,l,c=n.getValObject,u=n.flags,h=n.immutable,f=n.inArray,p=n.arrayIndex;function d(){var t=a.editType;f&&-1!==t.indexOf("arraydraw")?o.pushUnique(u.arrays[f],p):(A.update(u,a),"none"!==t&&u.nChanges++,n.transition&&a.anim&&u.nChangesAnim++,(Y.test(l)||W.test(l))&&(u.rangesAltered[r[0]]=1),Z.test(l)&&s(e,"_inputDomain").set(null),"datarevision"===i&&(u.newDataRevision=1))}function g(t){return"data_array"===t.valType||t.arrayOk}for(i in t){if(u.calc&&!n.transition)return;var m=t[i],v=e[i],y=r.concat(i);if(l=y.join("."),"_"!==i.charAt(0)&&"function"!=typeof m&&m!==v){if(("tick0"===i||"dtick"===i)&&"geo"!==r[0]){var x=e.tickmode;if("auto"===x||"array"===x||!x)continue}if(("range"!==i||!e.autorange)&&("zmin"!==i&&"zmax"!==i||"contourcarpet"!==e.type)&&(a=c(y))&&(!a._compareAsJSON||JSON.stringify(m)!==JSON.stringify(v))){var b,_=a.valType,w=g(a),T=Array.isArray(m),k=Array.isArray(v);if(T&&k){var M="_input_"+i,S=t[M],E=e[M];if(Array.isArray(S)&&S===E)continue}if(void 0===v)w&&T?u.calc=!0:d();else if(a._isLinkedToArray){var C=[],L=!1;f||(u.arrays[i]=C);var P=Math.min(m.length,v.length),I=Math.max(m.length,v.length);if(P!==I){if("arraydraw"!==a.editType){d();continue}L=!0}for(b=0;b<P;b++)ot(m[b],v[b],y.concat(b),o.extendFlat({inArray:i,arrayIndex:b},n));if(L)for(b=P;b<I;b++)C.push(b)}else!_&&o.isPlainObject(m)?ot(m,v,y,n):w?T&&k?(h&&(u.calc=!0),(h||n.newDataRevision)&&d()):T!==k?u.calc=!0:d():T&&k&&m.length===v.length&&String(m)===String(v)||d()}}}for(i in e)if(!(i in t)&&"_"!==i.charAt(0)&&"function"!=typeof e[i]){if(g(a=c(r.concat(i)))&&Array.isArray(e[i]))return void(u.calc=!0);d()}}function st(t){var e=n.select(t),r=t._fullLayout;if(r._container=e.selectAll(".plot-container").data([0]),r._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0),r._paperdiv=r._container.selectAll(".svg-container").data([0]),r._paperdiv.enter().append("div").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"),r._hoverpaper=r._paperdiv.append("svg").classed("main-svg",!0),!r._uid){var a={};n.selectAll("defs").each((function(){this.id&&(a[this.id.split("-")[1]]=1)})),r._uid=o.randstr(a)}r._paperdiv.selectAll(".main-svg").attr(y.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._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._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._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"),t.emit("plotly_framework")}r.animate=function(t,e,r){if(t=o.getGraphDiv(t),!o.isPlotDiv(t))throw new Error("This element is not a Plotly plot: "+t+". It's likely that you've failed to create a plot before animating it. For more details, see https://plotly.com/javascript/animations/");var n=t._transitionData;n._frameQueue||(n._frameQueue=[]);var a=(r=f.supplyAnimationDefaults(r)).transition,i=r.frame;function s(t){return Array.isArray(a)?t>=a.length?a[0]:a[t]:a}function l(t){return Array.isArray(i)?t>=i.length?i[0]:i[t]:i}function c(t,e){var r=0;return function(){if(t&&++r===e)return t()}}return void 0===n._frameWaitingCnt&&(n._frameWaitingCnt=0),new Promise((function(i,u){function h(){n._currentFrame&&n._currentFrame.onComplete&&n._currentFrame.onComplete();var e=n._currentFrame=n._frameQueue.shift();if(e){var r=e.name?e.name.toString():null;t._fullLayout._currentFrame=r,n._lastFrameAt=Date.now(),n._timeToNext=e.frameOpts.duration,f.transition(t,e.frame.data,e.frame.layout,T.coerceTraceIndices(t,e.frame.traces),e.frameOpts,e.transitionOpts).then((function(){e.onComplete&&e.onComplete()})),t.emit("plotly_animatingframe",{name:r,frame:e.frame,animation:{frame:e.frameOpts,transition:e.transitionOpts}})}else t.emit("plotly_animated"),window.cancelAnimationFrame(n._animationRaf),n._animationRaf=null}function p(){t.emit("plotly_animating"),n._lastFrameAt=-1/0,n._timeToNext=0,n._runningTransitions=0,n._currentFrame=null;var e=function(){n._animationRaf=window.requestAnimationFrame(e),Date.now()-n._lastFrameAt>n._timeToNext&&h()};e()}var d,g,m=0;function v(t){return Array.isArray(a)?m>=a.length?t.transitionOpts=a[m]:t.transitionOpts=a[0]:t.transitionOpts=a,m++,t}var y=[],x=null==e,b=Array.isArray(e);if(!x&&!b&&o.isPlainObject(e))y.push({type:"object",data:v(o.extendFlat({},e))});else if(x||-1!==["string","number"].indexOf(typeof e))for(d=0;d<n._frames.length;d++)(g=n._frames[d])&&(x||String(g.group)===String(e))&&y.push({type:"byname",name:String(g.name),data:v({name:g.name})});else if(b)for(d=0;d<e.length;d++){var _=e[d];-1!==["number","string"].indexOf(typeof _)?(_=String(_),y.push({type:"byname",name:_,data:v({name:_})})):o.isPlainObject(_)&&y.push({type:"object",data:v(o.extendFlat({},_))})}for(d=0;d<y.length;d++)if("byname"===(g=y[d]).type&&!n._frameHash[g.data.name])return o.warn('animate failure: frame not found: "'+g.data.name+'"'),void u();-1!==["next","immediate"].indexOf(r.mode)&&function(){if(0!==n._frameQueue.length){for(;n._frameQueue.length;){var e=n._frameQueue.pop();e.onInterrupt&&e.onInterrupt()}t.emit("plotly_animationinterrupted",[])}}(),"reverse"===r.direction&&y.reverse();var w=t._fullLayout._currentFrame;if(w&&r.fromcurrent){var k=-1;for(d=0;d<y.length;d++)if("byname"===(g=y[d]).type&&g.name===w){k=d;break}if(k>0&&k<y.length-1){var A=[];for(d=0;d<y.length;d++)g=y[d],("byname"!==y[d].type||d>k)&&A.push(g);y=A}}y.length>0?function(e){if(0!==e.length){for(var a=0;a<e.length;a++){var o;o="byname"===e[a].type?f.computeFrame(t,e[a].name):e[a].data;var h=l(a),d=s(a);d.duration=Math.min(d.duration,h.duration);var g={frame:o,name:e[a].name,frameOpts:h,transitionOpts:d};a===e.length-1&&(g.onComplete=c(i,2),g.onInterrupt=u),n._frameQueue.push(g)}"immediate"===r.mode&&(n._lastFrameAt=-1/0),n._animationRaf||p()}}(y):(t.emit("plotly_animated"),i())}))},r.addFrames=function(t,e,r){if(t=o.getGraphDiv(t),null==e)return Promise.resolve();if(!o.isPlotDiv(t))throw new Error("This element is not a Plotly plot: "+t+". 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,s,l=t._transitionData._frames,u=t._transitionData._frameHash;if(!Array.isArray(e))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+e);var h=l.length+2*e.length,p=[],d={};for(n=e.length-1;n>=0;n--)if(o.isPlainObject(e[n])){var g=e[n].name,m=(u[g]||d[g]||{}).name,v=e[n].name,y=u[m]||d[m];m&&v&&"number"==typeof v&&y&&S<5&&(S++,o.warn('addFrames: overwriting frame "'+(u[m]||d[m]).name+'" with a frame whose name of type "number" also equates to "'+m+'". This is valid but may potentially lead to unexpected behavior since all plotly.js frame names are stored internally as strings.'),5===S&&o.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.")),d[g]={name:g},p.push({frame:f.supplyFrameDefaults(e[n]),index:r&&void 0!==r[n]&&null!==r[n]?r[n]:h+n})}p.sort((function(t,e){return t.index>e.index?-1:t.index<e.index?1:0}));var x=[],b=[],_=l.length;for(n=p.length-1;n>=0;n--){if("number"==typeof(a=p[n].frame).name&&o.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!a.name)for(;u[a.name="frame "+t._transitionData._counter++];);if(u[a.name]){for(i=0;i<l.length&&(l[i]||{}).name!==a.name;i++);x.push({type:"replace",index:i,value:a}),b.unshift({type:"replace",index:i,value:l[i]})}else s=Math.max(0,Math.min(p[n].index,_)),x.push({type:"insert",index:s,value:a}),b.unshift({type:"delete",index:s}),_++}var w=f.modifyFrames,T=f.modifyFrames,k=[t,b],A=[t,x];return c&&c.add(t,w,k,T,A),f.modifyFrames(t,x)},r.deleteFrames=function(t,e){if(t=o.getGraphDiv(t),!o.isPlotDiv(t))throw new Error("This element is not a Plotly plot: "+t);var r,n,a=t._transitionData._frames,i=[],s=[];if(!e)for(e=[],r=0;r<a.length;r++)e.push(r);for((e=e.slice()).sort(),r=e.length-1;r>=0;r--)n=e[r],i.push({type:"delete",index:n}),s.unshift({type:"insert",index:n,value:a[n]});var l=f.modifyFrames,u=f.modifyFrames,h=[t,s],p=[t,i];return c&&c.add(t,l,h,u,p),f.modifyFrames(t,i)},r.addTraces=function t(e,n,a){e=o.getGraphDiv(e);var i,s,l=[],u=r.deleteTraces,h=t,f=[e,l],p=[e,n];for(function(t,e,r){var n,a;if(!Array.isArray(t.data))throw new Error("gd.data must be an array.");if("undefined"==typeof e)throw new Error("traces must be defined.");for(Array.isArray(e)||(e=[e]),n=0;n<e.length;n++)if("object"!=typeof(a=e[n])||Array.isArray(a)||null===a)throw new Error("all values in traces array must be non-array objects");if("undefined"==typeof r||Array.isArray(r)||(r=[r]),"undefined"!=typeof r&&r.length!==e.length)throw new Error("if indices is specified, traces.length must equal indices.length")}(e,n,a),Array.isArray(n)||(n=[n]),n=n.map((function(t){return o.extendFlat({},t)})),T.cleanData(n),i=0;i<n.length;i++)e.data.push(n[i]);for(i=0;i<n.length;i++)l.push(-n.length+i);if("undefined"==typeof a)return s=r.redraw(e),c.add(e,u,f,h,p),s;Array.isArray(a)||(a=[a]);try{O(e,l,a)}catch(t){throw e.data.splice(e.data.length-n.length,n.length),t}return c.startSequence(e),c.add(e,u,f,h,p),s=r.moveTraces(e,l,a),c.stopSequence(e),s},r.deleteTraces=function t(e,n){e=o.getGraphDiv(e);var a,i,s=[],l=r.addTraces,u=t,h=[e,s,n],f=[e,n];if("undefined"==typeof n)throw new Error("indices must be an integer or array of integers.");for(Array.isArray(n)||(n=[n]),z(e,n,"indices"),(n=I(n,e.data.length-1)).sort(o.sorterDes),a=0;a<n.length;a+=1)i=e.data.splice(n[a],1)[0],s.push(i);var p=r.redraw(e);return c.add(e,l,h,u,f),p},r.extendTraces=function t(e,n,a,i){function s(t,e,r){var n,a;if(o.isTypedArray(t))if(r<0){var i=new t.constructor(0),s=R(t,e);r<0?(n=s,a=i):(n=i,a=s)}else if(n=new t.constructor(r),a=new t.constructor(t.length+e.length-r),r===e.length)n.set(e),a.set(t);else if(r<e.length){var l=e.length-r;n.set(e.subarray(l)),a.set(t),a.set(e.subarray(0,l),t.length)}else{var c=r-e.length,u=t.length-c;n.set(t.subarray(u)),n.set(e,c),a.set(t.subarray(0,u))}else n=t.concat(e),a=r>=0&&r<n.length?n.splice(0,n.length-r):[];return[n,a]}var l=D(e=o.getGraphDiv(e),n,a,i,s),u=r.redraw(e),h=[e,l.update,a,l.maxPoints];return c.add(e,r.prependTraces,h,t,arguments),u},r.moveTraces=function t(e,n,a){var i,s=[],l=[],u=t,h=t,f=[e=o.getGraphDiv(e),a,n],p=[e,n,a];if(O(e,n,a),n=Array.isArray(n)?n:[n],"undefined"==typeof a)for(a=[],i=0;i<n.length;i++)a.push(-n.length+i);for(a=Array.isArray(a)?a:[a],n=I(n,e.data.length-1),a=I(a,e.data.length-1),i=0;i<e.data.length;i++)-1===n.indexOf(i)&&s.push(e.data[i]);for(i=0;i<n.length;i++)l.push({newIndex:a[i],trace:e.data[n[i]]});for(l.sort((function(t,e){return t.newIndex-e.newIndex})),i=0;i<l.length;i+=1)s.splice(l[i].newIndex,0,l[i].trace);e.data=s;var d=r.redraw(e);return c.add(e,u,f,h,p),d},r.prependTraces=function t(e,n,a,i){function s(t,e,r){var n,a;if(o.isTypedArray(t))if(r<=0){var i=new t.constructor(0),s=R(e,t);r<0?(n=s,a=i):(n=i,a=s)}else if(n=new t.constructor(r),a=new t.constructor(t.length+e.length-r),r===e.length)n.set(e),a.set(t);else if(r<e.length){var l=e.length-r;n.set(e.subarray(0,l)),a.set(e.subarray(l)),a.set(t,l)}else{var c=r-e.length;n.set(e),n.set(t.subarray(0,c),e.length),a.set(t.subarray(c))}else n=e.concat(t),a=r>=0&&r<n.length?n.splice(r,n.length):[];return[n,a]}var l=D(e=o.getGraphDiv(e),n,a,i,s),u=r.redraw(e),h=[e,l.update,a,l.maxPoints];return c.add(e,r.extendTraces,h,t,arguments),u},r.newPlot=function(t,e,n,a){return t=o.getGraphDiv(t),f.cleanPlot([],{},t._fullData||[],t._fullLayout||{}),f.purge(t),r.plot(t,e,n,a)},r.plot=function(t,e,a,i){var s;if(t=o.getGraphDiv(t),l.init(t),o.isPlainObject(e)){var c=e;e=c.data,a=c.layout,i=c.config,s=c.frames}if(!1===l.triggerHandler(t,"plotly_beforeplot",[e,a,i]))return Promise.reject();e||a||o.isPlotDiv(t)||o.warn("Calling Plotly.plot as if redrawing but this container doesn't yet have a plot.",t),P(t,i),a||(a={}),n.select(t).classed("js-plotly-plot",!0),g.makeTester(),Array.isArray(t._promises)||(t._promises=[]);var h=0===(t.data||[]).length&&Array.isArray(e);Array.isArray(e)&&(T.cleanData(e),h?t.data=e:t.data.push.apply(t.data,e),t.empty=!1),t.layout&&!h||(t.layout=T.cleanLayout(a)),f.supplyDefaults(t);var m=t._fullLayout,y=m._has("cartesian");if(!m._has("polar")&&e&&e[0]&&e[0].r)return o.log("Legacy polar charts are deprecated!"),function(t,e,r){var a=n.select(t).selectAll(".plot-container").data([0]);a.enter().insert("div",":first-child").classed("plot-container plotly",!0);var i=a.selectAll(".svg-container").data([0]);i.enter().append("div").classed("svg-container",!0).style("position","relative"),i.html(""),e&&(t.data=e);r&&(t.layout=r);p.manager.fillLayout(t),i.style({width:t._fullLayout.width+"px",height:t._fullLayout.height+"px"}),t.framework=p.manager.framework(t),t.framework({data:t.data,layout:t.layout},i.node()),t.framework.setUndoPoint();var s=t.framework.svg(),l=1,c=t._fullLayout.title?t._fullLayout.title.text:"";""!==c&&c||(l=0);var u=function(){this.call(x.convertToTspans,t)},h=s.select(".title-group text").call(u);if(t._context.edits.titleText){var d=o._(t,"Click to enter Plot title");c&&c!==d||(l=.2,h.attr({"data-unformatted":d}).text(d).style({opacity:l}).on("mouseover.opacity",(function(){n.select(this).transition().duration(100).style("opacity",1)})).on("mouseout.opacity",(function(){n.select(this).transition().duration(1e3).style("opacity",0)})));var g=function(){this.call(x.makeEditable,{gd:t}).on("edit",(function(e){t.framework({layout:{title:{text:e}}}),this.text(e).call(u),this.call(g)})).on("cancel",(function(){var t=this.attr("data-unformatted");this.text(t).call(u)}))};h.call(g)}return t._context.setBackground(t,t._fullLayout.paper_bgcolor),f.addLinks(t),Promise.resolve()}(t,e,a);m._replotting=!0,(h||m._shouldCreateBgLayer)&&(st(t),m._shouldCreateBgLayer&&delete m._shouldCreateBgLayer),t.framework!==st&&(t.framework=st,st(t)),g.initGradients(t),h&&d.saveShowSpikeInitial(t);var b=!t.calcdata||t.calcdata.length!==(t._fullData||[]).length;b&&f.doCalcdata(t);for(var _=0;_<t.calcdata.length;_++)t.calcdata[_][0].trace=t._fullData[_];t._context.responsive?t._responsiveChartHandler||(t._responsiveChartHandler=function(){o.isHidden(t)||f.resize(t)},window.addEventListener("resize",t._responsiveChartHandler)):o.clearResponsive(t);var w=o.extendFlat({},m._size),A=0;function M(){if(f.clearAutoMarginIds(t),k.drawMarginPushers(t),d.allowAutoMargin(t),m._has("pie"))for(var e=t._fullData,r=0;r<e.length;r++){var n=e[r];"pie"===n.type&&n.automargin&&f.allowAutoMargin(t,"pie."+n.uid+".automargin")}return f.doAutoMargin(t),f.previousPromises(t)}function S(){t._transitioning||(k.doAutoRangeAndConstraints(t),h&&d.saveRangeInitial(t),u.getComponentMethod("rangeslider","calcAutorange")(t))}var C=[f.previousPromises,function(){if(s)return r.addFrames(t,s)},function e(){for(var r=m._basePlotModules,n=0;n<r.length;n++)r[n].drawFramework&&r[n].drawFramework(t);if(!m._glcanvas&&m._has("gl")&&(m._glcanvas=m._glcontainer.selectAll(".gl-canvas").data([{key:"contextLayer",context:!0,pick:!1},{key:"focusLayer",context:!1,pick:!1},{key:"pickLayer",context:!1,pick:!0}],(function(t){return t.key})),m._glcanvas.enter().append("canvas").attr("class",(function(t){return"gl-canvas gl-canvas-"+t.key.replace("Layer","")})).style({position:"absolute",top:0,left:0,overflow:"visible","pointer-events":"none"})),m._glcanvas){m._glcanvas.attr("width",m.width).attr("height",m.height);var a=m._glcanvas.data()[0].regl;if(a&&(Math.floor(m.width)!==a._gl.drawingBufferWidth||Math.floor(m.height)!==a._gl.drawingBufferHeight)){var i="WebGL context buffer and canvas dimensions do not match due to browser/WebGL bug.";if(!A)return o.log(i+" Clearing graph and plotting again."),f.cleanPlot([],{},t._fullData,m),f.supplyDefaults(t),m=t._fullLayout,f.doCalcdata(t),A++,e();o.error(i)}}return"h"===m.modebar.orientation?m._modebardiv.style("height",null).style("width","100%"):m._modebardiv.style("width",null).style("height",m.height+"px"),f.previousPromises(t)},M,function(){if(f.didMarginChange(w,m._size))return o.syncOrAsync([M,k.layoutStyles],t)}];y&&C.push((function(){if(b)return o.syncOrAsync([u.getComponentMethod("shapes","calcAutorange"),u.getComponentMethod("annotations","calcAutorange"),S],t);S()})),C.push(k.layoutStyles),y&&C.push((function(){return d.draw(t,h?"":"redraw")})),C.push(k.drawData,k.finalDraw,v,f.addLinks,f.rehover,f.redrag,f.doAutoMargin,f.previousPromises);var L=o.syncOrAsync(C,t);return L&&L.then||(L=Promise.resolve()),L.then((function(){return E(t),t}))},r.purge=function(t){var e=(t=o.getGraphDiv(t))._fullLayout||{},r=t._fullData||[];return f.cleanPlot([],{},r,e),f.purge(t),l.purge(t),e._container&&e._container.remove(),delete t._context,t},r.react=function(t,e,n,a){var i,l;t=o.getGraphDiv(t),T.clearPromiseQueue(t);var c=t._fullData,p=t._fullLayout;if(o.isPlotDiv(t)&&c&&p){if(o.isPlainObject(e)){var d=e;e=d.data,n=d.layout,a=d.config,i=d.frames}var g=!1;if(a){var m=o.extendDeep({},t._context);t._context=void 0,P(t,a),g=function t(e,r){var n;for(n in e)if("_"!==n.charAt(0)){var a=e[n],i=r[n];if(a!==i)if(o.isPlainObject(a)&&o.isPlainObject(i)){if(t(a,i))return!0}else{if(!Array.isArray(a)||!Array.isArray(i))return!0;if(a.length!==i.length)return!0;for(var s=0;s<a.length;s++)if(a[s]!==i[s]){if(!o.isPlainObject(a[s])||!o.isPlainObject(i[s]))return!0;if(t(a[s],i[s]))return!0}}}}(m,t._context)}t.data=e||[],T.cleanData(t.data),t.layout=n||{},T.cleanLayout(t.layout),function(t,e,r,n){var a,i,l,c,u,h,f,p,d=n._preGUI,g=[],m={};for(a in d){if(u=et(a,$)){if(i=u.attr||u.head+".uirevision",(c=(l=s(n,i).get())&&rt(i,e))&&c===l&&(null===(h=d[a])&&(h=void 0),it(p=(f=s(e,a)).get(),h))){void 0===p&&"autorange"===a.substr(a.length-9)&&g.push(a.substr(0,a.length-10)),f.set(B(s(n,a).get()));continue}}else o.warn("unrecognized GUI edit: "+a);delete d[a],"range["===a.substr(a.length-8,6)&&(m[a.substr(0,a.length-9)]=1)}for(var v=0;v<g.length;v++){var y=g[v];if(m[y]){var x=s(e,y).get();x&&delete x.autorange}}var b=n._tracePreGUI;for(var _ in b){var w,T=b[_],k=null;for(a in T){if(!k){var A=nt(_,r);if(A<0){delete b[_];break}var M=at(_,t,(w=r[A]._fullInput).index);if(M<0){delete b[_];break}k=t[M]}if(u=et(a,tt)){if(u.attr?c=(l=s(n,u.attr).get())&&rt(u.attr,e):(l=w.uirevision,void 0===(c=k.uirevision)&&(c=e.uirevision)),c&&c===l&&(null===(h=T[a])&&(h=void 0),it(p=(f=s(k,a)).get(),h))){f.set(B(s(w,a).get()));continue}}else o.warn("unrecognized GUI edit: "+a+" in trace uid "+_);delete T[a]}}}(t.data,t.layout,c,p);for(var v=Object.getOwnPropertyNames(p),y=0;y<v.length;y++){var x=v[y],b=x.substring(0,5);if("xaxis"===b||"yaxis"===b){var _=p[x]._emptyCategories;_&&_()}}f.supplyDefaults(t,{skipUpdateCalc:!0});var w=t._fullData,M=t._fullLayout,S=void 0===M.datarevision,C=M.transition,L=function(t,e,r,n,a){var i=A.layoutFlags();function o(t){return h.getLayoutValObject(r,t)}i.arrays={},i.rangesAltered={},i.nChanges=0,i.nChangesAnim=0,ot(e,r,[],{getValObject:o,flags:i,immutable:n,transition:a,gd:t}),(i.plot||i.calc)&&(i.layoutReplot=!0);a&&i.nChanges&&i.nChangesAnim&&(i.anim=i.nChanges===i.nChangesAnim?"all":"some");return i}(t,p,M,S,C),I=L.newDataRevision,z=function(t,e,r,n,a,i){var o=e.length===r.length;if(!a&&!o)return{fullReplot:!0,calc:!0};var s,l,c=A.traceFlags();c.arrays={},c.nChanges=0,c.nChangesAnim=0;var u={getValObject:function(t){var e=h.getTraceValObject(l,t);return!l._module.animatable&&e.anim&&(e.anim=!1),e},flags:c,immutable:n,transition:a,newDataRevision:i,gd:t},p={};for(s=0;s<e.length;s++)if(r[s]){if(l=r[s]._fullInput,f.hasMakesDataTransform(l)&&(l=r[s]),p[l.uid])continue;p[l.uid]=1,ot(e[s]._fullInput,l,[],u)}(c.calc||c.plot)&&(c.fullReplot=!0);a&&c.nChanges&&c.nChangesAnim&&(c.anim=c.nChanges===c.nChangesAnim&&o?"all":"some");return c}(t,c,w,S,C,I);J(t)&&(L.layoutReplot=!0),z.calc||L.calc?t.calcdata=void 0:f.supplyDefaultsUpdateCalc(t.calcdata,w);var O=[];if(i&&(t._transitionData={},f.createTransitionData(t),O.push((function(){return r.addFrames(t,i)}))),M.transition&&!g&&(z.anim||L.anim))f.doCalcdata(t),k.doAutoRangeAndConstraints(t),O.push((function(){return f.transitionFromReact(t,z,L,p)}));else if(z.fullReplot||L.layoutReplot||g)t._fullLayout._skipDefaults=!0,O.push(r.plot);else{for(var D in L.arrays){var R=L.arrays[D];if(R.length){var F=u.getComponentMethod(D,"drawOne");if(F!==o.noop)for(var N=0;N<R.length;N++)F(t,R[N]);else{var j=u.getComponentMethod(D,"draw");if(j===o.noop)throw new Error("cannot draw components: "+D);j(t)}}}O.push(f.previousPromises),z.style&&O.push(k.doTraceStyle),(z.colorbars||L.colorbars)&&O.push(k.doColorBars),L.legend&&O.push(k.doLegend),L.layoutstyle&&O.push(k.layoutStyles),L.axrange&&G(O),L.ticks&&O.push(k.doTicksRelayout),L.modebar&&O.push(k.doModeBar),L.camera&&O.push(k.doCamera),O.push(E)}O.push(f.rehover,f.redrag),(l=o.syncOrAsync(O,t))&&l.then||(l=Promise.resolve(t))}else l=r.newPlot(t,e,n,a);return l.then((function(){return t.emit("plotly_react",{data:e,layout:n}),t}))},r.redraw=function(t){if(t=o.getGraphDiv(t),!o.isPlotDiv(t))throw new Error("This element is not a Plotly plot: "+t);return T.cleanData(t.data),T.cleanLayout(t.layout),t.calcdata=void 0,r.plot(t).then((function(){return t.emit("plotly_redraw"),t}))},r.relayout=q,r.restyle=F,r.setPlotConfig=function(t){return o.extendFlat(_,t)},r.update=K,r._guiRelayout=Q(q),r._guiRestyle=Q(F),r._guiUpdate=Q(K),r._storeDirectGUIEdit=function(t,e,r){for(var n in r){j(n,s(t,n).get(),r[n],e)}}},{"../components/color":595,"../components/drawing":617,"../constants/xmlns_namespaces":705,"../lib":728,"../lib/events":718,"../lib/queue":743,"../lib/svg_text_utils":752,"../plots/cartesian/axes":776,"../plots/cartesian/constants":782,"../plots/cartesian/graph_interact":785,"../plots/cartesian/select":795,"../plots/plots":839,"../plots/polar/legacy":847,"../registry":859,"./edit_types":759,"./helpers":760,"./manage_arrays":762,"./plot_config":764,"./plot_schema":765,"./subroutines":767,d3:164,"fast-isnumeric":236,"has-hover":409}],764:[function(t,e,r){"use strict";var n={staticPlot:{valType:"boolean",dflt:!1},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}},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"],extras:[!0,!1],dflt:"gl3d+geo+mapbox"},doubleClick:{valType:"enumerated",values:[!1,"reset","autosize","reset+autosize"],dflt:"reset+autosize"},doubleClickDelay:{valType:"number",dflt:300,min:0},showAxisDragHandles:{valType:"boolean",dflt:!0},showAxisRangeEntryBoxes:{valType:"boolean",dflt:!0},showTips:{valType:"boolean",dflt:!0},showLink:{valType:"boolean",dflt:!1},linkText:{valType:"string",dflt:"Edit chart",noBlank:!0},sendData:{valType:"boolean",dflt:!0},showSources:{valType:"any",dflt:!1},displayModeBar:{valType:"enumerated",values:["hover",!0,!1],dflt:"hover"},showSendToCloud:{valType:"boolean",dflt:!1},showEditInChartStudio:{valType:"boolean",dflt:!1},modeBarButtonsToRemove:{valType:"any",dflt:[]},modeBarButtonsToAdd:{valType:"any",dflt:[]},modeBarButtons:{valType:"any",dflt:!1},toImageButtonOptions:{valType:"any",dflt:{}},displaylogo:{valType:"boolean",dflt:!0},watermark:{valType:"boolean",dflt:!1},plotGlPixelRatio:{valType:"number",dflt:2,min:1,max:4},setBackground:{valType:"any",dflt:"transparent"},topojsonURL:{valType:"string",noBlank:!0,dflt:"https://cdn.plot.ly/"},mapboxAccessToken:{valType:"string",dflt:null},logging:{valType:"integer",min:0,max:2,dflt:1},notifyOnLogging:{valType:"integer",min:0,max:2,dflt:0},queueLength:{valType:"integer",min:0,dflt:0},globalTransforms:{valType:"any",dflt:[]},locale:{valType:"string",dflt:"en-US"},locales:{valType:"any",dflt:{}}},a={};!function t(e,r){for(var n in e){var a=e[n];a.valType?r[n]=a.dflt:(r[n]||(r[n]={}),t(a,r[n]))}}(n,a),e.exports={configAttributes:n,dfltConfig:a}},{}],765:[function(t,e,r){"use strict";var n=t("../registry"),a=t("../lib"),i=t("../plots/attributes"),o=t("../plots/layout_attributes"),s=t("../plots/frame_attributes"),l=t("../plots/animation_attributes"),c=t("./plot_config").configAttributes,u=t("../plots/polar/legacy/area_attributes"),h=t("../plots/polar/legacy/axis_attributes"),f=t("./edit_types"),p=a.extendFlat,d=a.extendDeepAll,g=a.isPlainObject,m=a.isArrayOrTypedArray,v=a.nestedProperty,y=a.valObjectMeta,x=["_isSubplotObj","_isLinkedToArray","_arrayAttrRegexps","_deprecated"];function b(t,e,r){if(!t)return!1;if(t._isLinkedToArray)if(_(e[r]))r++;else if(r<e.length)return!1;for(;r<e.length;r++){var n=t[e[r]];if(!g(n))break;if(t=n,r===e.length-1)break;if(t._isLinkedToArray){if(!_(e[++r]))return!1}else if("info_array"===t.valType){var a=e[++r];if(!_(a))return!1;var i=t.items;if(Array.isArray(i)){if(a>=i.length)return!1;if(2===t.dimensions){if(r++,e.length===r)return t;var o=e[r];if(!_(o))return!1;t=i[a][o]}else t=i[a]}else t=i}}return t}function _(t){return t===Math.round(t)&&t>=0}function w(){var t,e,r={};for(t in d(r,o),n.subplotsRegistry){if((e=n.subplotsRegistry[t]).layoutAttributes)if(Array.isArray(e.attr))for(var a=0;a<e.attr.length;a++)A(r,e,e.attr[a]);else A(r,e,"subplot"===e.attr?e.name:e.attr)}for(t in r=function(t){return p(t,{radialaxis:h.radialaxis,angularaxis:h.angularaxis}),p(t,h.layout),t}(r),n.componentsRegistry){var i=(e=n.componentsRegistry[t]).schema;if(i&&(i.subplots||i.layout)){var s=i.subplots;if(s&&s.xaxis&&!s.yaxis)for(var l in s.xaxis)delete r.yaxis[l]}else"colorscale"===e.name?d(r,e.layoutAttributes):e.layoutAttributes&&M(r,e.layoutAttributes,e.name)}return{layoutAttributes:k(r)}}function T(){var t={frames:d({},s)};return k(t),t.frames}function k(t){return function(t){r.crawl(t,(function(t,e,n){r.isValObject(t)?"data_array"===t.valType?(t.role="data",n[e+"src"]={valType:"string",editType:"none"}):!0===t.arrayOk&&(n[e+"src"]={valType:"string",editType:"none"}):g(t)&&(t.role="object")}))}(t),function(t){r.crawl(t,(function(t,e,r){if(t){var n=t._isLinkedToArray;n&&(delete t._isLinkedToArray,r[e]={items:{}},r[e].items[n]=t,r[e].role="object")}}))}(t),function(t){!function t(e){for(var r in e)if(g(e[r]))t(e[r]);else if(Array.isArray(e[r]))for(var n=0;n<e[r].length;n++)t(e[r][n]);else e[r]instanceof RegExp&&(e[r]=e[r].toString())}(t)}(t),t}function A(t,e,r){var n=v(t,r),a=d({},e.layoutAttributes);a._isSubplotObj=!0,n.set(a)}function M(t,e,r){var n=v(t,r);n.set(d(n.get()||{},e))}r.IS_SUBPLOT_OBJ="_isSubplotObj",r.IS_LINKED_TO_ARRAY="_isLinkedToArray",r.DEPRECATED="_deprecated",r.UNDERSCORE_ATTRS=x,r.get=function(){var t={};n.allTypes.concat("area").forEach((function(e){t[e]=function(t){var e,a;"area"===t?(e={attributes:u},a={}):(e=n.modules[t]._module,a=e.basePlotModule);var o={type:null},s=d({},i),l=d({},e.attributes);r.crawl(l,(function(t,e,r,n,a){v(s,a).set(void 0),void 0===t&&v(l,a).set(void 0)})),d(o,s),n.traceIs(t,"noOpacity")&&delete o.opacity;n.traceIs(t,"showLegend")||(delete o.showlegend,delete o.legendgroup);n.traceIs(t,"noHover")&&(delete o.hoverinfo,delete o.hoverlabel);e.selectPoints||delete o.selectedpoints;d(o,l),a.attributes&&d(o,a.attributes);o.type=t;var c={meta:e.meta||{},categories:e.categories||{},animatable:Boolean(e.animatable),type:t,attributes:k(o)};if(e.layoutAttributes){var h={};d(h,e.layoutAttributes),c.layoutAttributes=k(h)}e.animatable||r.crawl(c,(function(t){r.isValObject(t)&&"anim"in t&&delete t.anim}));return c}(e)}));var e={};return Object.keys(n.transformsRegistry).forEach((function(t){e[t]=function(t){var e=n.transformsRegistry[t],r=d({},e.attributes);return Object.keys(n.componentsRegistry).forEach((function(e){var a=n.componentsRegistry[e];a.schema&&a.schema.transforms&&a.schema.transforms[t]&&Object.keys(a.schema.transforms[t]).forEach((function(e){M(r,a.schema.transforms[t][e],e)}))})),{attributes:k(r)}}(t)})),{defs:{valObjects:y,metaKeys:x.concat(["description","role","editType","impliedEdits"]),editType:{traces:f.traces,layout:f.layout},impliedEdits:{}},traces:t,layout:w(),transforms:e,frames:T(),animation:k(l),config:k(c)}},r.crawl=function(t,e,n,a){var i=n||0;a=a||"",Object.keys(t).forEach((function(n){var o=t[n];if(-1===x.indexOf(n)){var s=(a?a+".":"")+n;e(o,n,t,i,s),r.isValObject(o)||g(o)&&"impliedEdits"!==n&&r.crawl(o,e,i+1,s)}}))},r.isValObject=function(t){return t&&void 0!==t.valType},r.findArrayAttributes=function(t){var e,n,a=[],o=[],s=[];function l(t,r,i,l){o=o.slice(0,l).concat([r]),s=s.slice(0,l).concat([t&&t._isLinkedToArray]),t&&("data_array"===t.valType||!0===t.arrayOk)&&!("colorbar"===o[l-1]&&("ticktext"===r||"tickvals"===r))&&function t(e,r,i){var l=e[o[r]],c=i+o[r];if(r===o.length-1)m(l)&&a.push(n+c);else if(s[r]){if(Array.isArray(l))for(var u=0;u<l.length;u++)g(l[u])&&t(l[u],r+1,c+"["+u+"].")}else g(l)&&t(l,r+1,c+".")}(e,0,"")}e=t,n="",r.crawl(i,l),t._module&&t._module.attributes&&r.crawl(t._module.attributes,l);var c=t.transforms;if(c)for(var u=0;u<c.length;u++){var h=c[u],f=h._module;f&&(n="transforms["+u+"].",e=h,r.crawl(f.attributes,l))}return a},r.getTraceValObject=function(t,e){var r,a,o=e[0],s=1;if("transforms"===o){if(1===e.length)return i.transforms;var l=t.transforms;if(!Array.isArray(l)||!l.length)return!1;var c=e[1];if(!_(c)||c>=l.length)return!1;a=(r=(n.transformsRegistry[l[c].type]||{}).attributes)&&r[e[2]],s=3}else if("area"===t.type)a=u[o];else{var h=t._module;if(h||(h=(n.modules[t.type||i.type.dflt]||{})._module),!h)return!1;if(!(a=(r=h.attributes)&&r[o])){var f=h.basePlotModule;f&&f.attributes&&(a=f.attributes[o])}a||(a=i[o])}return b(a,e,s)},r.getLayoutValObject=function(t,e){return b(function(t,e){var r,a,i,s,l=t._basePlotModules;if(l){var c;for(r=0;r<l.length;r++){if((i=l[r]).attrRegex&&i.attrRegex.test(e)){if(i.layoutAttrOverrides)return i.layoutAttrOverrides;!c&&i.layoutAttributes&&(c=i.layoutAttributes)}var u=i.baseLayoutAttrOverrides;if(u&&e in u)return u[e]}if(c)return c}var f=t._modules;if(f)for(r=0;r<f.length;r++)if((s=f[r].layoutAttributes)&&e in s)return s[e];for(a in n.componentsRegistry){if("colorscale"===(i=n.componentsRegistry[a]).name&&0===e.indexOf("coloraxis"))return i.layoutAttributes[e];if(!i.schema&&e===i.name)return i.layoutAttributes}if(e in o)return o[e];if("radialaxis"===e||"angularaxis"===e)return h[e];return h.layout[e]||!1}(t,e[0]),e,1)}},{"../lib":728,"../plots/animation_attributes":771,"../plots/attributes":773,"../plots/frame_attributes":805,"../plots/layout_attributes":830,"../plots/polar/legacy/area_attributes":845,"../plots/polar/legacy/axis_attributes":846,"../registry":859,"./edit_types":759,"./plot_config":764}],766:[function(t,e,r){"use strict";var n=t("../lib"),a=t("../plots/attributes"),i={name:{valType:"string",editType:"none"}};function o(t){return t&&"string"==typeof t}function s(t){var e=t.length-1;return"s"!==t.charAt(e)&&n.warn("bad argument to arrayDefaultKey: "+t),t.substr(0,t.length-1)+"defaults"}i.templateitemname={valType:"string",editType:"calc"},r.templatedArray=function(t,e){return e._isLinkedToArray=t,e.name=i.name,e.templateitemname=i.templateitemname,e},r.traceTemplater=function(t){var e,r,i={};for(e in t)r=t[e],Array.isArray(r)&&r.length&&(i[e]=0);return{newTrace:function(o){var s={type:e=n.coerce(o,{},a,"type"),_template:null};if(e in i){r=t[e];var l=i[e]%r.length;i[e]++,s._template=r[l]}return s}}},r.newContainer=function(t,e,r){var a=t._template,i=a&&(a[e]||r&&a[r]);return n.isPlainObject(i)||(i=null),t[e]={_template:i}},r.arrayTemplater=function(t,e,r){var n=t._template,a=n&&n[s(e)],i=n&&n[e];Array.isArray(i)&&i.length||(i=[]);var l={};return{newItem:function(t){var e={name:t.name,_input:t},n=e.templateitemname=t.templateitemname;if(!o(n))return e._template=a,e;for(var s=0;s<i.length;s++){var c=i[s];if(c.name===n)return l[n]=1,e._template=c,e}return e[r]=t[r]||!1,e._template=!1,e},defaultItems:function(){for(var t=[],e=0;e<i.length;e++){var r=i[e],n=r.name;if(o(n)&&!l[n]){var a={_template:r,name:n,_input:{_templateitemname:n}};a.templateitemname=r.templateitemname,t.push(a),l[n]=1}}return t}}},r.arrayDefaultKey=s,r.arrayEditor=function(t,e,r){var a=(n.nestedProperty(t,e).get()||[]).length,i=r._index,o=i>=a&&(r._input||{})._templateitemname;o&&(i=a);var s,l=e+"["+i+"]";function c(){s={},o&&(s[l]={},s[l].templateitemname=o)}function u(t,e){o?n.nestedProperty(s[l],t).set(e):s[l+"."+t]=e}function h(){var t=s;return c(),t}return c(),{modifyBase:function(t,e){s[t]=e},modifyItem:u,getUpdateObj:h,applyUpdate:function(e,r){e&&u(e,r);var a=h();for(var i in a)n.nestedProperty(t,i).set(a[i])}}}},{"../lib":728,"../plots/attributes":773}],767:[function(t,e,r){"use strict";var n=t("d3"),a=t("../registry"),i=t("../plots/plots"),o=t("../lib"),s=t("../lib/clear_gl_canvases"),l=t("../components/color"),c=t("../components/drawing"),u=t("../components/titles"),h=t("../components/modebar"),f=t("../plots/cartesian/axes"),p=t("../constants/alignment"),d=t("../plots/cartesian/constraints"),g=d.enforce,m=d.clean,v=t("../plots/cartesian/autorange").doAutoRange;function y(t,e,r){for(var n=0;n<r.length;n++){var a=r[n][0],i=r[n][1];if(!(a[0]>=t[1]||a[1]<=t[0])&&(i[0]<e[1]&&i[1]>e[0]))return!0}return!1}function x(t){var e,a,s,u,d,g,m=t._fullLayout,v=m._size,x=v.p,_=f.list(t,"",!0);if(m._paperdiv.style({width:t._context.responsive&&m.autosize&&!t._context._hasZeroWidth&&!t.layout.width?"100%":m.width+"px",height:t._context.responsive&&m.autosize&&!t._context._hasZeroHeight&&!t.layout.height?"100%":m.height+"px"}).selectAll(".main-svg").call(c.setSize,m.width,m.height),t._context.setBackground(t,m.paper_bgcolor),r.drawMainTitle(t),h.manage(t),!m._has("cartesian"))return i.previousPromises(t);function T(t,e,r){var n=t._lw/2;return"x"===t._id.charAt(0)?e?"top"===r?e._offset-x-n:e._offset+e._length+x+n:v.t+v.h*(1-(t.position||0))+n%1:e?"right"===r?e._offset+e._length+x+n:e._offset-x-n:v.l+v.w*(t.position||0)+n%1}for(e=0;e<_.length;e++){var k=(u=_[e])._anchorAxis;u._linepositions={},u._lw=c.crispRound(t,u.linewidth,1),u._mainLinePosition=T(u,k,u.side),u._mainMirrorPosition=u.mirror&&k?T(u,k,p.OPPOSITE_SIDE[u.side]):null}var A=[],M=[],S=[],E=1===l.opacity(m.paper_bgcolor)&&1===l.opacity(m.plot_bgcolor)&&m.paper_bgcolor===m.plot_bgcolor;for(a in m._plots)if((s=m._plots[a]).mainplot)s.bg&&s.bg.remove(),s.bg=void 0;else{var C=s.xaxis.domain,L=s.yaxis.domain,P=s.plotgroup;if(y(C,L,S)){var I=P.node(),z=s.bg=o.ensureSingle(P,"rect","bg");I.insertBefore(z.node(),I.childNodes[0]),M.push(a)}else P.select("rect.bg").remove(),S.push([C,L]),E||(A.push(a),M.push(a))}var O,D,R,F,B,N,j,V,U,q,H,G,Y,W=m._bgLayer.selectAll(".bg").data(A);for(W.enter().append("rect").classed("bg",!0),W.exit().remove(),W.each((function(t){m._plots[t].bg=n.select(this)})),e=0;e<M.length;e++)s=m._plots[M[e]],d=s.xaxis,g=s.yaxis,s.bg&&s.bg.call(c.setRect,d._offset-x,g._offset-x,d._length+2*x,g._length+2*x).call(l.fill,m.plot_bgcolor).style("stroke-width",0);if(!m._hasOnlyLargeSploms)for(a in m._plots){s=m._plots[a],d=s.xaxis,g=s.yaxis;var Z,X,J=s.clipId="clip"+m._uid+a+"plot",K=o.ensureSingleById(m._clips,"clipPath",J,(function(t){t.classed("plotclip",!0).append("rect")}));s.clipRect=K.select("rect").attr({width:d._length,height:g._length}),c.setTranslate(s.plot,d._offset,g._offset),s._hasClipOnAxisFalse?(Z=null,X=J):(Z=J,X=null),c.setClipUrl(s.plot,Z,t),s.layerClipId=X}function Q(t){return"M"+O+","+t+"H"+D}function $(t){return"M"+d._offset+","+t+"h"+d._length}function tt(t){return"M"+t+","+V+"V"+j}function et(t){return"M"+t+","+g._offset+"v"+g._length}function rt(t,e,r){if(!t.showline||a!==t._mainSubplot)return"";if(!t._anchorAxis)return r(t._mainLinePosition);var n=e(t._mainLinePosition);return t.mirror&&(n+=e(t._mainMirrorPosition)),n}for(a in m._plots){s=m._plots[a],d=s.xaxis,g=s.yaxis;var nt="M0,0";b(d,a)&&(B=w(d,"left",g,_),O=d._offset-(B?x+B:0),N=w(d,"right",g,_),D=d._offset+d._length+(N?x+N:0),R=T(d,g,"bottom"),F=T(d,g,"top"),!(Y=!d._anchorAxis||a!==d._mainSubplot)||"allticks"!==d.mirror&&"all"!==d.mirror||(d._linepositions[a]=[R,F]),nt=rt(d,Q,$),Y&&d.showline&&("all"===d.mirror||"allticks"===d.mirror)&&(nt+=Q(R)+Q(F)),s.xlines.style("stroke-width",d._lw+"px").call(l.stroke,d.showline?d.linecolor:"rgba(0,0,0,0)")),s.xlines.attr("d",nt);var at="M0,0";b(g,a)&&(H=w(g,"bottom",d,_),j=g._offset+g._length+(H?x:0),G=w(g,"top",d,_),V=g._offset-(G?x:0),U=T(g,d,"left"),q=T(g,d,"right"),!(Y=!g._anchorAxis||a!==g._mainSubplot)||"allticks"!==g.mirror&&"all"!==g.mirror||(g._linepositions[a]=[U,q]),at=rt(g,tt,et),Y&&g.showline&&("all"===g.mirror||"allticks"===g.mirror)&&(at+=tt(U)+tt(q)),s.ylines.style("stroke-width",g._lw+"px").call(l.stroke,g.showline?g.linecolor:"rgba(0,0,0,0)")),s.ylines.attr("d",at)}return f.makeClipPaths(t),i.previousPromises(t)}function b(t,e){return(t.ticks||t.showline)&&(e===t._mainSubplot||"all"===t.mirror||"allticks"===t.mirror)}function _(t,e,r){if(!r.showline||!r._lw)return!1;if("all"===r.mirror||"allticks"===r.mirror)return!0;var n=r._anchorAxis;if(!n)return!1;var a=p.FROM_BL[e];return r.side===e?n.domain[a]===t.domain[a]:r.mirror&&n.domain[1-a]===t.domain[1-a]}function w(t,e,r,n){if(_(t,e,r))return r._lw;for(var a=0;a<n.length;a++){var i=n[a];if(i._mainAxis===r._mainAxis&&_(t,e,i))return i._lw}return 0}function T(t,e){var r=t.title,n=t._size,a=0;switch("start"===e?a=r.pad.l:"end"===e&&(a=-r.pad.r),r.xref){case"paper":return n.l+n.w*r.x+a;case"container":default:return t.width*r.x+a}}function k(t,e){var r=t.title,n=t._size,a=0;if("0em"!==e&&e?e===p.CAP_SHIFT+"em"&&(a=r.pad.t):a=-r.pad.b,"auto"===r.y)return n.t/2;switch(r.yref){case"paper":return n.t+n.h-n.h*r.y+a;case"container":default:return t.height-t.height*r.y+a}}r.layoutStyles=function(t){return o.syncOrAsync([i.doAutoMargin,x],t)},r.drawMainTitle=function(t){var e=t._fullLayout,r=function(t){var e=t.title,r="middle";o.isRightAnchor(e)?r="end":o.isLeftAnchor(e)&&(r="start");return r}(e),n=function(t){var e=t.title,r="0em";o.isTopAnchor(e)?r=p.CAP_SHIFT+"em":o.isMiddleAnchor(e)&&(r=p.MID_SHIFT+"em");return r}(e);u.draw(t,"gtitle",{propContainer:e,propName:"title.text",placeholder:e._dfltTitle.plot,attributes:{x:T(e,r),y:k(e,n),"text-anchor":r,dy:n}})},r.doTraceStyle=function(t){var e,n=t.calcdata,o=[];for(e=0;e<n.length;e++){var l=n[e],c=l[0]||{},u=c.trace||{},h=u._module||{},f=h.arraysToCalcdata;f&&f(l,u);var p=h.editStyle;p&&o.push({fn:p,cd0:c})}if(o.length){for(e=0;e<o.length;e++){var d=o[e];d.fn(t,d.cd0)}s(t),r.redrawReglTraces(t)}return i.style(t),a.getComponentMethod("legend","draw")(t),i.previousPromises(t)},r.doColorBars=function(t){return a.getComponentMethod("colorbar","draw")(t),i.previousPromises(t)},r.layoutReplot=function(t){var e=t.layout;return t.layout=void 0,a.call("plot",t,"",e)},r.doLegend=function(t){return a.getComponentMethod("legend","draw")(t),i.previousPromises(t)},r.doTicksRelayout=function(t){return f.draw(t,"redraw"),t._fullLayout._hasOnlyLargeSploms&&(a.subplotsRegistry.splom.updateGrid(t),s(t),r.redrawReglTraces(t)),r.drawMainTitle(t),i.previousPromises(t)},r.doModeBar=function(t){var e=t._fullLayout;h.manage(t);for(var r=0;r<e._basePlotModules.length;r++){var n=e._basePlotModules[r].updateFx;n&&n(t)}return i.previousPromises(t)},r.doCamera=function(t){for(var e=t._fullLayout,r=e._subplots.gl3d,n=0;n<r.length;n++){var a=e[r[n]];a._scene.setViewport(a)}},r.drawData=function(t){var e=t._fullLayout;s(t);for(var n=e._basePlotModules,o=0;o<n.length;o++)n[o].plot(t);return r.redrawReglTraces(t),i.style(t),a.getComponentMethod("shapes","draw")(t),a.getComponentMethod("annotations","draw")(t),a.getComponentMethod("images","draw")(t),e._replotting=!1,i.previousPromises(t)},r.redrawReglTraces=function(t){var e=t._fullLayout;if(e._has("regl")){var r,n,a=t._fullData,i=[],s=[];for(e._hasOnlyLargeSploms&&e._splomGrid.draw(),r=0;r<a.length;r++){var l=a[r];!0===l.visible&&0!==l._length&&("splom"===l.type?e._splomScenes[l.uid].draw():"scattergl"===l.type?o.pushUnique(i,l.xaxis+l.yaxis):"scatterpolargl"===l.type&&o.pushUnique(s,l.subplot))}for(r=0;r<i.length;r++)(n=e._plots[i[r]])._scene&&n._scene.draw();for(r=0;r<s.length;r++)(n=e[s[r]]._subplot)._scene&&n._scene.draw()}},r.doAutoRangeAndConstraints=function(t){for(var e,r,n=t._fullLayout,a=f.list(t,"",!0),i=n._axisMatchGroups||[],s={},l=0;l<a.length;l++)e=a[l],m(t,e),v(t,e),s[e._id]=1;g(t);t:for(var c=0;c<i.length;c++){var u,h=i[c],p=null;for(u in h)if(s[(e=f.getFromId(t,u))._id]){if(!1===e.autorange)continue t;r=o.simpleMap(e.range,e.r2l),p?p[0]<p[1]?(p[0]=Math.min(p[0],r[0]),p[1]=Math.max(p[1],r[1])):(p[0]=Math.max(p[0],r[0]),p[1]=Math.min(p[1],r[1])):p=r}for(u in h)(e=f.getFromId(t,u)).range=o.simpleMap(p,e.l2r),e._input.range=e.range.slice(),e.setScale()}},r.finalDraw=function(t){a.getComponentMethod("rangeslider","draw")(t),a.getComponentMethod("rangeselector","draw")(t)},r.drawMarginPushers=function(t){a.getComponentMethod("legend","draw")(t),a.getComponentMethod("rangeselector","draw")(t),a.getComponentMethod("sliders","draw")(t),a.getComponentMethod("updatemenus","draw")(t),a.getComponentMethod("colorbar","draw")(t)}},{"../components/color":595,"../components/drawing":617,"../components/modebar":655,"../components/titles":690,"../constants/alignment":697,"../lib":728,"../lib/clear_gl_canvases":713,"../plots/cartesian/autorange":775,"../plots/cartesian/axes":776,"../plots/cartesian/constraints":783,"../plots/plots":839,"../registry":859,d3:164}],768:[function(t,e,r){"use strict";var n=t("../lib"),a=n.isPlainObject,i=t("./plot_schema"),o=t("../plots/plots"),s=t("../plots/attributes"),l=t("./plot_template"),c=t("./plot_config").dfltConfig;function u(t,e){t=n.extendDeep({},t);var r,i,o=Object.keys(t).sort();function s(e,r,n){if(a(r)&&a(e))u(e,r);else if(Array.isArray(r)&&Array.isArray(e)){var o=l.arrayTemplater({_template:t},n);for(i=0;i<r.length;i++){var s=r[i],c=o.newItem(s)._template;c&&u(c,s)}var h=o.defaultItems();for(i=0;i<h.length;i++)r.push(h[i]._template);for(i=0;i<r.length;i++)delete r[i].templateitemname}}for(r=0;r<o.length;r++){var c=o[r],f=t[c];if(c in e?s(f,e[c],c):e[c]=f,h(c)===c)for(var p in e){var d=h(p);p===d||d!==c||p in t||s(f,e[p],c)}}}function h(t){return t.replace(/[0-9]+$/,"")}function f(t,e,r,i,o){var s=o&&r(o);for(var c in t){var u=t[c],p=g(t,c,i),d=g(t,c,o),m=r(d);if(!m){var v=h(c);v!==c&&(m=r(d=g(t,v,o)))}if((!s||s!==m)&&!(!m||m._noTemplating||"data_array"===m.valType||m.arrayOk&&Array.isArray(u)))if(!m.valType&&a(u))f(u,e,r,p,d);else if(m._isLinkedToArray&&Array.isArray(u))for(var y=!1,x=0,b={},_=0;_<u.length;_++){var w=u[_];if(a(w)){var T=w.name;if(T)b[T]||(f(w,e,r,g(u,x,p),g(u,x,d)),x++,b[T]=1);else if(!y){var k=g(t,l.arrayDefaultKey(c),i),A=g(u,x,p);f(w,e,r,A,g(u,x,d));var M=n.nestedProperty(e,A);n.nestedProperty(e,k).set(M.get()),M.set(null),y=!0}}}else{n.nestedProperty(e,p).set(u)}}}function p(t,e){return i.getLayoutValObject(t,n.nestedProperty({},e).parts)}function d(t,e){return i.getTraceValObject(t,n.nestedProperty({},e).parts)}function g(t,e,r){return r?Array.isArray(t)?r+"["+e+"]":r+"."+e:e}function m(t){for(var e=0;e<t.length;e++)if(a(t[e]))return!0}function v(t){var e;switch(t.code){case"data":e="The template has no key data.";break;case"layout":e="The template has no key layout.";break;case"missing":e=t.path?"There are no templates for item "+t.path+" with name "+t.templateitemname:"There are no templates for trace "+t.index+", of type "+t.traceType+".";break;case"unused":e=t.path?"The template item at "+t.path+" was not used in constructing the plot.":t.dataCount?"Some of the templates of type "+t.traceType+" were not used. The template has "+t.templateCount+" traces, the data only has "+t.dataCount+" of this type.":"The template has "+t.templateCount+" traces of type "+t.traceType+" but there are none in the data.";break;case"reused":e="Some of the templates of type "+t.traceType+" were used more than once. The template has "+t.templateCount+" traces, the data has "+t.dataCount+" of this type."}return t.msg=e,t}r.makeTemplate=function(t){t=n.isPlainObject(t)?t:n.getGraphDiv(t),t=n.extendDeep({_context:c},{data:t.data,layout:t.layout}),o.supplyDefaults(t);var e=t.data||[],r=t.layout||{};r._basePlotModules=t._fullLayout._basePlotModules,r._modules=t._fullLayout._modules;var i={data:{},layout:{}};e.forEach((function(t){var e={};f(t,e,d.bind(null,t));var r=n.coerce(t,{},s,"type"),a=i.data[r];a||(a=i.data[r]=[]),a.push(e)})),f(r,i.layout,p.bind(null,r)),delete i.layout.template;var l=r.template;if(a(l)){var h,g,m,v,y,x,b=l.layout;a(b)&&u(b,i.layout);var _=l.data;if(a(_)){for(g in i.data)if(m=_[g],Array.isArray(m)){for(x=(y=i.data[g]).length,v=m.length,h=0;h<x;h++)u(m[h%v],y[h]);for(h=x;h<v;h++)y.push(n.extendDeep({},m[h]))}for(g in _)g in i.data||(i.data[g]=n.extendDeep([],_[g]))}}return i},r.validateTemplate=function(t,e){var r=n.extendDeep({},{_context:c,data:t.data,layout:t.layout}),i=r.layout||{};a(e)||(e=i.template||{});var s=e.layout,l=e.data,u=[];r.layout=i,r.layout.template=e,o.supplyDefaults(r);var f=r._fullLayout,p=r._fullData,d={};if(a(s)?(!function t(e,r){for(var n in e)if("_"!==n.charAt(0)&&a(e[n])){var i,o=h(n),s=[];for(i=0;i<r.length;i++)s.push(g(e,n,r[i])),o!==n&&s.push(g(e,o,r[i]));for(i=0;i<s.length;i++)d[s[i]]=1;t(e[n],s)}}(f,["layout"]),function t(e,r){for(var n in e)if(-1===n.indexOf("defaults")&&a(e[n])){var i=g(e,n,r);d[i]?t(e[n],i):u.push({code:"unused",path:i})}}(s,"layout")):u.push({code:"layout"}),a(l)){for(var y,x={},b=0;b<p.length;b++){var _=p[b];x[y=_.type]=(x[y]||0)+1,_._fullInput._template||u.push({code:"missing",index:_._fullInput.index,traceType:y})}for(y in l){var w=l[y].length,T=x[y]||0;w>T?u.push({code:"unused",traceType:y,templateCount:w,dataCount:T}):T>w&&u.push({code:"reused",traceType:y,templateCount:w,dataCount:T})}}else u.push({code:"data"});if(function t(e,r){for(var n in e)if("_"!==n.charAt(0)){var i=e[n],o=g(e,n,r);a(i)?(Array.isArray(e)&&!1===i._template&&i.templateitemname&&u.push({code:"missing",path:o,templateitemname:i.templateitemname}),t(i,o)):Array.isArray(i)&&m(i)&&t(i,o)}}({data:p,layout:f},""),u.length)return u.map(v)}},{"../lib":728,"../plots/attributes":773,"../plots/plots":839,"./plot_config":764,"./plot_schema":765,"./plot_template":766}],769:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("./plot_api"),i=t("../plots/plots"),o=t("../lib"),s=t("../snapshot/helpers"),l=t("../snapshot/tosvg"),c=t("../snapshot/svgtoimg"),u=t("../version").version,h={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}};e.exports=function(t,e){var r,f,p,d;function g(t){return!(t in e)||o.validate(e[t],h[t])}if(e=e||{},o.isPlainObject(t)?(r=t.data||[],f=t.layout||{},p=t.config||{},d={}):(t=o.getGraphDiv(t),r=o.extendDeep([],t.data),f=o.extendDeep({},t.layout),p=t._context,d=t._fullLayout||{}),!g("width")&&null!==e.width||!g("height")&&null!==e.height)throw new Error("Height and width should be pixel values.");if(!g("format"))throw new Error("Image format is not jpeg, png, svg or webp.");var m={};function v(t,r){return o.coerce(e,m,h,t,r)}var y=v("format"),x=v("width"),b=v("height"),_=v("scale"),w=v("setBackground"),T=v("imageDataOnly"),k=document.createElement("div");k.style.position="absolute",k.style.left="-5000px",document.body.appendChild(k);var A=o.extendFlat({},f);x?A.width=x:null===e.width&&n(d.width)&&(A.width=d.width),b?A.height=b:null===e.height&&n(d.height)&&(A.height=d.height);var M=o.extendFlat({},p,{_exportedPlot:!0,staticPlot:!0,setBackground:w}),S=s.getRedrawFunc(k);function E(){return new Promise((function(t){setTimeout(t,s.getDelay(k._fullLayout))}))}function C(){return new Promise((function(t,e){var r=l(k,y,_),n=k._fullLayout.width,h=k._fullLayout.height;function f(){a.purge(k),document.body.removeChild(k)}if("full-json"===y){var p=i.graphJson(k,!1,"keepdata","object",!0,!0);return p.version=u,p=JSON.stringify(p),f(),t(T?p:s.encodeJSON(p))}if(f(),"svg"===y)return t(T?r:s.encodeSVG(r));var d=document.createElement("canvas");d.id=o.randstr(),c({format:y,width:n,height:h,scale:_,canvas:d,svg:r,promise:!0}).then(t).catch(e)}))}return new Promise((function(t,e){a.plot(k,r,A,M).then(S).then(E).then(C).then((function(e){t(function(t){return T?t.replace(s.IMAGE_URL_PREFIX,""):t}(e))})).catch((function(t){e(t)}))}))}},{"../lib":728,"../plots/plots":839,"../snapshot/helpers":863,"../snapshot/svgtoimg":865,"../snapshot/tosvg":867,"../version":1316,"./plot_api":763,"fast-isnumeric":236}],770:[function(t,e,r){"use strict";var n=t("../lib"),a=t("../plots/plots"),i=t("./plot_schema"),o=t("./plot_config").dfltConfig,s=n.isPlainObject,l=Array.isArray,c=n.isArrayOrTypedArray;function u(t,e,r,a,i,o){o=o||[];for(var h=Object.keys(t),f=0;f<h.length;f++){var p=h[f];if("transforms"!==p){var v=o.slice();v.push(p);var y=t[p],x=e[p],b=m(r,p),_=(b||{}).valType,w="info_array"===_,T="colorscale"===_,k=(b||{}).items;if(g(r,p))if(s(y)&&s(x)&&"any"!==_)u(y,x,b,a,i,v);else if(w&&l(y)){y.length>x.length&&a.push(d("unused",i,v.concat(x.length)));var A,M,S,E,C,L=x.length,P=Array.isArray(k);if(P&&(L=Math.min(L,k.length)),2===b.dimensions)for(M=0;M<L;M++)if(l(y[M])){y[M].length>x[M].length&&a.push(d("unused",i,v.concat(M,x[M].length)));var I=x[M].length;for(A=0;A<(P?Math.min(I,k[M].length):I);A++)S=P?k[M][A]:k,E=y[M][A],C=x[M][A],n.validate(E,S)?C!==E&&C!==+E&&a.push(d("dynamic",i,v.concat(M,A),E,C)):a.push(d("value",i,v.concat(M,A),E))}else a.push(d("array",i,v.concat(M),y[M]));else for(M=0;M<L;M++)S=P?k[M]:k,E=y[M],C=x[M],n.validate(E,S)?C!==E&&C!==+E&&a.push(d("dynamic",i,v.concat(M),E,C)):a.push(d("value",i,v.concat(M),E))}else if(b.items&&!w&&l(y)){var z,O,D=k[Object.keys(k)[0]],R=[];for(z=0;z<x.length;z++){var F=x[z]._index||z;if((O=v.slice()).push(F),s(y[F])&&s(x[z])){R.push(F);var B=y[F],N=x[z];s(B)&&!1!==B.visible&&!1===N.visible?a.push(d("invisible",i,O)):u(B,N,D,a,i,O)}}for(z=0;z<y.length;z++)(O=v.slice()).push(z),s(y[z])?-1===R.indexOf(z)&&a.push(d("unused",i,O)):a.push(d("object",i,O,y[z]))}else!s(y)&&s(x)?a.push(d("object",i,v,y)):c(y)||!c(x)||w||T?p in e?n.validate(y,b)?"enumerated"===b.valType&&(b.coerceNumber&&y!==+x||y!==x)&&a.push(d("dynamic",i,v,y,x)):a.push(d("value",i,v,y)):a.push(d("unused",i,v,y)):a.push(d("array",i,v,y));else a.push(d("schema",i,v))}}return a}function h(t,e){for(var r=t.layout.layoutAttributes,a=0;a<e.length;a++){var i=e[a],o=t.traces[i.type],s=o.layoutAttributes;s&&(i.subplot?n.extendFlat(r[o.attributes.subplot.dflt],s):n.extendFlat(r,s))}return r}e.exports=function(t,e){void 0===t&&(t=[]),void 0===e&&(e={});var r,c,f=i.get(),p=[],g={_context:n.extendFlat({},o)};l(t)?(g.data=n.extendDeep([],t),r=t):(g.data=[],r=[],p.push(d("array","data"))),s(e)?(g.layout=n.extendDeep({},e),c=e):(g.layout={},c={},arguments.length>1&&p.push(d("object","layout"))),a.supplyDefaults(g);for(var m=g._fullData,v=r.length,y=0;y<v;y++){var x=r[y],b=["data",y];if(s(x)){var _=m[y],w=_.type,T=f.traces[w].attributes;T.type={valType:"enumerated",values:[w]},!1===_.visible&&!1!==x.visible&&p.push(d("invisible",b)),u(x,_,T,p,b);var k=x.transforms,A=_.transforms;if(k){l(k)||p.push(d("array",b,["transforms"])),b.push("transforms");for(var M=0;M<k.length;M++){var S=["transforms",M],E=k[M].type;if(s(k[M])){var C=f.transforms[E]?f.transforms[E].attributes:{};C.type={valType:"enumerated",values:Object.keys(f.transforms)},u(k[M],A[M],C,p,b,S)}else p.push(d("object",b,S))}}}else p.push(d("object",b))}var L=g._fullLayout,P=h(f,m);return u(c,L,P,p,"layout"),0===p.length?void 0:p};var f={object:function(t,e){return("layout"===t&&""===e?"The layout argument":"data"===t[0]&&""===e?"Trace "+t[1]+" in the data argument":p(t)+"key "+e)+" must be linked to an object container"},array:function(t,e){return("data"===t?"The data argument":p(t)+"key "+e)+" must be linked to an array container"},schema:function(t,e){return p(t)+"key "+e+" is not part of the schema"},unused:function(t,e,r){var n=s(r)?"container":"key";return p(t)+n+" "+e+" did not get coerced"},dynamic:function(t,e,r,n){return[p(t)+"key",e,"(set to '"+r+"')","got reset to","'"+n+"'","during defaults."].join(" ")},invisible:function(t,e){return(e?p(t)+"item "+e:"Trace "+t[1])+" got defaulted to be not visible"},value:function(t,e,r){return[p(t)+"key "+e,"is set to an invalid value ("+r+")"].join(" ")}};function p(t){return l(t)?"In data trace "+t[1]+", ":"In "+t+", "}function d(t,e,r,a,i){var o,s;r=r||"",l(e)?(o=e[0],s=e[1]):(o=e,s=null);var c=function(t){if(!l(t))return String(t);for(var e="",r=0;r<t.length;r++){var n=t[r];"number"==typeof n?e=e.substr(0,e.length-1)+"["+n+"]":e+=n,r<t.length-1&&(e+=".")}return e}(r),u=f[t](e,c,a,i);return n.log(u),{code:t,container:o,trace:s,path:r,astr:c,msg:u}}function g(t,e){var r=y(e),n=r.keyMinusId,a=r.id;return!!(n in t&&t[n]._isSubplotObj&&a)||e in t}function m(t,e){return e in t?t[e]:t[y(e).keyMinusId]}var v=n.counterRegex("([a-z]+)");function y(t){var e=t.match(v);return{keyMinusId:e&&e[1],id:e&&e[2]}}},{"../lib":728,"../plots/plots":839,"./plot_config":764,"./plot_schema":765}],771:[function(t,e,r){"use strict";e.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"}}}},{}],772:[function(t,e,r){"use strict";var n=t("../lib"),a=t("../plot_api/plot_template");e.exports=function(t,e,r){var i,o,s=r.name,l=r.inclusionAttr||"visible",c=e[s],u=n.isArrayOrTypedArray(t[s])?t[s]:[],h=e[s]=[],f=a.arrayTemplater(e,s,l);for(i=0;i<u.length;i++){var p=u[i];n.isPlainObject(p)?o=f.newItem(p):(o=f.newItem({}))[l]=!1,o._index=i,!1!==o[l]&&r.handleItemDefaults(p,o,e,r),h.push(o)}var d=f.defaultItems();for(i=0;i<d.length;i++)(o=d[i])._index=h.length,r.handleItemDefaults({},o,e,r,{}),h.push(o);if(n.isArrayOrTypedArray(c)){var g=Math.min(c.length,h.length);for(i=0;i<g;i++)n.relinkPrivateKeys(h[i],c[i])}return h}},{"../lib":728,"../plot_api/plot_template":766}],773:[function(t,e,r){"use strict";var n=t("../components/fx/attributes");e.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"},legendgroup:{valType:"string",dflt:"",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:n.hoverlabel,stream:{token:{valType:"string",noBlank:!0,strict:!0,editType:"calc"},maxpoints:{valType:"number",min:0,max:1e4,dflt:500,editType:"calc"},editType:"calc"},transforms:{_isLinkedToArray:"transform",editType:"calc"},uirevision:{valType:"any",editType:"none"}}},{"../components/fx/attributes":626}],774:[function(t,e,r){"use strict";e.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}},{}],775:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../../lib"),i=t("../../constants/numerical").FP_SAFE,o=t("../../registry");function s(t,e){var r,n,i=[],o=l(e),s=c(t,e),u=s.min,h=s.max;if(0===u.length||0===h.length)return a.simpleMap(e.range,e.r2l);var f=u[0].val,p=h[0].val;for(r=1;r<u.length&&f===p;r++)f=Math.min(f,u[r].val);for(r=1;r<h.length&&f===p;r++)p=Math.max(p,h[r].val);var d=!1;if(e.range){var g=a.simpleMap(e.range,e.r2l);d=g[1]<g[0]}"reversed"===e.autorange&&(d=!0,e.autorange=!0);var m,v,y,x,b,_,w=e.rangemode,T="tozero"===w,k="nonnegative"===w,A=e._length,M=A/10,S=function(t,r){var n=0;if(e.rangebreaks)for(var a=e.locateBreaks(t,r),i=0;i<a.length;i++){var o=a[i];n+=o.max-o.min}return n},E=0;for(r=0;r<u.length;r++)for(m=u[r],n=0;n<h.length;n++)(_=(v=h[n]).val-m.val-S(m.val,v.val))>0&&((b=A-o(m)-o(v))>M?_/b>E&&(y=m,x=v,E=_/b):_/A>E&&(y={val:m.val,pad:0},x={val:v.val,pad:0},E=_/A));if(f===p){var C=f-1,L=f+1;if(T)if(0===f)i=[0,1];else{var P=(f>0?h:u).reduce((function(t,e){return Math.max(t,o(e))}),0),I=f/(1-Math.min(.5,P/A));i=f>0?[0,I]:[I,0]}else i=k?[Math.max(0,C),Math.max(1,L)]:[C,L]}else T?(y.val>=0&&(y={val:0,pad:0}),x.val<=0&&(x={val:0,pad:0})):k&&(y.val-E*o(y)<0&&(y={val:0,pad:0}),x.val<=0&&(x={val:1,pad:0})),E=(x.val-y.val-S(m.val,v.val))/(A-o(y)-o(x)),i=[y.val-E*o(y),x.val+E*o(x)];return d&&i.reverse(),a.simpleMap(i,e.l2r||Number)}function l(t){var e=t._length/20;return"domain"===t.constrain&&t._inputDomain&&(e*=(t._inputDomain[1]-t._inputDomain[0])/(t.domain[1]-t.domain[0])),function(t){return t.pad+(t.extrapad?e:0)}}function c(t,e){var r,n,a,i=e._id,o=t._fullData,s=t._fullLayout,l=[],c=[];function f(t,e){for(r=0;r<e.length;r++){var o=t[e[r]],s=(o._extremes||{})[i];if(!0===o.visible&&s){for(n=0;n<s.min.length;n++)a=s.min[n],u(l,a.val,a.pad,{extrapad:a.extrapad});for(n=0;n<s.max.length;n++)a=s.max[n],h(c,a.val,a.pad,{extrapad:a.extrapad})}}}return f(o,e._traceIndices),f(s.annotations||[],e._annIndices||[]),f(s.shapes||[],e._shapeIndices||[]),{min:l,max:c}}function u(t,e,r,n){f(t,e,r,n,d)}function h(t,e,r,n){f(t,e,r,n,g)}function f(t,e,r,n,a){for(var i=n.tozero,o=n.extrapad,s=!0,l=0;l<t.length&&s;l++){var c=t[l];if(a(c.val,e)&&c.pad>=r&&(c.extrapad||!o)){s=!1;break}a(e,c.val)&&c.pad<=r&&(o||!c.extrapad)&&(t.splice(l,1),l--)}if(s){var u=i&&0===e;t.push({val:e,pad:u?0:r,extrapad:!u&&o})}}function p(t){return n(t)&&Math.abs(t)<i}function d(t,e){return t<=e}function g(t,e){return t>=e}e.exports={getAutoRange:s,makePadFn:l,doAutoRange:function(t,e){if(e.setScale(),e.autorange){e.range=s(t,e),e._r=e.range.slice(),e._rl=a.simpleMap(e._r,e.r2l);var r=e._input,n={};n[e._attr+".range"]=e.range,n[e._attr+".autorange"]=e.autorange,o.call("_storeDirectGUIEdit",t.layout,t._fullLayout._preGUI,n),r.range=e.range.slice(),r.autorange=e.autorange}var i=e._anchorAxis;if(i&&i.rangeslider){var l=i.rangeslider[e._name];l&&"auto"===l.rangemode&&(l.range=s(t,e)),i._input.rangeslider[e._name]=a.extendFlat({},l)}},findExtremes:function(t,e,r){r||(r={});t._m||t.setScale();var a,o,s,l,c,f,d,g,m,v=[],y=[],x=e.length,b=r.padded||!1,_=r.tozero&&("linear"===t.type||"-"===t.type),w="log"===t.type,T=!1,k=r.vpadLinearized||!1;function A(t){if(Array.isArray(t))return T=!0,function(e){return Math.max(Number(t[e]||0),0)};var e=Math.max(Number(t||0),0);return function(){return e}}var M=A((t._m>0?r.ppadplus:r.ppadminus)||r.ppad||0),S=A((t._m>0?r.ppadminus:r.ppadplus)||r.ppad||0),E=A(r.vpadplus||r.vpad),C=A(r.vpadminus||r.vpad);if(!T){if(g=1/0,m=-1/0,w)for(a=0;a<x;a++)(o=e[a])<g&&o>0&&(g=o),o>m&&o<i&&(m=o);else for(a=0;a<x;a++)(o=e[a])<g&&o>-i&&(g=o),o>m&&o<i&&(m=o);e=[g,m],x=2}var L={tozero:_,extrapad:b};function P(r){s=e[r],n(s)&&(f=M(r),d=S(r),k?(l=t.c2l(s)-C(r),c=t.c2l(s)+E(r)):(g=s-C(r),m=s+E(r),w&&g<m/10&&(g=m/10),l=t.c2l(g),c=t.c2l(m)),_&&(l=Math.min(0,l),c=Math.max(0,c)),p(l)&&u(v,l,d,L),p(c)&&h(y,c,f,L))}var I=Math.min(6,x);for(a=0;a<I;a++)P(a);for(a=x-1;a>=I;a--)P(a);return{min:v,max:y,opts:r}},concatExtremes:c}},{"../../constants/numerical":704,"../../lib":728,"../../registry":859,"fast-isnumeric":236}],776:[function(t,e,r){"use strict";var n=t("d3"),a=t("fast-isnumeric"),i=t("../../plots/plots"),o=t("../../registry"),s=t("../../lib"),l=t("../../lib/svg_text_utils"),c=t("../../components/titles"),u=t("../../components/color"),h=t("../../components/drawing"),f=t("./layout_attributes"),p=t("./clean_ticks"),d=t("../../constants/numerical"),g=d.ONEAVGYEAR,m=d.ONEAVGMONTH,v=d.ONEDAY,y=d.ONEHOUR,x=d.ONEMIN,b=d.ONESEC,_=d.MINUS_SIGN,w=d.BADNUM,T=t("../../constants/alignment"),k=T.MID_SHIFT,A=T.CAP_SHIFT,M=T.LINE_SPACING,S=T.OPPOSITE_SIDE,E=e.exports={};E.setConvert=t("./set_convert");var C=t("./axis_autotype"),L=t("./axis_ids");E.id2name=L.id2name,E.name2id=L.name2id,E.cleanId=L.cleanId,E.list=L.list,E.listIds=L.listIds,E.getFromId=L.getFromId,E.getFromTrace=L.getFromTrace;var P=t("./autorange");E.getAutoRange=P.getAutoRange,E.findExtremes=P.findExtremes;function I(t){var e=1e-4*(t[1]-t[0]);return[t[0]-e,t[1]+e]}E.coerceRef=function(t,e,r,n,a,i){var o=n.charAt(n.length-1),l=r._fullLayout._subplots[o+"axis"],c=n+"ref",u={};return a||(a=l[0]||i),i||(i=a),u[c]={valType:"enumerated",values:l.concat(i?[i]:[]),dflt:a},s.coerce(t,e,u,c)},E.coercePosition=function(t,e,r,n,a,i){var o,l;if("paper"===n||"pixel"===n)o=s.ensureNumber,l=r(a,i);else{var c=E.getFromId(e,n);l=r(a,i=c.fraction2r(i)),o=c.cleanPos}t[a]=o(l)},E.cleanPosition=function(t,e,r){return("paper"===r||"pixel"===r?s.ensureNumber:E.getFromId(e,r).cleanPos)(t)},E.redrawComponents=function(t,e){e=e||E.listIds(t);var r=t._fullLayout;function n(n,a,i,s){for(var l=o.getComponentMethod(n,a),c={},u=0;u<e.length;u++)for(var h=r[E.id2name(e[u])][i],f=0;f<h.length;f++){var p=h[f];if(!c[p]&&(l(t,p),c[p]=1,s))return}}n("annotations","drawOne","_annIndices"),n("shapes","drawOne","_shapeIndices"),n("images","draw","_imgIndices",!0)};var z=E.getDataConversions=function(t,e,r,n){var a,i="x"===r||"y"===r||"z"===r?r:n;if(Array.isArray(i)){if(a={type:C(n),_categories:[]},E.setConvert(a),"category"===a.type)for(var o=0;o<n.length;o++)a.d2c(n[o])}else a=E.getFromTrace(t,e,i);return a?{d2c:a.d2c,c2d:a.c2d}:"ids"===i?{d2c:D,c2d:D}:{d2c:O,c2d:O}};function O(t){return+t}function D(t){return String(t)}E.getDataToCoordFunc=function(t,e,r,n){return z(t,e,r,n).d2c},E.counterLetter=function(t){var e=t.charAt(0);return"x"===e?"y":"y"===e?"x":void 0},E.minDtick=function(t,e,r,n){-1===["log","category","multicategory"].indexOf(t.type)&&n?void 0===t._minDtick?(t._minDtick=e,t._forceTick0=r):t._minDtick&&((t._minDtick/e+1e-6)%1<2e-6&&((r-t._forceTick0)/e%1+1.000001)%1<2e-6?(t._minDtick=e,t._forceTick0=r):((e/t._minDtick+1e-6)%1>2e-6||((r-t._forceTick0)/t._minDtick%1+1.000001)%1>2e-6)&&(t._minDtick=0)):t._minDtick=0},E.saveRangeInitial=function(t,e){for(var r=E.list(t,"",!0),n=!1,a=0;a<r.length;a++){var i=r[a],o=void 0===i._rangeInitial,s=o||!(i.range[0]===i._rangeInitial[0]&&i.range[1]===i._rangeInitial[1]);(o&&!1===i.autorange||e&&s)&&(i._rangeInitial=i.range.slice(),n=!0)}return n},E.saveShowSpikeInitial=function(t,e){for(var r=E.list(t,"",!0),n=!1,a="on",i=0;i<r.length;i++){var o=r[i],s=void 0===o._showSpikeInitial,l=s||!(o.showspikes===o._showspikes);(s||e&&l)&&(o._showSpikeInitial=o.showspikes,n=!0),"on"!==a||o.showspikes||(a="off")}return t._fullLayout._cartesianSpikesEnabled=a,n},E.autoBin=function(t,e,r,n,i,o){var l,c=s.aggNums(Math.min,null,t),u=s.aggNums(Math.max,null,t);if("category"===e.type||"multicategory"===e.type)return{start:c-.5,end:u+.5,size:Math.max(1,Math.round(o)||1),_dataSpan:u-c};if(i||(i=e.calendar),l="log"===e.type?{type:"linear",range:[c,u]}:{type:e.type,range:s.simpleMap([c,u],e.c2r,0,i),calendar:i},E.setConvert(l),o=o&&p.dtick(o,l.type))l.dtick=o,l.tick0=p.tick0(void 0,l.type,i);else{var h;if(r)h=(u-c)/r;else{var f=s.distinctVals(t),d=Math.pow(10,Math.floor(Math.log(f.minDiff)/Math.LN10)),g=d*s.roundUp(f.minDiff/d,[.9,1.9,4.9,9.9],!0);h=Math.max(g,2*s.stdev(t)/Math.pow(t.length,n?.25:.4)),a(h)||(h=1)}E.autoTicks(l,h)}var m,y=l.dtick,x=E.tickIncrement(E.tickFirst(l),y,"reverse",i);if("number"==typeof y)m=(x=function(t,e,r,n,i){var o=0,s=0,l=0,c=0;function u(e){return(1+100*(e-t)/r.dtick)%100<2}for(var h=0;h<e.length;h++)e[h]%1==0?l++:a(e[h])||c++,u(e[h])&&o++,u(e[h]+r.dtick/2)&&s++;var f=e.length-c;if(l===f&&"date"!==r.type)r.dtick<1?t=n-.5*r.dtick:(t-=.5)+r.dtick<n&&(t+=r.dtick);else if(s<.1*f&&(o>.3*f||u(n)||u(i))){var p=r.dtick/2;t+=t+p<n?p:-p}return t}(x,t,l,c,u))+(1+Math.floor((u-x)/y))*y;else for("M"===l.dtick.charAt(0)&&(x=function(t,e,r,n,a){var i=s.findExactDates(e,a);if(i.exactDays>.8){var o=Number(r.substr(1));i.exactYears>.8&&o%12==0?t=E.tickIncrement(t,"M6","reverse")+1.5*v:i.exactMonths>.8?t=E.tickIncrement(t,"M1","reverse")+15.5*v:t-=v/2;var l=E.tickIncrement(t,r);if(l<=n)return l}return t}(x,t,y,c,i)),m=x,0;m<=u;)m=E.tickIncrement(m,y,!1,i);return{start:e.c2r(x,0,i),end:e.c2r(m,0,i),size:y,_dataSpan:u-c}},E.prepTicks=function(t,e){var r=s.simpleMap(t.range,t.r2l,void 0,void 0,e);if("auto"===t.tickmode||!t.dtick){var n,a=t.nticks;a||("category"===t.type||"multicategory"===t.type?(n=t.tickfont?1.2*(t.tickfont.size||12):15,a=t._length/n):(n="y"===t._id.charAt(0)?40:80,a=s.constrain(t._length/n,4,9)+1),"radialaxis"===t._name&&(a*=2)),"array"===t.tickmode&&(a*=100),t._roughDTick=(Math.abs(r[1]-r[0])-(t._lBreaks||0))/a,E.autoTicks(t,t._roughDTick),t._minDtick>0&&t.dtick<2*t._minDtick&&(t.dtick=t._minDtick,t.tick0=t.l2r(t._forceTick0))}t.tick0||(t.tick0="date"===t.type?"2000-01-01":0),"date"===t.type&&t.dtick<.1&&(t.dtick=.1),H(t)},E.calcTicks=function(t,e){E.prepTicks(t,e);var r=s.simpleMap(t.range,t.r2l,void 0,void 0,e);if("array"===t.tickmode)return function(t){var e=t.tickvals,r=t.ticktext,n=new Array(e.length),a=I(s.simpleMap(t.range,t.r2l)),i=Math.min(a[0],a[1]),o=Math.max(a[0],a[1]),l=0;Array.isArray(r)||(r=[]);var c="category"===t.type?t.d2l_noadd:t.d2l;"log"===t.type&&"L"!==String(t.dtick).charAt(0)&&(t.dtick="L"+Math.pow(10,Math.floor(Math.min(t.range[0],t.range[1]))-1));for(var u=0;u<e.length;u++){var h=c(e[u]);h>i&&h<o&&(void 0===r[u]?n[l]=E.tickText(t,h):n[l]=G(t,h,String(r[u])),l++)}l<e.length&&n.splice(l,e.length-l);t.rangebreaks&&(n=n.filter((function(e){return t.maskBreaks(e.x)!==w})));return n}(t);t._tmin=E.tickFirst(t,e);var n=I(r),i=n[0],o=n[1],l=r[1]<r[0];if(t._tmin<i!==l)return[];"category"!==t.type&&"multicategory"!==t.type||(o=l?Math.max(-.5,o):Math.min(t._categories.length-.5,o));var c,u="log"===t.type&&!(a(t.dtick)||"L"===t.dtick.charAt(0));if(function(){var e=null,r=Math.max(1e3,t._length||0);c=[];for(var n=t._tmin;(l?n>=o:n<=o)&&!(c.length>r||n===e);n=E.tickIncrement(n,t.dtick,l,t.calendar)){e=n;var a=!1;u&&n!==(0|n)&&(a=!0),c.push({minor:a,value:n})}}(),t.rangebreaks){var h=c.length;if(h){var f=0;"auto"===t.tickmode&&(f=("y"===t._id.charAt(0)?2:6)*(t.tickfont?t.tickfont.size:12));for(var p,d=[],g=l?1:-1,m=l?h-1:0,v=l?0:h-1;g*v<=g*m;v+=g){var y=c[v];if(t.maskBreaks(y.value)!==w||(y.value=lt(y.value,t),!t._rl||t._rl[0]!==y.value&&t._rl[1]!==y.value)){var x=t.c2p(y.value);x===p?d[d.length-1].value<y.value&&(d[d.length-1]=y):(void 0===p||Math.abs(x-p)>f)&&(p=x,d.push(y))}}c=d.reverse()}}st(t)&&360===Math.abs(r[1]-r[0])&&c.pop(),t._tmax=(c[c.length-1]||{}).value,t._prevDateHead="",t._inCalcTicks=!0;for(var b=new Array(c.length),_=0;_<c.length;_++){var T=c[_].minor,k=c[_].value;b[_]=E.tickText(t,k,!1,T)}return t._inCalcTicks=!1,b};var R=[2,5,10],F=[1,2,3,6,12],B=[1,2,5,10,15,30],N=[1,2,3,7,14],j=[-.046,0,.301,.477,.602,.699,.778,.845,.903,.954,1],V=[-.301,0,.301,.699,1],U=[15,30,45,90,180];function q(t,e,r){return e*s.roundUp(t/e,r)}function H(t){var e=t.dtick;if(t._tickexponent=0,a(e)||"string"==typeof e||(e=1),"category"!==t.type&&"multicategory"!==t.type||(t._tickround=null),"date"===t.type){var r=t.r2l(t.tick0),n=t.l2r(r).replace(/(^-|i)/g,""),i=n.length;if("M"===String(e).charAt(0))i>10||"01-01"!==n.substr(5)?t._tickround="d":t._tickround=+e.substr(1)%12==0?"y":"m";else if(e>=v&&i<=10||e>=15*v)t._tickround="d";else if(e>=x&&i<=16||e>=y)t._tickround="M";else if(e>=b&&i<=19||e>=x)t._tickround="S";else{var o=t.l2r(r+e).replace(/^-/,"").length;t._tickround=Math.max(i,o)-20,t._tickround<0&&(t._tickround=4)}}else if(a(e)||"L"===e.charAt(0)){var s=t.range.map(t.r2d||Number);a(e)||(e=Number(e.substr(1))),t._tickround=2-Math.floor(Math.log(e)/Math.LN10+.01);var l=Math.max(Math.abs(s[0]),Math.abs(s[1])),c=Math.floor(Math.log(l)/Math.LN10+.01);Math.abs(c)>3&&(W(t.exponentformat)&&!Z(c)?t._tickexponent=3*Math.round((c-1)/3):t._tickexponent=c)}else t._tickround=null}function G(t,e,r){var n=t.tickfont||{};return{x:e,dx:0,dy:0,text:r||"",fontSize:n.size,font:n.family,fontColor:n.color}}E.autoTicks=function(t,e){var r;function n(t){return Math.pow(t,Math.floor(Math.log(e)/Math.LN10))}if("date"===t.type){t.tick0=s.dateTick0(t.calendar);var i=2*e;i>g?(e/=g,r=n(10),t.dtick="M"+12*q(e,r,R)):i>m?(e/=m,t.dtick="M"+q(e,1,F)):i>v?(t.dtick=q(e,v,t._hasDayOfWeekBreaks?[1,2,7,14]:N),t.tick0=s.dateTick0(t.calendar,!0)):i>y?t.dtick=q(e,y,F):i>x?t.dtick=q(e,x,B):i>b?t.dtick=q(e,b,B):(r=n(10),t.dtick=q(e,r,R))}else if("log"===t.type){t.tick0=0;var o=s.simpleMap(t.range,t.r2l);if(e>.7)t.dtick=Math.ceil(e);else if(Math.abs(o[1]-o[0])<1){var l=1.5*Math.abs((o[1]-o[0])/e);e=Math.abs(Math.pow(10,o[1])-Math.pow(10,o[0]))/l,r=n(10),t.dtick="L"+q(e,r,R)}else t.dtick=e>.3?"D2":"D1"}else"category"===t.type||"multicategory"===t.type?(t.tick0=0,t.dtick=Math.ceil(Math.max(e,1))):st(t)?(t.tick0=0,r=1,t.dtick=q(e,r,U)):(t.tick0=0,r=n(10),t.dtick=q(e,r,R));if(0===t.dtick&&(t.dtick=1),!a(t.dtick)&&"string"!=typeof t.dtick){var c=t.dtick;throw t.dtick=1,"ax.dtick error: "+String(c)}},E.tickIncrement=function(t,e,r,i){var o=r?-1:1;if(a(e))return t+o*e;var l=e.charAt(0),c=o*Number(e.substr(1));if("M"===l)return s.incrementMonth(t,c,i);if("L"===l)return Math.log(Math.pow(10,t)+c)/Math.LN10;if("D"===l){var u="D2"===e?V:j,h=t+.01*o,f=s.roundUp(s.mod(h,1),u,r);return Math.floor(h)+Math.log(n.round(Math.pow(10,f),1))/Math.LN10}throw"unrecognized dtick "+String(e)},E.tickFirst=function(t,e){var r=t.r2l||Number,i=s.simpleMap(t.range,r,void 0,void 0,e),o=i[1]<i[0],l=o?Math.floor:Math.ceil,c=I(i)[0],u=t.dtick,h=r(t.tick0);if(a(u)){var f=l((c-h)/u)*u+h;return"category"!==t.type&&"multicategory"!==t.type||(f=s.constrain(f,0,t._categories.length-1)),f}var p=u.charAt(0),d=Number(u.substr(1));if("M"===p){for(var g,m,v,y=0,x=h;y<10;){if(((g=E.tickIncrement(x,u,o,t.calendar))-c)*(x-c)<=0)return o?Math.min(x,g):Math.max(x,g);m=(c-(x+g)/2)/(g-x),v=p+(Math.abs(Math.round(m))||1)*d,x=E.tickIncrement(x,v,m<0?!o:o,t.calendar),y++}return s.error("tickFirst did not converge",t),x}if("L"===p)return Math.log(l((Math.pow(10,c)-h)/d)*d+h)/Math.LN10;if("D"===p){var b="D2"===u?V:j,_=s.roundUp(s.mod(c,1),b,o);return Math.floor(c)+Math.log(n.round(Math.pow(10,_),1))/Math.LN10}throw"unrecognized dtick "+String(u)},E.tickText=function(t,e,r,n){var i,o=G(t,e),l="array"===t.tickmode,c=r||l,u=t.type,h="category"===u?t.d2l_noadd:t.d2l;if(l&&Array.isArray(t.ticktext)){var f=s.simpleMap(t.range,t.r2l),p=(Math.abs(f[1]-f[0])-(t._lBreaks||0))/1e4;for(i=0;i<t.ticktext.length&&!(Math.abs(e-h(t.tickvals[i]))<p);i++);if(i<t.ticktext.length)return o.text=String(t.ticktext[i]),o}function d(n){if(void 0===n)return!0;if(r)return"none"===n;var a={first:t._tmin,last:t._tmax}[n];return"all"!==n&&e!==a}var g=r?"never":"none"!==t.exponentformat&&d(t.showexponent)?"hide":"";if("date"===u?function(t,e,r,n){var i=t._tickround,o=r&&t.hoverformat||E.getTickFormat(t);n&&(i=a(i)?4:{y:"m",m:"d",d:"M",M:"S",S:4}[i]);var l,c=s.formatDate(e.x,o,i,t._dateFormat,t.calendar,t._extraFormat),u=c.indexOf("\n");-1!==u&&(l=c.substr(u+1),c=c.substr(0,u));n&&("00:00:00"===c||"00:00"===c?(c=l,l=""):8===c.length&&(c=c.replace(/:00$/,"")));l&&(r?"d"===i?c+=", "+l:c=l+(c?", "+c:""):t._inCalcTicks&&l===t._prevDateHead||(c+="<br>"+l,t._prevDateHead=l));e.text=c}(t,o,r,c):"log"===u?function(t,e,r,n,i){var o=t.dtick,l=e.x,c=t.tickformat,u="string"==typeof o&&o.charAt(0);"never"===i&&(i="");n&&"L"!==u&&(o="L3",u="L");if(c||"L"===u)e.text=X(Math.pow(10,l),t,i,n);else if(a(o)||"D"===u&&s.mod(l+.01,1)<.1){var h=Math.round(l),f=Math.abs(h),p=t.exponentformat;"power"===p||W(p)&&Z(h)?(e.text=0===h?1:1===h?"10":"10<sup>"+(h>1?"":_)+f+"</sup>",e.fontSize*=1.25):("e"===p||"E"===p)&&f>2?e.text="1"+p+(h>0?"+":_)+f:(e.text=X(Math.pow(10,l),t,"","fakehover"),"D1"===o&&"y"===t._id.charAt(0)&&(e.dy-=e.fontSize/6))}else{if("D"!==u)throw"unrecognized dtick "+String(o);e.text=String(Math.round(Math.pow(10,s.mod(l,1)))),e.fontSize*=.75}if("D1"===t.dtick){var d=String(e.text).charAt(0);"0"!==d&&"1"!==d||("y"===t._id.charAt(0)?e.dx-=e.fontSize/4:(e.dy+=e.fontSize/2,e.dx+=(t.range[1]>t.range[0]?1:-1)*e.fontSize*(l<0?.5:.25)))}}(t,o,0,c,g):"category"===u?function(t,e){var r=t._categories[Math.round(e.x)];void 0===r&&(r="");e.text=String(r)}(t,o):"multicategory"===u?function(t,e,r){var n=Math.round(e.x),a=t._categories[n]||[],i=void 0===a[1]?"":String(a[1]),o=void 0===a[0]?"":String(a[0]);r?e.text=o+" - "+i:(e.text=i,e.text2=o)}(t,o,r):st(t)?function(t,e,r,n,a){if("radians"!==t.thetaunit||r)e.text=X(e.x,t,a,n);else{var i=e.x/180;if(0===i)e.text="0";else{var o=function(t){function e(t,e){return Math.abs(t-e)<=1e-6}var r=function(t){for(var r=1;!e(Math.round(t*r)/r,t);)r*=10;return r}(t),n=t*r,a=Math.abs(function t(r,n){return e(n,0)?r:t(n,r%n)}(n,r));return[Math.round(n/a),Math.round(r/a)]}(i);if(o[1]>=100)e.text=X(s.deg2rad(e.x),t,a,n);else{var l=e.x<0;1===o[1]?1===o[0]?e.text="\u03c0":e.text=o[0]+"\u03c0":e.text=["<sup>",o[0],"</sup>","\u2044","<sub>",o[1],"</sub>","\u03c0"].join(""),l&&(e.text=_+e.text)}}}}(t,o,r,c,g):function(t,e,r,n,a){"never"===a?a="":"all"===t.showexponent&&Math.abs(e.x/t.dtick)<1e-6&&(a="hide");e.text=X(e.x,t,a,n)}(t,o,0,c,g),n||(t.tickprefix&&!d(t.showtickprefix)&&(o.text=t.tickprefix+o.text),t.ticksuffix&&!d(t.showticksuffix)&&(o.text+=t.ticksuffix)),"boundaries"===t.tickson||t.showdividers){var m=function(e){var r=t.l2p(e);return r>=0&&r<=t._length?e:null};o.xbnd=[m(o.x-.5),m(o.x+t.dtick-.5)]}return o},E.hoverLabelText=function(t,e,r){if(r!==w&&r!==e)return E.hoverLabelText(t,e)+" - "+E.hoverLabelText(t,r);var n="log"===t.type&&e<=0,a=E.tickText(t,t.c2l(n?-e:e),"hover").text;return n?0===e?"0":_+a:a};var Y=["f","p","n","\u03bc","m","","k","M","G","T"];function W(t){return"SI"===t||"B"===t}function Z(t){return t>14||t<-15}function X(t,e,r,n){var i=t<0,o=e._tickround,l=r||e.exponentformat||"B",c=e._tickexponent,u=E.getTickFormat(e),h=e.separatethousands;if(n){var f={exponentformat:l,dtick:"none"===e.showexponent?e.dtick:a(t)&&Math.abs(t)||1,range:"none"===e.showexponent?e.range.map(e.r2d):[0,t||1]};H(f),o=(Number(f._tickround)||0)+4,c=f._tickexponent,e.hoverformat&&(u=e.hoverformat)}if(u)return e._numFormat(u)(t).replace(/-/g,_);var p,d=Math.pow(10,-o)/2;if("none"===l&&(c=0),(t=Math.abs(t))<d)t="0",i=!1;else{if(t+=d,c&&(t*=Math.pow(10,-c),o+=c),0===o)t=String(Math.floor(t));else if(o<0){t=(t=String(Math.round(t))).substr(0,t.length+o);for(var g=o;g<0;g++)t+="0"}else{var m=(t=String(t)).indexOf(".")+1;m&&(t=t.substr(0,m+o).replace(/\.?0+$/,""))}t=s.numSeparate(t,e._separators,h)}c&&"hide"!==l&&(W(l)&&Z(c)&&(l="power"),p=c<0?_+-c:"power"!==l?"+"+c:String(c),"e"===l||"E"===l?t+=l+p:"power"===l?t+="\xd710<sup>"+p+"</sup>":"B"===l&&9===c?t+="B":W(l)&&(t+=Y[c/3+5]));return i?_+t:t}function J(t,e){for(var r=[],n={},a=0;a<e.length;a++){var i=e[a];n[i.text2]?n[i.text2].push(i.x):n[i.text2]=[i.x]}for(var o in n)r.push(G(t,s.interp(n[o],.5),o));return r}function K(t){return[t.text,t.x,t.axInfo,t.font,t.fontSize,t.fontColor].join("_")}function Q(t){var e=t.title.font.size,r=(t.title.text.match(l.BR_TAG_ALL)||[]).length;return t.title.hasOwnProperty("standoff")?r?e*(A+r*M):e*A:r?e*(r+1)*M:e}function $(t,e){var r=t.l2p(e);return r>1&&r<t._length-1}function tt(t){var e=n.select(t),r=e.select(".text-math-group");return r.empty()?e.select("text"):r}function et(t){return t._id+".automargin"}function rt(t){return et(t)+".mirror"}function nt(t){return t._id+".rangeslider"}function at(t,e){for(var r=0;r<e.length;r++)-1===t.indexOf(e[r])&&t.push(e[r])}function it(t,e,r){var n,a,i=[],o=[],l=t.layout;for(n=0;n<e.length;n++)i.push(E.getFromId(t,e[n]));for(n=0;n<r.length;n++)o.push(E.getFromId(t,r[n]));var c=Object.keys(f),u=["anchor","domain","overlaying","position","side","tickangle","editType"],h=["linear","log"];for(n=0;n<c.length;n++){var p=c[n],d=i[0][p],g=o[0][p],m=!0,v=!1,y=!1;if("_"!==p.charAt(0)&&"function"!=typeof d&&-1===u.indexOf(p)){for(a=1;a<i.length&&m;a++){var x=i[a][p];"type"===p&&-1!==h.indexOf(d)&&-1!==h.indexOf(x)&&d!==x?v=!0:x!==d&&(m=!1)}for(a=1;a<o.length&&m;a++){var b=o[a][p];"type"===p&&-1!==h.indexOf(g)&&-1!==h.indexOf(b)&&g!==b?y=!0:o[a][p]!==g&&(m=!1)}m&&(v&&(l[i[0]._name].type="linear"),y&&(l[o[0]._name].type="linear"),ot(l,p,i,o,t._fullLayout._dfltTitle))}}for(n=0;n<t._fullLayout.annotations.length;n++){var _=t._fullLayout.annotations[n];-1!==e.indexOf(_.xref)&&-1!==r.indexOf(_.yref)&&s.swapAttrs(l.annotations[n],["?"])}}function ot(t,e,r,n,a){var i,o=s.nestedProperty,l=o(t[r[0]._name],e).get(),c=o(t[n[0]._name],e).get();for("title"===e&&(l&&l.text===a.x&&(l.text=a.y),c&&c.text===a.y&&(c.text=a.x)),i=0;i<r.length;i++)o(t,r[i]._name+"."+e).set(c);for(i=0;i<n.length;i++)o(t,n[i]._name+"."+e).set(l)}function st(t){return"angularaxis"===t._id}function lt(t,e){for(var r=e._rangebreaks.length,n=0;n<r;n++){var a=e._rangebreaks[n];if(t>=a.min&&t<a.max)return a.max}return t}E.getTickFormat=function(t){var e,r,n,a,i,o,s,l;function c(t){return"string"!=typeof t?t:Number(t.replace("M",""))*m}function u(t,e){var r=["L","D"];if(typeof t==typeof e){if("number"==typeof t)return t-e;var n=r.indexOf(t.charAt(0)),a=r.indexOf(e.charAt(0));return n===a?Number(t.replace(/(L|D)/g,""))-Number(e.replace(/(L|D)/g,"")):n-a}return"number"==typeof t?1:-1}function h(t,e){var r=null===e[0],n=null===e[1],a=u(t,e[0])>=0,i=u(t,e[1])<=0;return(r||a)&&(n||i)}if(t.tickformatstops&&t.tickformatstops.length>0)switch(t.type){case"date":case"linear":for(e=0;e<t.tickformatstops.length;e++)if((n=t.tickformatstops[e]).enabled&&(a=t.dtick,i=n.dtickrange,o=void 0,s=void 0,l=void 0,o=c||function(t){return t},s=i[0],l=i[1],(!s&&"number"!=typeof s||o(s)<=o(a))&&(!l&&"number"!=typeof l||o(l)>=o(a)))){r=n;break}break;case"log":for(e=0;e<t.tickformatstops.length;e++)if((n=t.tickformatstops[e]).enabled&&h(t.dtick,n.dtickrange)){r=n;break}}return r?r.value:t.tickformat},E.getSubplots=function(t,e){var r=t._fullLayout._subplots,n=r.cartesian.concat(r.gl2d||[]),a=e?E.findSubplotsWithAxis(n,e):n;return a.sort((function(t,e){var r=t.substr(1).split("y"),n=e.substr(1).split("y");return r[0]===n[0]?+r[1]-+n[1]:+r[0]-+n[0]})),a},E.findSubplotsWithAxis=function(t,e){for(var r=new RegExp("x"===e._id.charAt(0)?"^"+e._id+"y":e._id+"$"),n=[],a=0;a<t.length;a++){var i=t[a];r.test(i)&&n.push(i)}return n},E.makeClipPaths=function(t){var e=t._fullLayout;if(!e._hasOnlyLargeSploms){var r,a,i={_offset:0,_length:e.width,_id:""},o={_offset:0,_length:e.height,_id:""},s=E.list(t,"x",!0),l=E.list(t,"y",!0),c=[];for(r=0;r<s.length;r++)for(c.push({x:s[r],y:o}),a=0;a<l.length;a++)0===r&&c.push({x:i,y:l[a]}),c.push({x:s[r],y:l[a]});var u=e._clips.selectAll(".axesclip").data(c,(function(t){return t.x._id+t.y._id}));u.enter().append("clipPath").classed("axesclip",!0).attr("id",(function(t){return"clip"+e._uid+t.x._id+t.y._id})).append("rect"),u.exit().remove(),u.each((function(t){n.select(this).select("rect").attr({x:t.x._offset||0,y:t.y._offset||0,width:t.x._length||1,height:t.y._length||1})}))}},E.draw=function(t,e,r){var n=t._fullLayout;"redraw"===e&&n._paper.selectAll("g.subplot").each((function(t){var e=t[0],r=n._plots[e],a=r.xaxis,i=r.yaxis;r.xaxislayer.selectAll("."+a._id+"tick").remove(),r.yaxislayer.selectAll("."+i._id+"tick").remove(),r.xaxislayer.selectAll("."+a._id+"tick2").remove(),r.yaxislayer.selectAll("."+i._id+"tick2").remove(),r.xaxislayer.selectAll("."+a._id+"divider").remove(),r.yaxislayer.selectAll("."+i._id+"divider").remove(),r.gridlayer&&r.gridlayer.selectAll("path").remove(),r.zerolinelayer&&r.zerolinelayer.selectAll("path").remove(),n._infolayer.select(".g-"+a._id+"title").remove(),n._infolayer.select(".g-"+i._id+"title").remove()}));var a=e&&"redraw"!==e?e:E.listIds(t);return s.syncOrAsync(a.map((function(e){return function(){if(e){var n=E.getFromId(t,e),a=E.drawOne(t,n,r);return n._r=n.range.slice(),n._rl=s.simpleMap(n._r,n.r2l),a}}})))},E.drawOne=function(t,e,r){var n,a,l;r=r||{},e.setScale();var f=t._fullLayout,p=e._id,d=p.charAt(0),g=E.counterLetter(p),m=f._plots[e._mainSubplot];if(m){var v=m[d+"axislayer"],y=e._mainLinePosition,x=e._mainMirrorPosition,b=e._vals=E.calcTicks(e),_=[e.mirror,y,x].join("_");for(n=0;n<b.length;n++)b[n].axInfo=_;e._selections={},e._tickAngles&&(e._prevTickAngles=e._tickAngles),e._tickAngles={},e._depth=null;var w={};if(e.visible){var T,k,A=E.makeTransFn(e);if("boundaries"===e.tickson){var C=function(t,e){var r,n=[],a=function(t,e){var r=t.xbnd[e];null!==r&&n.push(s.extendFlat({},t,{x:r}))};if(e.length){for(r=0;r<e.length;r++)a(e[r],0);a(e[r-1],1)}return n}(0,b);k=E.clipEnds(e,C),T="inside"===e.ticks?k:C}else k=E.clipEnds(e,b),T="inside"===e.ticks?k:b;var L=e._gridVals=k,P=function(t,e){var r,n,a=[],i=e.length&&e[e.length-1].x<e[0].x,o=function(t,e){var r=t.xbnd[e];null!==r&&a.push(s.extendFlat({},t,{x:r}))};if(t.showdividers&&e.length){for(r=0;r<e.length;r++){var l=e[r];l.text2!==n&&o(l,i?1:0),n=l.text2}o(e[r-1],i?0:1)}return a}(e,b);if(!f._hasOnlyLargeSploms){var I=e._subplotsWith,z={};for(n=0;n<I.length;n++){a=I[n];var O=(l=f._plots[a])[g+"axis"],D=O._mainAxis._id;if(!z[D]){z[D]=1;var R="x"===d?"M0,"+O._offset+"v"+O._length:"M"+O._offset+",0h"+O._length;E.drawGrid(t,e,{vals:L,counterAxis:O,layer:l.gridlayer.select("."+p),path:R,transFn:A}),E.drawZeroLine(t,e,{counterAxis:O,layer:l.zerolinelayer,path:R,transFn:A})}}}var F=E.getTickSigns(e),B=[];if(e.ticks){var N,j,V,U=E.makeTickPath(e,y,F[2]);if(e._anchorAxis&&e.mirror&&!0!==e.mirror?(N=E.makeTickPath(e,x,F[3]),j=U+N):(N="",j=U),e.showdividers&&"outside"===e.ticks&&"boundaries"===e.tickson){var q={};for(n=0;n<P.length;n++)q[P[n].x]=1;V=function(t){return q[t.x]?N:j}}else V=j;E.drawTicks(t,e,{vals:T,layer:v,path:V,transFn:A}),"allticks"===e.mirror&&(B=Object.keys(e._linepositions||{}))}for(n=0;n<B.length;n++){a=B[n],l=f._plots[a];var H=e._linepositions[a]||[],G=E.makeTickPath(e,H[0],F[0])+E.makeTickPath(e,H[1],F[1]);E.drawTicks(t,e,{vals:T,layer:l[d+"axislayer"],path:G,transFn:A})}var Y=[];if(Y.push((function(){return E.drawLabels(t,e,{vals:b,layer:v,transFn:A,labelFns:E.makeLabelFns(e,y)})})),"multicategory"===e.type){var W={x:2,y:10}[d];Y.push((function(){var r={x:"height",y:"width"}[d],n=X()[r]+W+(e._tickAngles[p+"tick"]?e.tickfont.size*M:0);return E.drawLabels(t,e,{vals:J(e,b),layer:v,cls:p+"tick2",repositionOnUpdate:!0,secondary:!0,transFn:A,labelFns:E.makeLabelFns(e,y+n*F[4])})})),Y.push((function(){return e._depth=F[4]*(X("tick2")[e.side]-y),function(t,e,r){var n=e._id+"divider",a=r.vals,i=r.layer.selectAll("path."+n).data(a,K);i.exit().remove(),i.enter().insert("path",":first-child").classed(n,1).classed("crisp",1).call(u.stroke,e.dividercolor).style("stroke-width",h.crispRound(t,e.dividerwidth,1)+"px"),i.attr("transform",r.transFn).attr("d",r.path)}(t,e,{vals:P,layer:v,path:E.makeTickPath(e,y,F[4],e._depth),transFn:A})}))}else e.title.hasOwnProperty("standoff")&&Y.push((function(){e._depth=F[4]*(X()[e.side]-y)}));var Z=o.getComponentMethod("rangeslider","isVisible")(e);return Y.push((function(){var r,n,a,s,l=e.side.charAt(0),c=S[e.side].charAt(0),u=E.getPxPosition(t,e),h="outside"===e.ticks?e.ticklen:0;if((e.automargin||Z)&&("multicategory"===e.type?r=X("tick2"):(r=X(),"x"===d&&"b"===l&&(e._depth=Math.max(r.width>0?r.bottom-u:0,h)))),e.automargin){n={x:0,y:0,r:0,l:0,t:0,b:0};var p=[0,1];if("x"===d){if("b"===l?n[l]=e._depth:(n[l]=e._depth=Math.max(r.width>0?u-r.top:0,h),p.reverse()),r.width>0){var m=r.right-(e._offset+e._length);m>0&&(n.xr=1,n.r=m);var v=e._offset-r.left;v>0&&(n.xl=0,n.l=v)}}else if("l"===l?n[l]=e._depth=Math.max(r.height>0?u-r.left:0,h):(n[l]=e._depth=Math.max(r.height>0?r.right-u:0,h),p.reverse()),r.height>0){var y=r.bottom-(e._offset+e._length);y>0&&(n.yb=0,n.b=y);var x=e._offset-r.top;x>0&&(n.yt=1,n.t=x)}n[g]="free"===e.anchor?e.position:e._anchorAxis.domain[p[0]],e.title.text!==f._dfltTitle[d]&&(n[l]+=Q(e)+(e.title.standoff||0)),e.mirror&&"free"!==e.anchor&&((a={x:0,y:0,r:0,l:0,t:0,b:0})[c]=e.linewidth,e.mirror&&!0!==e.mirror&&(a[c]+=h),!0===e.mirror||"ticks"===e.mirror?a[g]=e._anchorAxis.domain[p[1]]:"all"!==e.mirror&&"allticks"!==e.mirror||(a[g]=[e._counterDomainMin,e._counterDomainMax][p[1]]))}Z&&(s=o.getComponentMethod("rangeslider","autoMarginOpts")(t,e)),i.autoMargin(t,et(e),n),i.autoMargin(t,rt(e),a),i.autoMargin(t,nt(e),s)})),r.skipTitle||Z&&"bottom"===e.side||Y.push((function(){return function(t,e){var r,n=t._fullLayout,a=e._id,i=a.charAt(0),o=e.title.font.size;if(e.title.hasOwnProperty("standoff"))r=e._depth+e.title.standoff+Q(e);else{if("multicategory"===e.type)r=e._depth;else{r=10+1.5*o+(e.linewidth?e.linewidth-1:0)}r+="x"===i?"top"===e.side?o*(e.showticklabels?1:0):o*(e.showticklabels?1.5:.5):"right"===e.side?o*(e.showticklabels?1:.5):o*(e.showticklabels?.5:0)}var s,l,u,f,p=E.getPxPosition(t,e);"x"===i?(l=e._offset+e._length/2,u="top"===e.side?p-r:p+r):(u=e._offset+e._length/2,l="right"===e.side?p+r:p-r,s={rotate:"-90",offset:0});if("multicategory"!==e.type){var d=e._selections[e._id+"tick"];if(f={selection:d,side:e.side},d&&d.node()&&d.node().parentNode){var g=h.getTranslate(d.node().parentNode);f.offsetLeft=g.x,f.offsetTop=g.y}e.title.hasOwnProperty("standoff")&&(f.pad=0)}return c.draw(t,a+"title",{propContainer:e,propName:e._name+".title.text",placeholder:n._dfltTitle[i],avoid:f,transform:s,attributes:{x:l,y:u,"text-anchor":"middle"}})}(t,e)})),s.syncOrAsync(Y)}}function X(t){var r=p+(t||"tick");return w[r]||(w[r]=function(t,e){var r,n,a,i;t._selections[e].size()?(r=1/0,n=-1/0,a=1/0,i=-1/0,t._selections[e].each((function(){var t=tt(this),e=h.bBox(t.node().parentNode);r=Math.min(r,e.top),n=Math.max(n,e.bottom),a=Math.min(a,e.left),i=Math.max(i,e.right)}))):(r=0,n=0,a=0,i=0);return{top:r,bottom:n,left:a,right:i,height:n-r,width:i-a}}(e,r)),w[r]}},E.getTickSigns=function(t){var e=t._id.charAt(0),r={x:"top",y:"right"}[e],n=t.side===r?1:-1,a=[-1,1,n,-n];return"inside"!==t.ticks==("x"===e)&&(a=a.map((function(t){return-t}))),t.side&&a.push({l:-1,t:-1,r:1,b:1}[t.side.charAt(0)]),a},E.makeTransFn=function(t){var e=t._id.charAt(0),r=t._offset;return"x"===e?function(e){return"translate("+(r+t.l2p(e.x))+",0)"}:function(e){return"translate(0,"+(r+t.l2p(e.x))+")"}},E.makeTickPath=function(t,e,r,n){n=void 0!==n?n:t.ticklen;var a=t._id.charAt(0),i=(t.linewidth||1)/2;return"x"===a?"M0,"+(e+i*r)+"v"+n*r:"M"+(e+i*r)+",0h"+n*r},E.makeLabelFns=function(t,e,r){var n=t._id.charAt(0),i="boundaries"!==t.tickson&&"outside"===t.ticks,o=0,l=0;if(i&&(o+=t.ticklen),r&&"outside"===t.ticks){var c=s.deg2rad(r);o=t.ticklen*Math.cos(c)+1,l=t.ticklen*Math.sin(c)}t.showticklabels&&(i||t.showline)&&(o+=.2*t.tickfont.size);var u,h,f,p,d={labelStandoff:o+=(t.linewidth||1)/2,labelShift:l};return"x"===n?(p="bottom"===t.side?1:-1,u=l*p,h=e+o*p,f="bottom"===t.side?1:-.2,d.xFn=function(t){return t.dx+u},d.yFn=function(t){return t.dy+h+t.fontSize*f},d.anchorFn=function(t,e){return a(e)&&0!==e&&180!==e?e*p<0?"end":"start":"middle"},d.heightFn=function(e,r,n){return r<-60||r>60?-.5*n:"top"===t.side?-n:0}):"y"===n&&(p="right"===t.side?1:-1,u=o,h=-l*p,f=90===Math.abs(t.tickangle)?.5:0,d.xFn=function(t){return t.dx+e+(u+t.fontSize*f)*p},d.yFn=function(t){return t.dy+h+t.fontSize*k},d.anchorFn=function(e,r){return a(r)&&90===Math.abs(r)?"middle":"right"===t.side?"start":"end"},d.heightFn=function(e,r,n){return(r*="left"===t.side?1:-1)<-30?-n:r<30?-.5*n:0}),d},E.drawTicks=function(t,e,r){r=r||{};var n=e._id+"tick",a=r.layer.selectAll("path."+n).data(e.ticks?r.vals:[],K);a.exit().remove(),a.enter().append("path").classed(n,1).classed("ticks",1).classed("crisp",!1!==r.crisp).call(u.stroke,e.tickcolor).style("stroke-width",h.crispRound(t,e.tickwidth,1)+"px").attr("d",r.path),a.attr("transform",r.transFn)},E.drawGrid=function(t,e,r){r=r||{};var n=e._id+"grid",a=r.vals,i=r.counterAxis;if(!1===e.showgrid)a=[];else if(i&&E.shouldShowZeroLine(t,e,i))for(var o="array"===e.tickmode,s=0;s<a.length;s++){var l=a[s].x;if(o?!l:Math.abs(l)<e.dtick/100){if(a=a.slice(0,s).concat(a.slice(s+1)),!o)break;s--}}var c=r.layer.selectAll("path."+n).data(a,K);c.exit().remove(),c.enter().append("path").classed(n,1).classed("crisp",!1!==r.crisp),e._gw=h.crispRound(t,e.gridwidth,1),c.attr("transform",r.transFn).attr("d",r.path).call(u.stroke,e.gridcolor||"#ddd").style("stroke-width",e._gw+"px"),"function"==typeof r.path&&c.attr("d",r.path)},E.drawZeroLine=function(t,e,r){r=r||r;var n=e._id+"zl",a=E.shouldShowZeroLine(t,e,r.counterAxis),i=r.layer.selectAll("path."+n).data(a?[{x:0,id:e._id}]:[]);i.exit().remove(),i.enter().append("path").classed(n,1).classed("zl",1).classed("crisp",!1!==r.crisp).each((function(){r.layer.selectAll("path").sort((function(t,e){return L.idSort(t.id,e.id)}))})),i.attr("transform",r.transFn).attr("d",r.path).call(u.stroke,e.zerolinecolor||u.defaultLine).style("stroke-width",h.crispRound(t,e.zerolinewidth,e._gw||1)+"px")},E.drawLabels=function(t,e,r){r=r||{};var i=t._fullLayout,o=e._id,c=o.charAt(0),u=r.cls||o+"tick",f=r.vals,p=r.labelFns,d=r.secondary?0:e.tickangle,g=(e._prevTickAngles||{})[u],m=r.layer.selectAll("g."+u).data(e.showticklabels?f:[],K),v=[];function y(t,e){t.each((function(t){var i=n.select(this),o=i.select(".text-math-group"),s=p.anchorFn(t,e),c=r.transFn.call(i.node(),t)+(a(e)&&0!=+e?" rotate("+e+","+p.xFn(t)+","+(p.yFn(t)-t.fontSize/2)+")":""),u=l.lineCount(i),f=M*t.fontSize,d=p.heightFn(t,a(e)?+e:0,(u-1)*f);if(d&&(c+=" translate(0, "+d+")"),o.empty())i.select("text").attr({transform:c,"text-anchor":s});else{var g=h.bBox(o.node()).width*{end:-.5,start:.5}[s];o.attr("transform",c+(g?"translate("+g+",0)":""))}}))}m.enter().append("g").classed(u,1).append("text").attr("text-anchor","middle").each((function(e){var r=n.select(this),a=t._promises.length;r.call(l.positionText,p.xFn(e),p.yFn(e)).call(h.font,e.font,e.fontSize,e.fontColor).text(e.text).call(l.convertToTspans,t),t._promises[a]?v.push(t._promises.pop().then((function(){y(r,d)}))):y(r,d)})),m.exit().remove(),r.repositionOnUpdate&&m.each((function(t){n.select(this).select("text").call(l.positionText,p.xFn(t),p.yFn(t))})),y(m,g+1?g:d);var x=null;e._selections&&(e._selections[u]=m);var b=[function(){return v.length&&Promise.all(v)}];e.automargin&&i._redrawFromAutoMarginCount&&90===g?(x=90,b.push((function(){y(m,g)}))):b.push((function(){if(y(m,d),f.length&&"x"===c&&!a(d)&&("log"!==e.type||"D"!==String(e.dtick).charAt(0))){x=0;var t,n=0,i=[];if(m.each((function(t){n=Math.max(n,t.fontSize);var r=e.l2p(t.x),a=tt(this),o=h.bBox(a.node());i.push({top:0,bottom:10,height:10,left:r-o.width/2,right:r+o.width/2+2,width:o.width+2})})),"boundaries"!==e.tickson&&!e.showdividers||r.secondary){var o=f.length,l=Math.abs((f[o-1].x-f[0].x)*e._m)/(o-1)<2.5*n||"multicategory"===e.type;for(t=0;t<i.length-1;t++)if(s.bBoxIntersect(i[t],i[t+1])){x=l?90:30;break}}else{var u=2;for(e.ticks&&(u+=e.tickwidth/2),t=0;t<i.length;t++){var p=f[t].xbnd,g=i[t];if(null!==p[0]&&g.left-e.l2p(p[0])<u||null!==p[1]&&e.l2p(p[1])-g.right<u){x=90;break}}}x&&y(m,x)}})),e._tickAngles&&b.push((function(){e._tickAngles[u]=null===x?a(d)?d:0:x}));var _=s.syncOrAsync(b);return _&&_.then&&t._promises.push(_),_},E.getPxPosition=function(t,e){var r,n=t._fullLayout._size,a=e._id.charAt(0),i=e.side;return"free"!==e.anchor?r=e._anchorAxis:"x"===a?r={_offset:n.t+(1-(e.position||0))*n.h,_length:0}:"y"===a&&(r={_offset:n.l+(e.position||0)*n.w,_length:0}),"top"===i||"left"===i?r._offset:"bottom"===i||"right"===i?r._offset+r._length:void 0},E.shouldShowZeroLine=function(t,e,r){var n=s.simpleMap(e.range,e.r2l);return n[0]*n[1]<=0&&e.zeroline&&("linear"===e.type||"-"===e.type)&&!(e.rangebreaks&&e.maskBreaks(0)===w)&&($(e,0)||!function(t,e,r,n){var a=r._mainAxis;if(!a)return;var i=t._fullLayout,o=e._id.charAt(0),s=E.counterLetter(e._id),l=e._offset+(Math.abs(n[0])<Math.abs(n[1])==("x"===o)?0:e._length);function c(t){if(!t.showline||!t.linewidth)return!1;var r=Math.max((t.linewidth+e.zerolinewidth)/2,1);function n(t){return"number"==typeof t&&Math.abs(t-l)<r}if(n(t._mainLinePosition)||n(t._mainMirrorPosition))return!0;var a=t._linepositions||{};for(var i in a)if(n(a[i][0])||n(a[i][1]))return!0}var u=i._plots[r._mainSubplot];if(!(u.mainplotinfo||u).overlays.length)return c(r);for(var h=E.list(t,s),f=0;f<h.length;f++){var p=h[f];if(p._mainAxis===a&&c(p))return!0}}(t,e,r,n)||function(t,e){for(var r=t._fullData,n=e._mainSubplot,a=e._id.charAt(0),i=0;i<r.length;i++){var s=r[i];if(!0===s.visible&&s.xaxis+s.yaxis===n){if(o.traceIs(s,"bar-like")&&s.orientation==={x:"h",y:"v"}[a])return!0;if(s.fill&&s.fill.charAt(s.fill.length-1)===a)return!0}}return!1}(t,e))},E.clipEnds=function(t,e){return e.filter((function(e){return $(t,e.x)}))},E.allowAutoMargin=function(t){for(var e=E.list(t,"",!0),r=0;r<e.length;r++){var n=e[r];n.automargin&&(i.allowAutoMargin(t,et(n)),n.mirror&&i.allowAutoMargin(t,rt(n))),o.getComponentMethod("rangeslider","isVisible")(n)&&i.allowAutoMargin(t,nt(n))}},E.swap=function(t,e){for(var r=function(t,e){var r,n,a=[];for(r=0;r<e.length;r++){var i=[],o=t._fullData[e[r]].xaxis,s=t._fullData[e[r]].yaxis;if(o&&s){for(n=0;n<a.length;n++)-1===a[n].x.indexOf(o)&&-1===a[n].y.indexOf(s)||i.push(n);if(i.length){var l,c=a[i[0]];if(i.length>1)for(n=1;n<i.length;n++)l=a[i[n]],at(c.x,l.x),at(c.y,l.y);at(c.x,[o]),at(c.y,[s])}else a.push({x:[o],y:[s]})}}return a}(t,e),n=0;n<r.length;n++)it(t,r[n].x,r[n].y)}},{"../../components/color":595,"../../components/drawing":617,"../../components/titles":690,"../../constants/alignment":697,"../../constants/numerical":704,"../../lib":728,"../../lib/svg_text_utils":752,"../../plots/plots":839,"../../registry":859,"./autorange":775,"./axis_autotype":777,"./axis_ids":779,"./clean_ticks":781,"./layout_attributes":790,"./set_convert":796,d3:164,"fast-isnumeric":236}],777:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../../lib"),i=t("../../constants/numerical").BADNUM;e.exports=function(t,e,r){return!(r=r||{}).noMultiCategory&&(o=t,a.isArrayOrTypedArray(o[0])&&a.isArrayOrTypedArray(o[1]))?"multicategory":function(t,e){for(var r=Math.max(1,(t.length-1)/1e3),i=0,o=0,s={},l=0;l<t.length;l+=r){var c=t[Math.round(l)],u=String(c);s[u]||(s[u]=1,a.isDateTime(c,e)&&(i+=1),n(c)&&(o+=1))}return i>2*o}(t,e)?"date":function(t){for(var e=Math.max(1,(t.length-1)/1e3),r=0,n=0,o={},s=0;s<t.length;s+=e){var l=t[Math.round(s)],c=String(l);o[c]||(o[c]=1,"boolean"==typeof l?n++:a.cleanNumber(l)!==i?r++:"string"==typeof l&&n++)}return n>2*r}(t)?"category":function(t){if(!t)return!1;for(var e=0;e<t.length;e++)if(n(t[e]))return!0;return!1}(t)?"linear":"-";var o}},{"../../constants/numerical":704,"../../lib":728,"fast-isnumeric":236}],778:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../../registry"),i=t("../../lib"),o=t("../array_container_defaults"),s=t("./layout_attributes"),l=t("./tick_value_defaults"),c=t("./tick_mark_defaults"),u=t("./tick_label_defaults"),h=t("./category_order_defaults"),f=t("./line_grid_defaults"),p=t("./set_convert"),d=t("./constants").WEEKDAY_PATTERN,g=t("./constants").HOUR_PATTERN;function m(t,e,r){function a(r,n){return i.coerce(t,e,s.rangebreaks,r,n)}if(a("enabled")){var o=a("bounds");if(o&&o.length>=2){var l,c,u="";if(2===o.length)for(l=0;l<2;l++)if(c=y(o[l])){u=d;break}var h=a("pattern",u);if(h===d)for(l=0;l<2;l++)(c=y(o[l]))&&(e.bounds[l]=o[l]=c-1);if(h)for(l=0;l<2;l++)switch(c=o[l],h){case d:if(!n(c))return void(e.enabled=!1);if((c=+c)!==Math.floor(c)||c<0||c>=7)return void(e.enabled=!1);e.bounds[l]=o[l]=c;break;case g:if(!n(c))return void(e.enabled=!1);if((c=+c)<0||c>24)return void(e.enabled=!1);e.bounds[l]=o[l]=c}if(!1===r.autorange){var f=r.range;if(f[0]<f[1]){if(o[0]<f[0]&&o[1]>f[1])return void(e.enabled=!1)}else if(o[0]>f[0]&&o[1]<f[1])return void(e.enabled=!1)}}else{var p=a("values");if(!p||!p.length)return void(e.enabled=!1);a("dvalue")}}}e.exports=function(t,e,r,n,g){var v=n.letter,y=n.font||{},x=n.splomStash||{},b=r("visible",!n.visibleDflt),_=e._template||{},w=e.type||_.type||"-";"date"===w&&a.getComponentMethod("calendars","handleDefaults")(t,e,"calendar",n.calendar);p(e,g);var T=!e.isValidRange(t.range);T&&n.reverseDflt&&(T="reversed"),!r("autorange",T)||"linear"!==w&&"-"!==w||r("rangemode"),r("range"),e.cleanRange(),h(t,e,r,n),"category"===w||n.noHover||r("hoverformat");var k=r("color"),A=k!==s.color.dflt?k:y.color,M=x.label||g._dfltTitle[v];if(u(t,e,r,w,n,{pass:1}),!b)return e;r("title.text",M),i.coerceFont(r,"title.font",{family:y.family,size:Math.round(1.2*y.size),color:A}),l(t,e,r,w),u(t,e,r,w,n,{pass:2}),c(t,e,r,n),f(t,e,r,{dfltColor:k,bgColor:n.bgColor,showGrid:n.showGrid,attributes:s}),(e.showline||e.ticks)&&r("mirror"),n.automargin&&r("automargin");var S,E="multicategory"===w;n.noTickson||"category"!==w&&!E||!e.ticks&&!e.showgrid||(E&&(S="boundaries"),r("tickson",S));E&&(r("showdividers")&&(r("dividercolor"),r("dividerwidth")));if("date"===w)if(o(t,e,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:m}),e.rangebreaks.length){for(var C=0;C<e.rangebreaks.length;C++)if(e.rangebreaks[C].pattern===d){e._hasDayOfWeekBreaks=!0;break}if(p(e,g),g._has("scattergl")||g._has("splom"))for(var L=0;L<n.data.length;L++){var P=n.data[L];"scattergl"!==P.type&&"splom"!==P.type||(P.visible=!1,i.warn(P.type+" traces do not work on axes with rangebreaks. Setting trace "+P.index+" tovisible: false."))}}else delete e.rangebreaks;return e};var v={sun:1,mon:2,tue:3,wed:4,thu:5,fri:6,sat:7};function y(t){if("string"==typeof t)return v[t.substr(0,3).toLowerCase()]}},{"../../lib":728,"../../registry":859,"../array_container_defaults":772,"./category_order_defaults":780,"./constants":782,"./layout_attributes":790,"./line_grid_defaults":792,"./set_convert":796,"./tick_label_defaults":797,"./tick_mark_defaults":798,"./tick_value_defaults":799,"fast-isnumeric":236}],779:[function(t,e,r){"use strict";var n=t("../../registry"),a=t("./constants");r.id2name=function(t){if("string"==typeof t&&t.match(a.AX_ID_PATTERN)){var e=t.substr(1);return"1"===e&&(e=""),t.charAt(0)+"axis"+e}},r.name2id=function(t){if(t.match(a.AX_NAME_PATTERN)){var e=t.substr(5);return"1"===e&&(e=""),t.charAt(0)+e}},r.cleanId=function(t,e){if("string"==typeof t&&t.match(a.AX_ID_PATTERN)&&(!e||t.charAt(0)===e)){var r=t.substr(1).replace(/^0+/,"");return"1"===r&&(r=""),t.charAt(0)+r}},r.list=function(t,e,n){var a=t._fullLayout;if(!a)return[];var i,o=r.listIds(t,e),s=new Array(o.length);for(i=0;i<o.length;i++){var l=o[i];s[i]=a[l.charAt(0)+"axis"+l.substr(1)]}if(!n){var c=a._subplots.gl3d||[];for(i=0;i<c.length;i++){var u=a[c[i]];e?s.push(u[e+"axis"]):s.push(u.xaxis,u.yaxis,u.zaxis)}}return s},r.listIds=function(t,e){var r=t._fullLayout;if(!r)return[];var n=r._subplots;return e?n[e+"axis"]:n.xaxis.concat(n.yaxis)},r.getFromId=function(t,e,n){var a=t._fullLayout;return"x"===n?e=e.replace(/y[0-9]*/,""):"y"===n&&(e=e.replace(/x[0-9]*/,"")),a[r.id2name(e)]},r.getFromTrace=function(t,e,a){var i=t._fullLayout,o=null;if(n.traceIs(e,"gl3d")){var s=e.scene;"scene"===s.substr(0,5)&&(o=i[s][a+"axis"])}else o=r.getFromId(t,e[a+"axis"]||a);return o},r.idSort=function(t,e){var r=t.charAt(0),n=e.charAt(0);return r!==n?r>n?1:-1:+(t.substr(1)||1)-+(e.substr(1)||1)},r.getAxisGroup=function(t,e){for(var r=t._axisMatchGroups,n=0;n<r.length;n++){if(r[n][e])return"g"+n}return e}},{"../../registry":859,"./constants":782}],780:[function(t,e,r){"use strict";e.exports=function(t,e,r,n){if("category"===e.type){var a,i=t.categoryarray,o=Array.isArray(i)&&i.length>0;o&&(a="array");var s,l=r("categoryorder",a);"array"===l&&(s=r("categoryarray")),o||"array"!==l||(l=e.categoryorder="trace"),"trace"===l?e._initialCategories=[]:"array"===l?e._initialCategories=s.slice():(s=function(t,e){var r,n,a,i=e.dataAttr||t._id.charAt(0),o={};if(e.axData)r=e.axData;else for(r=[],n=0;n<e.data.length;n++){var s=e.data[n];s[i+"axis"]===t._id&&r.push(s)}for(n=0;n<r.length;n++){var l=r[n][i];for(a=0;a<l.length;a++){var c=l[a];null!=c&&(o[c]=1)}}return Object.keys(o)}(e,n).sort(),"category ascending"===l?e._initialCategories=s:"category descending"===l&&(e._initialCategories=s.reverse()))}}},{}],781:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../../lib"),i=t("../../constants/numerical").ONEDAY;r.dtick=function(t,e){var r="log"===e,a="date"===e,o="category"===e,s=a?i:1;if(!t)return s;if(n(t))return(t=Number(t))<=0?s:o?Math.max(1,Math.round(t)):a?Math.max(.1,t):t;if("string"!=typeof t||!a&&!r)return s;var l=t.charAt(0),c=t.substr(1);return(c=n(c)?Number(c):0)<=0||!(a&&"M"===l&&c===Math.round(c)||r&&"L"===l||r&&"D"===l&&(1===c||2===c))?s:t},r.tick0=function(t,e,r,i){return"date"===e?a.cleanDate(t,a.dateTick0(r)):"D1"!==i&&"D2"!==i?n(t)?Number(t):0:void 0}},{"../../constants/numerical":704,"../../lib":728,"fast-isnumeric":236}],782:[function(t,e,r){"use strict";var n=t("../../lib/regex").counter;e.exports={idRegex:{x:n("x"),y:n("y")},attrRegex:n("[xy]axis"),xAxisMatch:n("xaxis"),yAxisMatch:n("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*$/,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,MINSELECT:12,MINZOOM:20,DRAGGERSIZE:20,BENDPX:1.5,REDRAWDELAY:50,SELECTDELAY:100,SELECTID:"-select",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"}}},{"../../lib/regex":744}],783:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./axis_ids").id2name,i=t("./scale_zoom"),o=t("./autorange").makePadFn,s=t("./autorange").concatExtremes,l=t("../../constants/numerical").ALMOST_EQUAL,c=t("../../constants/alignment").FROM_BL;function u(t,e,r,n,i){var o,s,l,c,u="range"!==i,h=n[a(e)].type,f=[];for(s=0;s<r.length;s++)if((l=r[s])!==e&&(c=n[a(l)]).type===h)if(c.fixedrange){if(u&&c.anchor){n[a(c.anchor)].fixedrange&&f.push(l)}}else f.push(l);for(o=0;o<t.length;o++)if(t[o][e]){var p=t[o],d=[];for(s=0;s<f.length;s++)p[l=f[s]]||d.push(l);return{linkableAxes:d,thisGroup:p}}return{linkableAxes:f,thisGroup:null}}function h(t,e,r,n,a){var i,o,s,l,c;null===e?((e={})[r]=1,c=t.length,t.push(e)):c=t.indexOf(e);var u=Object.keys(e);for(i=0;i<t.length;i++)if(s=t[i],i!==c&&s[n]){var h=s[n];for(o=0;o<u.length;o++)s[l=u[o]]=h*a*e[l];return void t.splice(c,1)}if(1!==a)for(o=0;o<u.length;o++)e[u[o]]*=a;e[n]=1}function f(t,e){var r=t._inputDomain,n=c[t.constraintoward],a=r[0]+(r[1]-r[0])*n;t.domain=t._input.domain=[a+(r[0]-a)/e,a+(r[1]-a)/e],t.setScale()}r.handleConstraintDefaults=function(t,e,r,a){var i,o,s,l,c=a.allAxisIds,f=a.layoutOut,p=a.scaleanchorDflt,d=a.constrainDflt,g=f._axisConstraintGroups,m=f._axisMatchGroups,v=e._id,y=v.charAt(0),x=((f._splomAxes||{})[y]||{})[v]||{},b=e._id,_=b.charAt(0),w=r("constrain",d);if(n.coerce(t,e,{constraintoward:{valType:"enumerated",values:"x"===_?["left","center","right"]:["bottom","middle","top"],dflt:"x"===_?"center":"middle"}},"constraintoward"),!t.matches&&!x.matches||e.fixedrange||(o=u(m,b,c,f),i=n.coerce(t,e,{matches:{valType:"enumerated",values:o.linkableAxes||[],dflt:x.matches}},"matches")),i||e.fixedrange&&"domain"!==w||!t.scaleanchor&&!p||(l=u(g,b,c,f,w),s=n.coerce(t,e,{scaleanchor:{valType:"enumerated",values:l.linkableAxes||[]}},"scaleanchor",p)),i?(delete e.constrain,h(m,o.thisGroup,b,i,1)):-1!==c.indexOf(t.matches)&&n.warn("ignored "+e._name+'.matches: "'+t.matches+'" to avoid either an infinite loop or because the target axis has fixed range.'),s){var T=r("scaleratio");T||(T=e.scaleratio=1),h(g,l.thisGroup,b,s,T)}else-1!==c.indexOf(t.scaleanchor)&&n.warn("ignored "+e._name+'.scaleanchor: "'+t.scaleanchor+'" to avoid either an infinite loop and possibly inconsistent scaleratios, or because the target axis has fixed range or this axis declares a *matches* constraint.')},r.enforce=function(t){var e,r,n,c,u,h,p,d=t._fullLayout,g=d._axisConstraintGroups||[];for(e=0;e<g.length;e++){var m=g[e],v=Object.keys(m),y=1/0,x=0,b=1/0,_={},w={},T=!1;for(r=0;r<v.length;r++)w[n=v[r]]=c=d[a(n)],c._inputDomain?c.domain=c._inputDomain.slice():c._inputDomain=c.domain.slice(),c._inputRange||(c._inputRange=c.range.slice()),c.setScale(),_[n]=u=Math.abs(c._m)/m[n],y=Math.min(y,u),"domain"!==c.constrain&&c._constraintShrinkable||(b=Math.min(b,u)),delete c._constraintShrinkable,x=Math.max(x,u),"domain"===c.constrain&&(T=!0);if(!(y>l*x)||T)for(r=0;r<v.length;r++)if(u=_[n=v[r]],h=(c=w[n]).constrain,u!==b||"domain"===h)if(p=u/b,"range"===h)i(c,p);else{var k=c._inputDomain,A=(c.domain[1]-c.domain[0])/(k[1]-k[0]),M=(c.r2l(c.range[1])-c.r2l(c.range[0]))/(c.r2l(c._inputRange[1])-c.r2l(c._inputRange[0]));if((p/=A)*M<1){c.domain=c._input.domain=k.slice(),i(c,p);continue}if(M<1&&(c.range=c._input.range=c._inputRange.slice(),p*=M),c.autorange){var S=c.r2l(c.range[0]),E=c.r2l(c.range[1]),C=(S+E)/2,L=C,P=C,I=Math.abs(E-C),z=C-I*p*1.0001,O=C+I*p*1.0001,D=o(c);f(c,p);var R,F,B=Math.abs(c._m),N=s(t,c),j=N.min,V=N.max;for(F=0;F<j.length;F++)(R=j[F].val-D(j[F])/B)>z&&R<L&&(L=R);for(F=0;F<V.length;F++)(R=V[F].val+D(V[F])/B)<O&&R>P&&(P=R);p/=(P-L)/(2*I),L=c.l2r(L),P=c.l2r(P),c.range=c._input.range=S<E?[L,P]:[P,L]}f(c,p)}}},r.clean=function(t,e){if(e._inputDomain){for(var r=!1,n=e._id,a=t._fullLayout._axisConstraintGroups,i=0;i<a.length;i++)if(a[i][n]){r=!0;break}r&&"domain"===e.constrain||(e._input.domain=e.domain=e._inputDomain,delete e._inputDomain)}}},{"../../constants/alignment":697,"../../constants/numerical":704,"../../lib":728,"./autorange":775,"./axis_ids":779,"./scale_zoom":794}],784:[function(t,e,r){"use strict";var n=t("d3"),a=t("tinycolor2"),i=t("has-passive-events"),o=t("../../registry"),s=t("../../lib"),l=t("../../lib/svg_text_utils"),c=t("../../components/color"),u=t("../../components/drawing"),h=t("../../components/fx"),f=t("./axes"),p=t("../../lib/setcursor"),d=t("../../components/dragelement"),g=t("../../components/dragelement/helpers"),m=g.selectingOrDrawing,v=g.freeMode,y=t("../../constants/alignment").FROM_TL,x=t("../../lib/clear_gl_canvases"),b=t("../../plot_api/subroutines").redrawReglTraces,_=t("../plots"),w=t("./axis_ids").getFromId,T=t("./select").prepSelect,k=t("./select").clearSelect,A=t("./select").selectOnClick,M=t("./scale_zoom"),S=t("./constants"),E=S.MINDRAG,C=S.MINZOOM,L=!0;function P(t,e,r,n){var a=s.ensureSingle(t.draglayer,e,r,(function(e){e.classed("drag",!0).style({fill:"transparent","stroke-width":0}).attr("data-subplot",t.id)}));return a.call(p,n),a.node()}function I(t,e,r,a,i,o,s){var l=P(t,"rect",e,r);return n.select(l).call(u.setRect,a,i,o,s),l}function z(t,e){for(var r=0;r<t.length;r++)if(!t[r].fixedrange)return e;return""}function O(t,e,r,n,a){for(var i=0;i<t.length;i++){var o=t[i];if(!o.fixedrange)if(o.rangebreaks){var s="y"===o._id.charAt(0),l=s?1-e:e,c=s?1-r:r;n[o._name+".range[0]"]=o.l2r(o.p2l(l*o._length)),n[o._name+".range[1]"]=o.l2r(o.p2l(c*o._length))}else{var u=o._rl[0],h=o._rl[1]-u;n[o._name+".range[0]"]=o.l2r(u+h*e),n[o._name+".range[1]"]=o.l2r(u+h*r)}}if(a&&a.length){var f=(e+(1-r))/2;O(a,f,1-f,n,[])}}function D(t,e){for(var r=0;r<t.length;r++){var n=t[r];if(!n.fixedrange)if(n.rangebreaks){var a=n._length,i=(n.p2l(0+e)-n.p2l(0)+(n.p2l(a+e)-n.p2l(a)))/2;n.range=[n.l2r(n._rl[0]-i),n.l2r(n._rl[1]-i)]}else n.range=[n.l2r(n._rl[0]-e/n._m),n.l2r(n._rl[1]-e/n._m)]}}function R(t){return 1-(t>=0?Math.min(t,.9):1/(1/Math.max(t,-.3)+3.222))}function F(t,e,r,n,a){return t.append("path").attr("class","zoombox").style({fill:e>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform","translate("+r+", "+n+")").attr("d",a+"Z")}function B(t,e,r){return t.append("path").attr("class","zoombox-corners").style({fill:c.background,stroke:c.defaultLine,"stroke-width":1,opacity:0}).attr("transform","translate("+e+", "+r+")").attr("d","M0,0Z")}function N(t,e,r,n,a,i){t.attr("d",n+"M"+r.l+","+r.t+"v"+r.h+"h"+r.w+"v-"+r.h+"h-"+r.w+"Z"),j(t,e,a,i)}function j(t,e,r,n){r||(t.transition().style("fill",n>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),e.transition().style("opacity",1).duration(200))}function V(t){n.select(t).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function U(t){L&&t.data&&t._context.showTips&&(s.notifier(s._(t,"Double-click to zoom back out"),"long"),L=!1)}function q(t){var e=Math.floor(Math.min(t.b-t.t,t.r-t.l,C)/2);return"M"+(t.l-3.5)+","+(t.t-.5+e)+"h3v"+-e+"h"+e+"v-3h-"+(e+3)+"ZM"+(t.r+3.5)+","+(t.t-.5+e)+"h-3v"+-e+"h"+-e+"v-3h"+(e+3)+"ZM"+(t.r+3.5)+","+(t.b+.5-e)+"h-3v"+e+"h"+-e+"v3h"+(e+3)+"ZM"+(t.l-3.5)+","+(t.b+.5-e)+"h3v"+e+"h"+e+"v3h-"+(e+3)+"Z"}function H(t,e,r,n){for(var a,i,o,l,c=!1,u={},h={},f=0;f<e.length;f++){var p=e[f];for(a in r)if(p[a]){for(o in p)("x"===o.charAt(0)?r:n)[o]||(u[o]=a);for(i in n)p[i]&&(c=!0)}for(i in n)if(p[i])for(l in p)("x"===l.charAt(0)?r:n)[l]||(h[l]=i)}c&&(s.extendFlat(u,h),h={});var d={},g=[];for(o in u){var m=w(t,o);g.push(m),d[m._id]=m}var v={},y=[];for(l in h){var x=w(t,l);y.push(x),v[x._id]=x}return{xaHash:d,yaHash:v,xaxes:g,yaxes:y,xLinks:u,yLinks:h,isSubplotConstrained:c}}function G(t,e){if(i){var r=void 0!==t.onwheel?"wheel":"mousewheel";t._onwheel&&t.removeEventListener(r,t._onwheel),t._onwheel=e,t.addEventListener(r,e,{passive:!1})}else void 0!==t.onwheel?t.onwheel=e:void 0!==t.onmousewheel?t.onmousewheel=e:t.isAddedWheelEvent||(t.isAddedWheelEvent=!0,t.addEventListener("wheel",e,{passive:!1}))}function Y(t){var e=[];for(var r in t)e.push(t[r]);return e}e.exports={makeDragBox:function(t,e,r,i,c,p,g,L){var P,j,W,Z,X,J,K,Q,$,tt,et,rt,nt,at,it,ot,st,lt,ct,ut,ht,ft=t._fullLayout._zoomlayer,pt=g+L==="nsew",dt=1===(g+L).length;function gt(){if(P=e.xaxis,j=e.yaxis,$=P._length,tt=j._length,K=P._offset,Q=j._offset,(W={})[P._id]=P,(Z={})[j._id]=j,g&&L)for(var r=e.overlays,n=0;n<r.length;n++){var a=r[n].xaxis;W[a._id]=a;var i=r[n].yaxis;Z[i._id]=i}X=Y(W),J=Y(Z),nt=z(X,L),at=z(J,g),it=!at&&!nt,et=H(t,t._fullLayout._axisConstraintGroups,W,Z),rt=H(t,t._fullLayout._axisMatchGroups,W,Z),ot=L||et.isSubplotConstrained||rt.isSubplotConstrained,st=g||et.isSubplotConstrained||rt.isSubplotConstrained;var o=t._fullLayout;lt=o._has("scattergl"),ct=o._has("splom"),ut=o._has("svg")}gt();var mt=function(t,e,r){if(!t)return"pointer";if("nsew"===t)return r?"":"pan"===e?"move":"crosshair";return t.toLowerCase()+"-resize"}(at+nt,t._fullLayout.dragmode,pt),vt=I(e,g+L+"drag",mt,r,i,c,p);if(it&&!pt)return vt.onmousedown=null,vt.style.pointerEvents="none",vt;var yt,xt,bt,_t,wt,Tt,kt,At,Mt,St,Et={element:vt,gd:t,plotinfo:e};function Ct(){Et.plotinfo.selection=!1,k(t)}function Lt(t,r){var a=Et.gd;if(a._fullLayout._activeShapeIndex>=0)a._fullLayout._deactivateShape(a);else{var i=a._fullLayout.clickmode;if(V(a),2!==t||dt||Vt(),pt)i.indexOf("select")>-1&&A(r,a,X,J,e.id,Et),i.indexOf("event")>-1&&h.click(a,r,e.id);else if(1===t&&dt){var s=g?j:P,c="s"===g||"w"===L?0:1,u=s._name+".range["+c+"]",f=function(t,e){var r,a=t.range[e],i=Math.abs(a-t.range[1-e]);return"date"===t.type?a:"log"===t.type?(r=Math.ceil(Math.max(0,-Math.log(i)/Math.LN10))+3,n.format("."+r+"g")(Math.pow(10,a))):(r=Math.floor(Math.log(Math.abs(a))/Math.LN10)-Math.floor(Math.log(i)/Math.LN10)+4,n.format("."+String(r)+"g")(a))}(s,c),p="left",d="middle";if(s.fixedrange)return;g?(d="n"===g?"top":"bottom","right"===s.side&&(p="right")):"e"===L&&(p="right"),a._context.showAxisRangeEntryBoxes&&n.select(vt).call(l.makeEditable,{gd:a,immediate:!0,background:a._fullLayout.paper_bgcolor,text:String(f),fill:s.tickfont?s.tickfont.color:"#444",horizontalAlign:p,verticalAlign:d}).on("edit",(function(t){var e=s.d2r(t);void 0!==e&&o.call("_guiRelayout",a,u,e)}))}}}function Pt(e,r){if(t._transitioningWithDuration)return!1;var n=Math.max(0,Math.min($,e+yt)),a=Math.max(0,Math.min(tt,r+xt)),i=Math.abs(n-yt),o=Math.abs(a-xt);function s(){kt="",bt.r=bt.l,bt.t=bt.b,Mt.attr("d","M0,0Z")}if(bt.l=Math.min(yt,n),bt.r=Math.max(yt,n),bt.t=Math.min(xt,a),bt.b=Math.max(xt,a),et.isSubplotConstrained)i>C||o>C?(kt="xy",i/$>o/tt?(o=i*tt/$,xt>a?bt.t=xt-o:bt.b=xt+o):(i=o*$/tt,yt>n?bt.l=yt-i:bt.r=yt+i),Mt.attr("d",q(bt))):s();else if(rt.isSubplotConstrained)if(i>C||o>C){kt="xy";var l=Math.min(bt.l/$,(tt-bt.b)/tt),c=Math.max(bt.r/$,(tt-bt.t)/tt);bt.l=l*$,bt.r=c*$,bt.b=(1-l)*tt,bt.t=(1-c)*tt,Mt.attr("d",q(bt))}else s();else!at||o<Math.min(Math.max(.6*i,E),C)?i<E||!nt?s():(bt.t=0,bt.b=tt,kt="x",Mt.attr("d",function(t,e){return"M"+(t.l-.5)+","+(e-C-.5)+"h-3v"+(2*C+1)+"h3ZM"+(t.r+.5)+","+(e-C-.5)+"h3v"+(2*C+1)+"h-3Z"}(bt,xt))):!nt||i<Math.min(.6*o,C)?(bt.l=0,bt.r=$,kt="y",Mt.attr("d",function(t,e){return"M"+(e-C-.5)+","+(t.t-.5)+"v-3h"+(2*C+1)+"v3ZM"+(e-C-.5)+","+(t.b+.5)+"v3h"+(2*C+1)+"v-3Z"}(bt,yt))):(kt="xy",Mt.attr("d",q(bt)));bt.w=bt.r-bt.l,bt.h=bt.b-bt.t,kt&&(St=!0),t._dragged=St,N(At,Mt,bt,wt,Tt,_t),It(),t.emit("plotly_relayouting",ht),Tt=!0}function It(){ht={},"xy"!==kt&&"x"!==kt||(O(X,bt.l/$,bt.r/$,ht,et.xaxes),Nt("x",ht)),"xy"!==kt&&"y"!==kt||(O(J,(tt-bt.b)/tt,(tt-bt.t)/tt,ht,et.yaxes),Nt("y",ht))}function zt(){It(),V(t),Ut(),U(t)}Et.prepFn=function(e,r,n){var i=Et.dragmode,o=t._fullLayout.dragmode;o!==i&&(Et.dragmode=o),gt(),it||(pt?e.shiftKey?"pan"===o?o="zoom":m(o)||(o="pan"):e.ctrlKey&&(o="pan"):o="pan"),v(o)?Et.minDrag=1:Et.minDrag=void 0,m(o)?(Et.xaxes=X,Et.yaxes=J,T(e,r,n,Et,o)):(Et.clickFn=Lt,m(i)&&Ct(),it||("zoom"===o?(Et.moveFn=Pt,Et.doneFn=zt,Et.minDrag=1,function(e,r,n){var i=vt.getBoundingClientRect();yt=r-i.left,xt=n-i.top,bt={l:yt,r:yt,w:0,t:xt,b:xt,h:0},_t=t._hmpixcount?t._hmlumcount/t._hmpixcount:a(t._fullLayout.plot_bgcolor).getLuminance(),Tt=!1,kt="xy",St=!1,At=F(ft,_t,K,Q,wt="M0,0H"+$+"V"+tt+"H0V0"),Mt=B(ft,K,Q)}(0,r,n)):"pan"===o&&(Et.moveFn=Bt,Et.doneFn=Ut))),t._fullLayout._redrag=function(){var e=t._dragdata;if(e&&e.element===vt){var r=t._fullLayout.dragmode;m(r)||(gt(),qt([0,0,$,tt]),Et.moveFn(e.dx,e.dy))}}},d.init(Et);var Ot=[0,0,$,tt],Dt=null,Rt=S.REDRAWDELAY,Ft=e.mainplot?t._fullLayout._plots[e.mainplot]:e;function Bt(e,r){if(!t._transitioningWithDuration){if(t._fullLayout._replotting=!0,"ew"===nt||"ns"===at)return nt&&(D(X,e),Nt("x")),at&&(D(J,r),Nt("y")),qt([nt?-e:0,at?-r:0,$,tt]),jt(),void t.emit("plotly_relayouting",ht);if(et.isSubplotConstrained&&nt&&at){var n="w"===nt==("n"===at)?1:-1,a=(e/$+n*r/tt)/2;e=a*$,r=n*a*tt}"w"===nt?e=l(X,0,e):"e"===nt?e=l(X,1,-e):nt||(e=0),"n"===at?r=l(J,1,r):"s"===at?r=l(J,0,-r):at||(r=0);var i="w"===nt?e:0,o="n"===at?r:0;if(et.isSubplotConstrained){var s;if(!nt&&1===at.length){for(s=0;s<X.length;s++)X[s].range=X[s]._r.slice(),M(X[s],1-r/tt);i=(e=r*$/tt)/2}if(!at&&1===nt.length){for(s=0;s<J.length;s++)J[s].range=J[s]._r.slice(),M(J[s],1-e/$);o=(r=e*tt/$)/2}}Nt("x"),Nt("y"),qt([i,o,$-e,tt-r]),jt(),t.emit("plotly_relayouting",ht)}function l(t,e,r){for(var n,a,i=1-e,o=0;o<t.length;o++){var s=t[o];if(!s.fixedrange){n=s,a=s._rl[i]+(s._rl[e]-s._rl[i])/R(r/s._length);var l=s.l2r(a);!1!==l&&void 0!==l&&(s.range[e]=l)}}return n._length*(n._rl[e]-a)/(n._rl[e]-n._rl[i])}}function Nt(t,e){for(var r=rt.isSubplotConstrained?{x:J,y:X}[t]:rt[t+"axes"],n=rt.isSubplotConstrained?{x:X,y:J}[t]:[],a=0;a<r.length;a++){var i=r[a],o=i._id,s=rt.xLinks[o]||rt.yLinks[o],l=n[0]||W[s]||Z[s];l&&(e?(e[i._name+".range[0]"]=e[l._name+".range[0]"],e[i._name+".range[1]"]=e[l._name+".range[1]"]):i.range=l.range.slice())}}function jt(){var e,r=[];function n(t){for(e=0;e<t.length;e++)t[e].fixedrange||r.push(t[e]._id)}for(ot&&(n(X),n(et.xaxes),n(rt.xaxes)),st&&(n(J),n(et.yaxes),n(rt.yaxes)),ht={},e=0;e<r.length;e++){var a=r[e],i=w(t,a);f.drawOne(t,i,{skipTitle:!0}),ht[i._name+".range[0]"]=i.range[0],ht[i._name+".range[1]"]=i.range[1]}f.redrawComponents(t,r)}function Vt(){if(!t._transitioningWithDuration){var e=t._context.doubleClick,r=[];nt&&(r=r.concat(X)),at&&(r=r.concat(J)),rt.xaxes&&(r=r.concat(rt.xaxes)),rt.yaxes&&(r=r.concat(rt.yaxes));var n,a,i,s={};if("reset+autosize"===e)for(e="autosize",a=0;a<r.length;a++)if((n=r[a])._rangeInitial&&(n.range[0]!==n._rangeInitial[0]||n.range[1]!==n._rangeInitial[1])||!n._rangeInitial&&!n.autorange){e="reset";break}if("autosize"===e)for(a=0;a<r.length;a++)(n=r[a]).fixedrange||(s[n._name+".autorange"]=!0);else if("reset"===e)for((nt||et.isSubplotConstrained)&&(r=r.concat(et.xaxes)),at&&!et.isSubplotConstrained&&(r=r.concat(et.yaxes)),et.isSubplotConstrained&&(nt?at||(r=r.concat(J)):r=r.concat(X)),a=0;a<r.length;a++)(n=r[a]).fixedrange||(n._rangeInitial?(i=n._rangeInitial,s[n._name+".range[0]"]=i[0],s[n._name+".range[1]"]=i[1]):s[n._name+".autorange"]=!0);t.emit("plotly_doubleclick",null),o.call("_guiRelayout",t,s)}}function Ut(){qt([0,0,$,tt]),s.syncOrAsync([_.previousPromises,function(){t._fullLayout._replotting=!1,o.call("_guiRelayout",t,ht)}],t)}function qt(e){var r,n,a,i,l=t._fullLayout,c=l._plots,h=l._subplots.cartesian;if(ct&&o.subplotsRegistry.splom.drag(t),lt)for(r=0;r<h.length;r++)if(a=(n=c[h[r]]).xaxis,i=n.yaxis,n._scene){var f=s.simpleMap(a.range,a.r2l),p=s.simpleMap(i.range,i.r2l);n._scene.update({range:[f[0],p[0],f[1],p[1]]})}if((ct||lt)&&(x(t),b(t)),ut){var d=e[2]/P._length,m=e[3]/j._length;for(r=0;r<h.length;r++){a=(n=c[h[r]]).xaxis,i=n.yaxis;var v,y,_,w,T=ot&&!a.fixedrange&&W[a._id],k=st&&!i.fixedrange&&Z[i._id];if(T?(v=d,_=L?e[0]:Yt(a,v)):rt.xaHash[a._id]?(v=d,_=e[0]*a._length/P._length):rt.yaHash[a._id]?(v=m,_="ns"===at?-e[1]*a._length/j._length:Yt(a,v,{n:"top",s:"bottom"}[at])):_=Gt(a,v=Ht(a,d,m)),k?(y=m,w=g?e[1]:Yt(i,y)):rt.yaHash[i._id]?(y=m,w=e[1]*i._length/j._length):rt.xaHash[i._id]?(y=d,w="ew"===nt?-e[0]*i._length/P._length:Yt(i,y,{e:"right",w:"left"}[nt])):w=Gt(i,y=Ht(i,d,m)),v||y){v||(v=1),y||(y=1);var A=a._offset-_/v,M=i._offset-w/y;n.clipRect.call(u.setTranslate,_,w).call(u.setScale,v,y),n.plot.call(u.setTranslate,A,M).call(u.setScale,1/v,1/y),v===n.xScaleFactor&&y===n.yScaleFactor||(u.setPointGroupScale(n.zoomScalePts,v,y),u.setTextPointsScale(n.zoomScaleTxt,v,y)),u.hideOutsideRangePoints(n.clipOnAxisFalseTraces,n),n.xScaleFactor=v,n.yScaleFactor=y}}}}function Ht(t,e,r){return t.fixedrange?0:ot&&et.xaHash[t._id]?e:st&&(et.isSubplotConstrained?et.xaHash:et.yaHash)[t._id]?r:0}function Gt(t,e){return e?(t.range=t._r.slice(),M(t,e),Yt(t,e)):0}function Yt(t,e,r){return t._length*(1-e)*y[r||t.constraintoward||"middle"]}return g.length*L.length!=1&&G(vt,(function(e){if(t._context._scrollZoom.cartesian||t._fullLayout._enablescrollzoom){if(Ct(),t._transitioningWithDuration)return e.preventDefault(),void e.stopPropagation();gt(),clearTimeout(Dt);var r=-e.deltaY;if(isFinite(r)||(r=e.wheelDelta/10),isFinite(r)){var n,a=Math.exp(-Math.min(Math.max(r,-20),20)/200),i=Ft.draglayer.select(".nsewdrag").node().getBoundingClientRect(),o=(e.clientX-i.left)/i.width,l=(i.bottom-e.clientY)/i.height;if(ot){for(L||(o=.5),n=0;n<X.length;n++)c(X[n],o,a);Nt("x"),Ot[2]*=a,Ot[0]+=Ot[2]*o*(1/a-1)}if(st){for(g||(l=.5),n=0;n<J.length;n++)c(J[n],l,a);Nt("y"),Ot[3]*=a,Ot[1]+=Ot[3]*(1-l)*(1/a-1)}qt(Ot),jt(),t.emit("plotly_relayouting",ht),Dt=setTimeout((function(){Ot=[0,0,$,tt],Ut()}),Rt),e.preventDefault()}else s.log("Did not find wheel motion attributes: ",e)}function c(t,e,r){if(!t.fixedrange){var n=s.simpleMap(t.range,t.r2l),a=n[0]+(n[1]-n[0])*e;t.range=n.map((function(e){return t.l2r(a+(e-a)*r)}))}}})),vt},makeDragger:P,makeRectDragger:I,makeZoombox:F,makeCorners:B,updateZoombox:N,xyCorners:q,transitionZoombox:j,removeZoombox:V,showDoubleClickNotifier:U,attachWheelEventHandler:G}},{"../../components/color":595,"../../components/dragelement":614,"../../components/dragelement/helpers":613,"../../components/drawing":617,"../../components/fx":635,"../../constants/alignment":697,"../../lib":728,"../../lib/clear_gl_canvases":713,"../../lib/setcursor":748,"../../lib/svg_text_utils":752,"../../plot_api/subroutines":767,"../../registry":859,"../plots":839,"./axes":776,"./axis_ids":779,"./constants":782,"./scale_zoom":794,"./select":795,d3:164,"has-passive-events":410,tinycolor2:528}],785:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../components/fx"),i=t("../../components/dragelement"),o=t("../../lib/setcursor"),s=t("./dragbox").makeDragBox,l=t("./constants").DRAGGERSIZE;r.initInteractions=function(t){var e=t._fullLayout;if(t._context.staticPlot)n.select(t).selectAll(".drag").remove();else if(e._has("cartesian")||e._has("splom")){Object.keys(e._plots||{}).sort((function(t,r){if((e._plots[t].mainplot&&!0)===(e._plots[r].mainplot&&!0)){var n=t.split("y"),a=r.split("y");return n[0]===a[0]?Number(n[1]||1)-Number(a[1]||1):Number(n[0]||1)-Number(a[0]||1)}return e._plots[t].mainplot?1:-1})).forEach((function(r){var n=e._plots[r],o=n.xaxis,c=n.yaxis;if(!n.mainplot){var u=s(t,n,o._offset,c._offset,o._length,c._length,"ns","ew");u.onmousemove=function(e){t._fullLayout._rehover=function(){t._fullLayout._hoversubplot===r&&t._fullLayout._plots[r]&&a.hover(t,e,r)},a.hover(t,e,r),t._fullLayout._lasthover=u,t._fullLayout._hoversubplot=r},u.onmouseout=function(e){t._dragging||(t._fullLayout._hoversubplot=null,i.unhover(t,e))},t._context.showAxisDragHandles&&(s(t,n,o._offset-l,c._offset-l,l,l,"n","w"),s(t,n,o._offset+o._length,c._offset-l,l,l,"n","e"),s(t,n,o._offset-l,c._offset+c._length,l,l,"s","w"),s(t,n,o._offset+o._length,c._offset+c._length,l,l,"s","e"))}if(t._context.showAxisDragHandles){if(r===o._mainSubplot){var h=o._mainLinePosition;"top"===o.side&&(h-=l),s(t,n,o._offset+.1*o._length,h,.8*o._length,l,"","ew"),s(t,n,o._offset,h,.1*o._length,l,"","w"),s(t,n,o._offset+.9*o._length,h,.1*o._length,l,"","e")}if(r===c._mainSubplot){var f=c._mainLinePosition;"right"!==c.side&&(f-=l),s(t,n,f,c._offset+.1*c._length,l,.8*c._length,"ns",""),s(t,n,f,c._offset+.9*c._length,l,.1*c._length,"s",""),s(t,n,f,c._offset,l,.1*c._length,"n","")}}}));var o=e._hoverlayer.node();o.onmousemove=function(r){r.target=t._fullLayout._lasthover,a.hover(t,r,e._hoversubplot)},o.onclick=function(e){e.target=t._fullLayout._lasthover,a.click(t,e)},o.onmousedown=function(e){t._fullLayout._lasthover.onmousedown(e)},r.updateFx(t)}},r.updateFx=function(t){var e=t._fullLayout,r="pan"===e.dragmode?"move":"crosshair";o(e._draggers,r)}},{"../../components/dragelement":614,"../../components/fx":635,"../../lib/setcursor":748,"./constants":782,"./dragbox":784,d3:164}],786:[function(t,e,r){"use strict";e.exports={clearOutlineControllers:function(t){var e=t._fullLayout._zoomlayer;e&&e.selectAll(".outline-controllers").remove()},clearSelect:function(t){var e=t._fullLayout._zoomlayer;e&&e.selectAll(".select-outline").remove(),t._fullLayout._drawing=!1}}},{}],787:[function(t,e,r){"use strict";function n(t,e){switch(t.type){case"log":return t.p2d(e);case"date":return t.p2r(e,0,t.calendar);default:return t.p2r(e)}}e.exports={p2r:n,r2p:function(t,e){switch(t.type){case"log":return t.d2p(e);case"date":return t.r2p(e,0,t.calendar);default:return t.r2p(e)}},axValue:function(t){var e="y"===t._id.charAt(0)?1:0;return function(r){return n(t,r[e])}},getTransform:function(t){return"translate("+t.xaxis._offset+","+t.yaxis._offset+")"}}},{}],788:[function(t,e,r){"use strict";var n=t("../../registry"),a=t("../../lib");e.exports=function(t){return function(e,r){var i=e[t];if(Array.isArray(i))for(var o=n.subplotsRegistry.cartesian,s=o.idRegex,l=r._subplots,c=l.xaxis,u=l.yaxis,h=l.cartesian,f=r._has("cartesian")||r._has("gl2d"),p=0;p<i.length;p++){var d=i[p];if(a.isPlainObject(d)){var g=d.xref,m=d.yref,v=s.x.test(g),y=s.y.test(m);if(v||y){f||a.pushUnique(r._basePlotModules,o);var x=!1;v&&-1===c.indexOf(g)&&(c.push(g),x=!0),y&&-1===u.indexOf(m)&&(u.push(m),x=!0),x&&v&&y&&h.push(g+m)}}}}}},{"../../lib":728,"../../registry":859}],789:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../registry"),i=t("../../lib"),o=t("../plots"),s=t("../../components/drawing"),l=t("../get_data").getModuleCalcData,c=t("./axis_ids"),u=t("./constants"),h=t("../../constants/xmlns_namespaces"),f=i.ensureSingle;function p(t,e,r){return i.ensureSingle(t,e,r,(function(t){t.datum(r)}))}function d(t,e,r,i,o){for(var c,h,f,p=u.traceLayerClasses,d=t._fullLayout,g=d._modules,m=[],v=[],y=0;y<g.length;y++){var x=(c=g[y]).name,b=a.modules[x].categories;if(b.svg){var _=c.layerName||x+"layer",w=c.plot;f=(h=l(r,w))[0],r=h[1],f.length&&m.push({i:p.indexOf(_),className:_,plotMethod:w,cdModule:f}),b.zoomScale&&v.push("."+_)}}m.sort((function(t,e){return t.i-e.i}));var T=e.plot.selectAll("g.mlayer").data(m,(function(t){return t.className}));if(T.enter().append("g").attr("class",(function(t){return t.className})).classed("mlayer",!0).classed("rangeplot",e.isRangePlot),T.exit().remove(),T.order(),T.each((function(r){var a=n.select(this),l=r.className;r.plotMethod(t,e,r.cdModule,a,i,o),-1===u.clipOnAxisFalseQuery.indexOf("."+l)&&s.setClipUrl(a,e.layerClipId,t)})),d._has("scattergl")&&(c=a.getModule("scattergl"),f=l(r,c)[0],c.plot(t,e,f)),!t._context.staticPlot&&(e._hasClipOnAxisFalse&&(e.clipOnAxisFalseTraces=e.plot.selectAll(u.clipOnAxisFalseQuery.join(",")).selectAll(".trace")),v.length)){var k=e.plot.selectAll(v.join(",")).selectAll(".trace");e.zoomScalePts=k.selectAll("path.point"),e.zoomScaleTxt=k.selectAll(".textpoint")}}function g(t,e){var r=e.plotgroup,n=e.id,a=u.layerValue2layerClass[e.xaxis.layer],i=u.layerValue2layerClass[e.yaxis.layer],o=t._fullLayout._hasOnlyLargeSploms;if(e.mainplot){var s=e.mainplotinfo,l=s.plotgroup,h=n+"-x",d=n+"-y";e.gridlayer=s.gridlayer,e.zerolinelayer=s.zerolinelayer,f(s.overlinesBelow,"path",h),f(s.overlinesBelow,"path",d),f(s.overaxesBelow,"g",h),f(s.overaxesBelow,"g",d),e.plot=f(s.overplot,"g",n),f(s.overlinesAbove,"path",h),f(s.overlinesAbove,"path",d),f(s.overaxesAbove,"g",h),f(s.overaxesAbove,"g",d),e.xlines=l.select(".overlines-"+a).select("."+h),e.ylines=l.select(".overlines-"+i).select("."+d),e.xaxislayer=l.select(".overaxes-"+a).select("."+h),e.yaxislayer=l.select(".overaxes-"+i).select("."+d)}else if(o)e.xlines=f(r,"path","xlines-above"),e.ylines=f(r,"path","ylines-above"),e.xaxislayer=f(r,"g","xaxislayer-above"),e.yaxislayer=f(r,"g","yaxislayer-above");else{var g=f(r,"g","layer-subplot");e.shapelayer=f(g,"g","shapelayer"),e.imagelayer=f(g,"g","imagelayer"),e.gridlayer=f(r,"g","gridlayer"),e.zerolinelayer=f(r,"g","zerolinelayer"),f(r,"path","xlines-below"),f(r,"path","ylines-below"),e.overlinesBelow=f(r,"g","overlines-below"),f(r,"g","xaxislayer-below"),f(r,"g","yaxislayer-below"),e.overaxesBelow=f(r,"g","overaxes-below"),e.plot=f(r,"g","plot"),e.overplot=f(r,"g","overplot"),e.xlines=f(r,"path","xlines-above"),e.ylines=f(r,"path","ylines-above"),e.overlinesAbove=f(r,"g","overlines-above"),f(r,"g","xaxislayer-above"),f(r,"g","yaxislayer-above"),e.overaxesAbove=f(r,"g","overaxes-above"),e.xlines=r.select(".xlines-"+a),e.ylines=r.select(".ylines-"+i),e.xaxislayer=r.select(".xaxislayer-"+a),e.yaxislayer=r.select(".yaxislayer-"+i)}o||(p(e.gridlayer,"g",e.xaxis._id),p(e.gridlayer,"g",e.yaxis._id),e.gridlayer.selectAll("g").map((function(t){return t[0]})).sort(c.idSort)),e.xlines.style("fill","none").classed("crisp",!0),e.ylines.style("fill","none").classed("crisp",!0)}function m(t,e){if(t){var r={};for(var a in t.each((function(t){var a=t[0];n.select(this).remove(),v(a,e),r[a]=!0})),e._plots)for(var i=e._plots[a].overlays||[],o=0;o<i.length;o++){var s=i[o];r[s.id]&&s.plot.selectAll(".trace").remove()}}}function v(t,e){e._draggers.selectAll("g."+t).remove(),e._defs.select("#clip"+e._uid+t+"plot").remove()}r.name="cartesian",r.attr=["xaxis","yaxis"],r.idRoot=["x","y"],r.idRegex=u.idRegex,r.attrRegex=u.attrRegex,r.attributes=t("./attributes"),r.layoutAttributes=t("./layout_attributes"),r.supplyLayoutDefaults=t("./layout_defaults"),r.transitionAxes=t("./transition_axes"),r.finalizeSubplots=function(t,e){var r,n,a,o=e._subplots,s=o.xaxis,l=o.yaxis,h=o.cartesian,f=h.concat(o.gl2d||[]),p={},d={};for(r=0;r<f.length;r++){var g=f[r].split("y");p[g[0]]=1,d["y"+g[1]]=1}for(r=0;r<s.length;r++)p[n=s[r]]||(a=(t[c.id2name(n)]||{}).anchor,u.idRegex.y.test(a)||(a="y"),h.push(n+a),f.push(n+a),d[a]||(d[a]=1,i.pushUnique(l,a)));for(r=0;r<l.length;r++)d[a=l[r]]||(n=(t[c.id2name(a)]||{}).anchor,u.idRegex.x.test(n)||(n="x"),h.push(n+a),f.push(n+a),p[n]||(p[n]=1,i.pushUnique(s,n)));if(!f.length){for(var m in n="",a="",t){if(u.attrRegex.test(m))"x"===m.charAt(0)?(!n||+m.substr(5)<+n.substr(5))&&(n=m):(!a||+m.substr(5)<+a.substr(5))&&(a=m)}n=n?c.name2id(n):"x",a=a?c.name2id(a):"y",s.push(n),l.push(a),h.push(n+a)}},r.plot=function(t,e,r,n){var a,i=t._fullLayout,o=i._subplots.cartesian,s=t.calcdata;if(!Array.isArray(e))for(e=[],a=0;a<s.length;a++)e.push(a);for(a=0;a<o.length;a++){for(var l,c=o[a],u=i._plots[c],h=[],f=0;f<s.length;f++){var p=s[f],g=p[0].trace;g.xaxis+g.yaxis===c&&((-1!==e.indexOf(g.index)||g.carpet)&&(l&&l[0].trace.xaxis+l[0].trace.yaxis===c&&-1!==["tonextx","tonexty","tonext"].indexOf(g.fill)&&-1===h.indexOf(l)&&h.push(l),h.push(p)),l=p)}d(t,u,h,r,n)}},r.clean=function(t,e,r,n){var a,i,o,s=n._plots||{},l=e._plots||{},u=n._subplots||{};if(n._hasOnlyLargeSploms&&!e._hasOnlyLargeSploms)for(o in s)(a=s[o]).plotgroup&&a.plotgroup.remove();var h=n._has&&n._has("gl"),f=e._has&&e._has("gl");if(h&&!f)for(o in s)(a=s[o])._scene&&a._scene.destroy();if(u.xaxis&&u.yaxis){var p=c.listIds({_fullLayout:n});for(i=0;i<p.length;i++){var d=p[i];e[c.id2name(d)]||n._infolayer.selectAll(".g-"+d+"title").remove()}}var g=n._has&&n._has("cartesian"),y=e._has&&e._has("cartesian");if(g&&!y)m(n._cartesianlayer.selectAll(".subplot"),n),n._defs.selectAll(".axesclip").remove(),delete n._axisConstraintGroups;else if(u.cartesian)for(i=0;i<u.cartesian.length;i++){var x=u.cartesian[i];if(!l[x]){var b="."+x+",."+x+"-x,."+x+"-y";n._cartesianlayer.selectAll(b).remove(),v(x,n)}}},r.drawFramework=function(t){var e=t._fullLayout,r=function(t){var e,r,n,a,i,o,s=t._fullLayout,l=s._subplots.cartesian,c=l.length,u=[],h=[];for(e=0;e<c;e++){n=l[e],a=s._plots[n],i=a.xaxis,o=a.yaxis;var f=i._mainAxis,p=o._mainAxis,d=f._id+p._id,g=s._plots[d];a.overlays=[],d!==n&&g?(a.mainplot=d,a.mainplotinfo=g,h.push(n)):(a.mainplot=void 0,a.mainPlotinfo=void 0,u.push(n))}for(e=0;e<h.length;e++)n=h[e],(a=s._plots[n]).mainplotinfo.overlays.push(a);var m=u.concat(h),v=new Array(c);for(e=0;e<c;e++){n=m[e],a=s._plots[n],i=a.xaxis,o=a.yaxis;var y=[n,i.layer,o.layer,i.overlaying||"",o.overlaying||""];for(r=0;r<a.overlays.length;r++)y.push(a.overlays[r].id);v[e]=y}return v}(t),a=e._cartesianlayer.selectAll(".subplot").data(r,String);a.enter().append("g").attr("class",(function(t){return"subplot "+t[0]})),a.order(),a.exit().call(m,e),a.each((function(r){var a=r[0],i=e._plots[a];i.plotgroup=n.select(this),g(t,i),i.draglayer=f(e._draggers,"g",a)}))},r.rangePlot=function(t,e,r){g(t,e),d(t,e,r),o.style(t)},r.toSVG=function(t){var e=t._fullLayout._glimages,r=n.select(t).selectAll(".svg-container");r.filter((function(t,e){return e===r.size()-1})).selectAll(".gl-canvas-context, .gl-canvas-focus").each((function(){var t=this.toDataURL("image/png");e.append("svg:image").attr({xmlns:h.svg,"xlink:href":t,preserveAspectRatio:"none",x:0,y:0,width:this.width,height:this.height})}))},r.updateFx=t("./graph_interact").updateFx},{"../../components/drawing":617,"../../constants/xmlns_namespaces":705,"../../lib":728,"../../registry":859,"../get_data":813,"../plots":839,"./attributes":774,"./axis_ids":779,"./constants":782,"./graph_interact":785,"./layout_attributes":790,"./layout_defaults":791,"./transition_axes":800,d3:164}],790:[function(t,e,r){"use strict";var n=t("../font_attributes"),a=t("../../components/color/attributes"),i=t("../../components/drawing/attributes").dash,o=t("../../lib/extend").extendFlat,s=t("../../plot_api/plot_template").templatedArray,l=(t("../../constants/docs").FORMAT_LINK,t("../../constants/docs").DATE_FORMAT_LINK,t("../../constants/numerical").ONEDAY),c=t("./constants"),u=c.HOUR_PATTERN,h=c.WEEKDAY_PATTERN;e.exports={visible:{valType:"boolean",editType:"plot"},color:{valType:"color",dflt:a.defaultLine,editType:"ticks"},title:{text:{valType:"string",editType:"ticks"},font:n({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},autorange:{valType:"enumerated",values:[!0,!1,"reversed"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},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},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},scaleanchor:{valType:"enumerated",values:[c.idRegex.x.toString(),c.idRegex.y.toString()],editType:"plot"},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot"},constrain:{valType:"enumerated",values:["range","domain"],dflt:"range",editType:"plot"},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot"},matches:{valType:"enumerated",values:[c.idRegex.x.toString(),c.idRegex.y.toString()],editType:"calc"},rangebreaks:s("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:[h,u,""],editType:"calc"},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"}},dvalue:{valType:"number",editType:"calc",min:0,dflt:l},editType:"calc"}),tickmode:{valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0}},nticks:{valType:"integer",min:0,dflt:0,editType:"ticks"},tick0:{valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},dtick:{valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},tickvals:{valType:"data_array",editType:"ticks"},ticktext:{valType:"data_array",editType:"ticks"},ticks:{valType:"enumerated",values:["outside","inside",""],editType:"ticks"},tickson:{valType:"enumerated",values:["labels","boundaries"],dflt:"labels",editType:"ticks"},mirror:{valType:"enumerated",values:[!0,"ticks",!1,"all","allticks"],dflt:!1,editType:"ticks+layoutstyle"},ticklen:{valType:"number",min:0,dflt:5,editType:"ticks"},tickwidth:{valType:"number",min:0,dflt:1,editType:"ticks"},tickcolor:{valType:"color",dflt:a.defaultLine,editType:"ticks"},showticklabels:{valType:"boolean",dflt:!0,editType:"ticks"},automargin:{valType:"boolean",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:o({},i,{dflt:"dash",editType:"none"}),spikemode:{valType:"flaglist",flags:["toaxis","across","marker"],dflt:"toaxis",editType:"none"},spikesnap:{valType:"enumerated",values:["data","cursor","hovered data"],dflt:"data",editType:"none"},tickfont:n({editType:"ticks"}),tickangle:{valType:"angle",dflt:"auto",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"],dflt:"B",editType:"ticks"},separatethousands:{valType:"boolean",dflt:!1,editType:"ticks"},tickformat:{valType:"string",dflt:"",editType:"ticks"},tickformatstops:s("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"},showline:{valType:"boolean",dflt:!1,editType:"ticks+layoutstyle"},linecolor:{valType:"color",dflt:a.defaultLine,editType:"layoutstyle"},linewidth:{valType:"number",min:0,dflt:1,editType:"ticks+layoutstyle"},showgrid:{valType:"boolean",editType:"ticks"},gridcolor:{valType:"color",dflt:a.lightLine,editType:"ticks"},gridwidth:{valType:"number",min:0,dflt:1,editType:"ticks"},zeroline:{valType:"boolean",editType:"ticks"},zerolinecolor:{valType:"color",dflt:a.defaultLine,editType:"ticks"},zerolinewidth:{valType:"number",dflt:1,editType:"ticks"},showdividers:{valType:"boolean",dflt:!0,editType:"ticks"},dividercolor:{valType:"color",dflt:a.defaultLine,editType:"ticks"},dividerwidth:{valType:"number",dflt:1,editType:"ticks"},anchor:{valType:"enumerated",values:["free",c.idRegex.x.toString(),c.idRegex.y.toString()],editType:"plot"},side:{valType:"enumerated",values:["top","bottom","left","right"],editType:"plot"},overlaying:{valType:"enumerated",values:["free",c.idRegex.x.toString(),c.idRegex.y.toString()],editType:"plot"},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"},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","median ascending","median descending"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},uirevision:{valType:"any",editType:"none"},editType:"calc",_deprecated:{autotick:{valType:"boolean",editType:"ticks"},title:{valType:"string",editType:"ticks"},titlefont:n({editType:"ticks"})}}},{"../../components/color/attributes":594,"../../components/drawing/attributes":616,"../../constants/docs":699,"../../constants/numerical":704,"../../lib/extend":719,"../../plot_api/plot_template":766,"../font_attributes":804,"./constants":782}],791:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../components/color"),i=t("../../components/fx/helpers").isUnifiedHover,o=t("../../components/fx/hovermode_defaults"),s=t("../../plot_api/plot_template"),l=t("../layout_attributes"),c=t("./layout_attributes"),u=t("./type_defaults"),h=t("./axis_defaults"),f=t("./constraints").handleConstraintDefaults,p=t("./position_defaults"),d=t("./axis_ids"),g=d.id2name,m=d.name2id,v=t("./constants").AX_ID_PATTERN,y=t("../../registry"),x=y.traceIs,b=y.getComponentMethod;function _(t,e,r){Array.isArray(t[e])?t[e].push(r):t[e]=[r]}e.exports=function(t,e,r){var d,y,w={},T={},k={},A={},M={},S={},E={},C={},L={},P={};for(d=0;d<r.length;d++){var I=r[d];if(x(I,"cartesian")||x(I,"gl2d")){var z,O;if(I.xaxis)z=g(I.xaxis),_(w,z,I);else if(I.xaxes)for(y=0;y<I.xaxes.length;y++)_(w,g(I.xaxes[y]),I);if(I.yaxis)O=g(I.yaxis),_(w,O,I);else if(I.yaxes)for(y=0;y<I.yaxes.length;y++)_(w,g(I.yaxes[y]),I);if("funnel"===I.type?"h"===I.orientation?(z&&(T[z]=!0),O&&(E[O]=!0)):O&&(k[O]=!0):"image"===I.type?(O&&(C[O]=!0),z&&(C[z]=!0)):(O&&(M[O]=!0,S[O]=!0),x(I,"carpet")&&("carpet"!==I.type||I._cheater)||z&&(A[z]=!0)),"carpet"===I.type&&I._cheater&&z&&(T[z]=!0),x(I,"2dMap")&&(L[z]=!0,L[O]=!0),x(I,"oriented"))P["h"===I.orientation?O:z]=!0}}var D=e._subplots,R=D.xaxis,F=D.yaxis,B=n.simpleMap(R,g),N=n.simpleMap(F,g),j=B.concat(N),V=a.background;R.length&&F.length&&(V=n.coerce(t,e,l,"plot_bgcolor"));var U,q,H,G,Y,W=a.combine(V,e.paper_bgcolor);function Z(){var t=w[U]||[];Y._traceIndices=t.map((function(t){return t._expandedIndex})),Y._annIndices=[],Y._shapeIndices=[],Y._imgIndices=[],Y._subplotsWith=[],Y._counterAxes=[],Y._name=Y._attr=U,Y._id=q}function X(t,e){return n.coerce(G,Y,c,t,e)}function J(t,e){return n.coerce2(G,Y,c,t,e)}function K(t){return"x"===t?F:R}function Q(e,r){for(var n="x"===e?B:N,a=[],i=0;i<n.length;i++){var o=n[i];o===r||(t[o]||{}).overlaying||a.push(m(o))}return a}var $={x:K("x"),y:K("y")},tt=$.x.concat($.y),et={},rt=[];function nt(){var t=G.matches;v.test(t)&&-1===tt.indexOf(t)&&(et[t]=G.type,rt=Object.keys(et))}var at=o(t,e,r),it=i(at);for(d=0;d<j.length;d++){U=j[d],q=m(U),H=U.charAt(0),n.isPlainObject(t[U])||(t[U]={}),G=t[U],Y=s.newContainer(e,U,H+"axis"),Z();var ot="x"===H&&!A[U]&&T[U]||"y"===H&&!M[U]&&k[U],st="y"===H&&(!S[U]&&E[U]||C[U]),lt={letter:H,font:e.font,outerTicks:L[U],showGrid:!P[U],data:w[U]||[],bgColor:W,calendar:e.calendar,automargin:!0,visibleDflt:ot,reverseDflt:st,splomStash:((e._splomAxes||{})[H]||{})[q]};X("uirevision",e.uirevision),u(G,Y,X,lt),h(G,Y,X,lt,e);var ct=it&&H===at.charAt(0),ut=J("spikecolor",it?Y.color:void 0),ht=J("spikethickness",it?1.5:void 0),ft=J("spikedash",it?"dot":void 0),pt=J("spikemode",it?"across":void 0),dt=J("spikesnap",it?"hovered data":void 0);X("showspikes",!!(ct||ut||ht||ft||pt||dt))||(delete Y.spikecolor,delete Y.spikethickness,delete Y.spikedash,delete Y.spikemode,delete Y.spikesnap),p(G,Y,X,{letter:H,counterAxes:$[H],overlayableAxes:Q(H,U),grid:e.grid}),X("title.standoff"),nt(),Y._input=G}for(d=0;d<rt.length;){q=rt[d++],H=(U=g(q)).charAt(0),n.isPlainObject(t[U])||(t[U]={}),G=t[U],Y=s.newContainer(e,U,H+"axis"),Z();var gt={letter:H,font:e.font,outerTicks:L[U],showGrid:!P[U],data:[],bgColor:W,calendar:e.calendar,automargin:!0,visibleDflt:!1,reverseDflt:!1,splomStash:((e._splomAxes||{})[H]||{})[q]};X("uirevision",e.uirevision),Y.type=et[q]||"linear",h(G,Y,X,gt,e),p(G,Y,X,{letter:H,counterAxes:$[H],overlayableAxes:Q(H,U),grid:e.grid}),X("fixedrange"),nt(),Y._input=G}var mt=b("rangeslider","handleDefaults"),vt=b("rangeselector","handleDefaults");for(d=0;d<B.length;d++)U=B[d],G=t[U],Y=e[U],mt(t,e,U),"date"===Y.type&&vt(G,Y,e,N,Y.calendar),X("fixedrange");for(d=0;d<N.length;d++){U=N[d],G=t[U],Y=e[U];var yt=e[g(Y.anchor)];X("fixedrange",b("rangeslider","isVisible")(yt))}var xt=e._axisConstraintGroups=[],bt=e._axisMatchGroups=[],_t=tt.concat(rt),wt=j.concat(n.simpleMap(rt,g));for(d=0;d<wt.length;d++){var Tt,kt;H=(U=wt[d]).charAt(0),G=t[U],Y=e[U],Tt="y"===H&&!G.hasOwnProperty("scaleanchor")&&C[U]?Y.anchor:void 0,kt=!G.hasOwnProperty("constrain")&&C[U]?"domain":void 0,f(G,Y,X,{allAxisIds:_t,layoutOut:e,scaleanchorDflt:Tt,constrainDflt:kt})}for(d=0;d<bt.length;d++){var At=bt[d],Mt=null,St=null;for(q in At)(Y=e[g(q)]).matches||(Mt=Y.range,St=Y.autorange);if(null===Mt||null===St)for(q in At){Mt=(Y=e[g(q)]).range,St=Y.autorange;break}for(q in At)(Y=e[g(q)]).matches&&(Y.range=Mt.slice(),Y.autorange=St),Y._matchGroup=At;if(xt.length)for(q in At)for(y=0;y<xt.length;y++){var Et=xt[y];for(var Ct in Et)q===Ct&&(n.warn("Axis "+Ct+" is set with both a *scaleanchor* and *matches* constraint; ignoring the scale constraint."),delete Et[Ct],Object.keys(Et).length<2&&xt.splice(y,1))}}}},{"../../components/color":595,"../../components/fx/helpers":631,"../../components/fx/hovermode_defaults":634,"../../lib":728,"../../plot_api/plot_template":766,"../../registry":859,"../layout_attributes":830,"./axis_defaults":778,"./axis_ids":779,"./constants":782,"./constraints":783,"./layout_attributes":790,"./position_defaults":793,"./type_defaults":801}],792:[function(t,e,r){"use strict";var n=t("tinycolor2").mix,a=t("../../components/color/attributes").lightFraction,i=t("../../lib");e.exports=function(t,e,r,o){var s=(o=o||{}).dfltColor;function l(r,n){return i.coerce2(t,e,o.attributes,r,n)}var c=l("linecolor",s),u=l("linewidth");r("showline",o.showLine||!!c||!!u)||(delete e.linecolor,delete e.linewidth);var h=l("gridcolor",n(s,o.bgColor,o.blend||a).toRgbString()),f=l("gridwidth");if(r("showgrid",o.showGrid||!!h||!!f)||(delete e.gridcolor,delete e.gridwidth),!o.noZeroLine){var p=l("zerolinecolor",s),d=l("zerolinewidth");r("zeroline",o.showGrid||!!p||!!d)||(delete e.zerolinecolor,delete e.zerolinewidth)}}},{"../../components/color/attributes":594,"../../lib":728,tinycolor2:528}],793:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../../lib");e.exports=function(t,e,r,i){var o,s,l,c,u=i.counterAxes||[],h=i.overlayableAxes||[],f=i.letter,p=i.grid;p&&(s=p._domains[f][p._axisMap[e._id]],o=p._anchors[e._id],s&&(l=p[f+"side"].split(" ")[0],c=p.domain[f]["right"===l||"top"===l?1:0])),s=s||[0,1],o=o||(n(t.position)?"free":u[0]||"free"),l=l||("x"===f?"bottom":"left"),c=c||0,"free"===a.coerce(t,e,{anchor:{valType:"enumerated",values:["free"].concat(u),dflt:o}},"anchor")&&r("position",c),a.coerce(t,e,{side:{valType:"enumerated",values:"x"===f?["bottom","top"]:["left","right"],dflt:l}},"side");var d=!1;if(h.length&&(d=a.coerce(t,e,{overlaying:{valType:"enumerated",values:[!1].concat(h),dflt:!1}},"overlaying")),!d){var g=r("domain",s);g[0]>g[1]-1/4096&&(e.domain=s),a.noneOrAll(t.domain,e.domain,s)}return r("layer"),e}},{"../../lib":728,"fast-isnumeric":236}],794:[function(t,e,r){"use strict";var n=t("../../constants/alignment").FROM_BL;e.exports=function(t,e,r){void 0===r&&(r=n[t.constraintoward||"center"]);var a=[t.r2l(t.range[0]),t.r2l(t.range[1])],i=a[0]+(a[1]-a[0])*r;t.range=t._input.range=[t.l2r(i+(a[0]-i)*e),t.l2r(i+(a[1]-i)*e)]}},{"../../constants/alignment":697}],795:[function(t,e,r){"use strict";var n=t("polybooljs"),a=t("../../registry"),i=t("../../components/drawing").dashStyle,o=t("../../components/color"),s=t("../../components/fx"),l=t("../../components/fx/helpers").makeEventData,c=t("../../components/dragelement/helpers"),u=c.freeMode,h=c.rectMode,f=c.drawMode,p=c.openMode,d=c.selectMode,g=t("../../components/shapes/draw_newshape/display_outlines"),m=t("../../components/shapes/draw_newshape/helpers").handleEllipse,v=t("../../components/shapes/draw_newshape/newshapes"),y=t("../../lib"),x=t("../../lib/polygon"),b=t("../../lib/throttle"),_=t("./axis_ids").getFromId,w=t("../../lib/clear_gl_canvases"),T=t("../../plot_api/subroutines").redrawReglTraces,k=t("./constants"),A=k.MINSELECT,M=x.filter,S=x.tester,E=t("./handle_outline").clearSelect,C=t("./helpers"),L=C.p2r,P=C.axValue,I=C.getTransform;function z(t,e,r,n,a,i,o){var s,l,c,u,h,f,d,m,v,y=e._hoverdata,x=e._fullLayout.clickmode.indexOf("event")>-1,b=[];if(function(t){return t&&Array.isArray(t)&&!0!==t[0].hoverOnBox}(y)){F(t,e,i);var _=function(t,e){var r,n,a=t[0],i=-1,o=[];for(n=0;n<e.length;n++)if(r=e[n],a.fullData._expandedIndex===r.cd[0].trace._expandedIndex){if(!0===a.hoverOnBox)break;void 0!==a.pointNumber?i=a.pointNumber:void 0!==a.binNumber&&(i=a.binNumber,o=a.pointNumbers);break}return{pointNumber:i,pointNumbers:o,searchInfo:r}}(y,s=N(e,r,n,a));if(_.pointNumbers.length>0?function(t,e){var r,n,a,i=[];for(a=0;a<t.length;a++)(r=t[a]).cd[0].trace.selectedpoints&&r.cd[0].trace.selectedpoints.length>0&&i.push(r);if(1===i.length&&i[0]===e.searchInfo&&(n=e.searchInfo.cd[0].trace).selectedpoints.length===e.pointNumbers.length){for(a=0;a<e.pointNumbers.length;a++)if(n.selectedpoints.indexOf(e.pointNumbers[a])<0)return!1;return!0}return!1}(s,_):function(t){var e,r,n,a=0;for(n=0;n<t.length;n++)if(e=t[n],(r=e.cd[0].trace).selectedpoints){if(r.selectedpoints.length>1)return!1;if((a+=r.selectedpoints.length)>1)return!1}return 1===a}(s)&&(f=j(_))){for(o&&o.remove(),v=0;v<s.length;v++)(l=s[v])._module.selectPoints(l,!1);V(e,s),B(i),x&&e.emit("plotly_deselect",null)}else{for(d=t.shiftKey&&(void 0!==f?f:j(_)),c=function(t,e,r){return{pointNumber:t,searchInfo:e,subtract:r}}(_.pointNumber,_.searchInfo,d),u=R(i.selectionDefs.concat([c])),v=0;v<s.length;v++)if(h=U(s[v]._module.selectPoints(s[v],u),s[v]),b.length)for(var w=0;w<h.length;w++)b.push(h[w]);else b=h;if(V(e,s,m={points:b}),c&&i&&i.selectionDefs.push(c),o){var T=i.mergedPolygons,k=p(i.dragmode);g(q(T,k),o,i)}x&&e.emit("plotly_selected",m)}}}function O(t){return"pointNumber"in t&&"searchInfo"in t}function D(t){return{xmin:0,xmax:0,ymin:0,ymax:0,pts:[],contains:function(e,r,n,a){var i=t.searchInfo.cd[0].trace._expandedIndex;return a.cd[0].trace._expandedIndex===i&&n===t.pointNumber},isRect:!1,degenerate:!1,subtract:t.subtract}}function R(t){for(var e=[],r=O(t[0])?0:t[0][0][0],n=r,a=O(t[0])?0:t[0][0][1],i=a,o=0;o<t.length;o++)if(O(t[o]))e.push(D(t[o]));else{var s=x.tester(t[o]);s.subtract=t[o].subtract,e.push(s),r=Math.min(r,s.xmin),n=Math.max(n,s.xmax),a=Math.min(a,s.ymin),i=Math.max(i,s.ymax)}return{xmin:r,xmax:n,ymin:a,ymax:i,pts:[],contains:function(t,r,n,a){for(var i=!1,o=0;o<e.length;o++)e[o].contains(t,r,n,a)&&(i=!1===e[o].subtract);return i},isRect:!1,degenerate:!1}}function F(t,e,r){e._fullLayout._drawing=!1;var n=e._fullLayout,a=r.plotinfo,i=r.dragmode,o=n._lastSelectedSubplot&&n._lastSelectedSubplot===a.id,s=(t.shiftKey||t.altKey)&&!(f(i)&&p(i));o&&s&&a.selection&&a.selection.selectionDefs&&!r.selectionDefs?(r.selectionDefs=a.selection.selectionDefs,r.mergedPolygons=a.selection.mergedPolygons):s&&a.selection||B(r),o||(E(e),n._lastSelectedSubplot=a.id)}function B(t){var e=t.dragmode,r=t.plotinfo,n=t.gd;if(n._fullLayout._activeShapeIndex>=0&&n._fullLayout._deactivateShape(n),f(e)){var i=n._fullLayout._zoomlayer.selectAll(".select-outline-"+r.id);if(i&&n._fullLayout._drawing){var o=v(i,t);o&&a.call("_guiRelayout",n,{shapes:o}),n._fullLayout._drawing=!1}}r.selection={},r.selection.selectionDefs=t.selectionDefs=[],r.selection.mergedPolygons=t.mergedPolygons=[]}function N(t,e,r,n){var a,i,o,s=[],l=e.map((function(t){return t._id})),c=r.map((function(t){return t._id}));for(o=0;o<t.calcdata.length;o++)if(!0===(i=(a=t.calcdata[o])[0].trace).visible&&i._module&&i._module.selectPoints)if(!n||i.subplot!==n&&i.geo!==n)if("splom"===i.type&&i._xaxes[l[0]]&&i._yaxes[c[0]]){var u=f(i._module,a,e[0],r[0]);u.scene=t._fullLayout._splomScenes[i.uid],s.push(u)}else if("sankey"===i.type){var h=f(i._module,a,e[0],r[0]);s.push(h)}else{if(-1===l.indexOf(i.xaxis))continue;if(-1===c.indexOf(i.yaxis))continue;s.push(f(i._module,a,_(t,i.xaxis),_(t,i.yaxis)))}else s.push(f(i._module,a,e[0],r[0]));return s;function f(t,e,r,n){return{_module:t,cd:e,xaxis:r,yaxis:n}}}function j(t){var e=t.searchInfo.cd[0].trace,r=t.pointNumber,n=t.pointNumbers,a=n.length>0?n[0]:r;return!!e.selectedpoints&&e.selectedpoints.indexOf(a)>-1}function V(t,e,r){var n,i,o,s;for(n=0;n<e.length;n++){var l=e[n].cd[0].trace._fullInput,c=t._fullLayout._tracePreGUI[l.uid]||{};void 0===c.selectedpoints&&(c.selectedpoints=l._input.selectedpoints||null)}if(r){var u=r.points||[];for(n=0;n<e.length;n++)(s=e[n].cd[0].trace)._input.selectedpoints=s._fullInput.selectedpoints=[],s._fullInput!==s&&(s.selectedpoints=[]);for(n=0;n<u.length;n++){var h=u[n],f=h.data,p=h.fullData;h.pointIndices?([].push.apply(f.selectedpoints,h.pointIndices),s._fullInput!==s&&[].push.apply(p.selectedpoints,h.pointIndices)):(f.selectedpoints.push(h.pointIndex),s._fullInput!==s&&p.selectedpoints.push(h.pointIndex))}}else for(n=0;n<e.length;n++)delete(s=e[n].cd[0].trace).selectedpoints,delete s._input.selectedpoints,s._fullInput!==s&&delete s._fullInput.selectedpoints;var d=!1;for(n=0;n<e.length;n++){s=(o=(i=e[n]).cd)[0].trace,a.traceIs(s,"regl")&&(d=!0);var g=i._module,m=g.styleOnSelect||g.style;m&&(m(t,o,o[0].node3),o[0].nodeRangePlot3&&m(t,o,o[0].nodeRangePlot3))}d&&(w(t),T(t))}function U(t,e){if(Array.isArray(t))for(var r=e.cd,n=e.cd[0].trace,a=0;a<t.length;a++)t[a]=l(t[a],n,r);return t}function q(t,e){for(var r=[],n=0;n<t.length;n++){r[n]=[];for(var a=0;a<t[n].length;a++){r[n][a]=[],r[n][a][0]=a?"L":"M";for(var i=0;i<t[n][a].length;i++)r[n][a].push(t[n][a][i])}e||r[n].push(["Z",r[n][0][1],r[n][0][2]])}return r}e.exports={prepSelect:function(t,e,r,a,l){var c,v,x,_,w,T,E,C=u(l),O=h(l),D=p(l),j=f(l),H=d(l),G="drawcircle"===l,Y="drawline"===l||G,W=a.gd,Z=W._fullLayout,X=Z._zoomlayer,J=a.element.getBoundingClientRect(),K=a.plotinfo,Q=I(K),$=e-J.left,tt=r-J.top,et=$,rt=tt,nt="M"+$+","+tt,at=a.xaxes[0]._length,it=a.yaxes[0]._length,ot=a.xaxes.concat(a.yaxes),st=t.altKey&&!(f(l)&&D);F(t,W,a),C&&(c=M([[$,tt]],k.BENDPX));var lt=X.selectAll("path.select-outline-"+K.id).data(j?[0]:[1,2]),ct=Z.newshape;lt.enter().append("path").attr("class",(function(t){return"select-outline select-outline-"+t+" select-outline-"+K.id})).style(j?{opacity:ct.opacity/2,fill:D?void 0:ct.fillcolor,stroke:ct.line.color,"stroke-dasharray":i(ct.line.dash,ct.line.width),"stroke-width":ct.line.width+"px"}:{}).attr("fill-rule",ct.fillrule).classed("cursor-move",!!j).attr("transform",Q).attr("d",nt+"Z");var ut,ht=X.append("path").attr("class","zoombox-corners").style({fill:o.background,stroke:o.defaultLine,"stroke-width":1}).attr("transform",Q).attr("d","M0,0Z"),ft=Z._uid+k.SELECTID,pt=[],dt=N(W,a.xaxes,a.yaxes,a.subplot);function gt(t,e){return t-e}ut=K.fillRangeItems?K.fillRangeItems:O?function(t,e){var r=t.range={};for(w=0;w<ot.length;w++){var n=ot[w],a=n._id.charAt(0);r[n._id]=[L(n,e[a+"min"]),L(n,e[a+"max"])].sort(gt)}}:function(t,e,r){var n=t.lassoPoints={};for(w=0;w<ot.length;w++){var a=ot[w];n[a._id]=r.filtered.map(P(a))}},a.moveFn=function(t,e){et=Math.max(0,Math.min(at,t+$)),rt=Math.max(0,Math.min(it,e+tt));var r=Math.abs(et-$),i=Math.abs(rt-tt);if(O){var o,s,l;if(H){var u=Z.selectdirection;switch(o="any"===u?i<Math.min(.6*r,A)?"h":r<Math.min(.6*i,A)?"v":"d":u){case"h":s=G?it/2:0,l=it;break;case"v":s=G?at/2:0,l=at}}if(j)switch(Z.newshape.drawdirection){case"vertical":o="h",s=G?it/2:0,l=it;break;case"horizontal":o="v",s=G?at/2:0,l=at;break;case"ortho":r<i?(o="h",s=tt,l=rt):(o="v",s=$,l=et);break;default:o="d"}"h"===o?((_=Y?m(G,[et,s],[et,l]):[[$,s],[$,l],[et,l],[et,s]]).xmin=Y?et:Math.min($,et),_.xmax=Y?et:Math.max($,et),_.ymin=Math.min(s,l),_.ymax=Math.max(s,l),ht.attr("d","M"+_.xmin+","+(tt-A)+"h-4v"+2*A+"h4ZM"+(_.xmax-1)+","+(tt-A)+"h4v"+2*A+"h-4Z")):"v"===o?((_=Y?m(G,[s,rt],[l,rt]):[[s,tt],[s,rt],[l,rt],[l,tt]]).xmin=Math.min(s,l),_.xmax=Math.max(s,l),_.ymin=Y?rt:Math.min(tt,rt),_.ymax=Y?rt:Math.max(tt,rt),ht.attr("d","M"+($-A)+","+_.ymin+"v-4h"+2*A+"v4ZM"+($-A)+","+(_.ymax-1)+"v4h"+2*A+"v-4Z")):"d"===o&&((_=Y?m(G,[$,tt],[et,rt]):[[$,tt],[$,rt],[et,rt],[et,tt]]).xmin=Math.min($,et),_.xmax=Math.max($,et),_.ymin=Math.min(tt,rt),_.ymax=Math.max(tt,rt),ht.attr("d","M0,0Z"))}else C&&(c.addPt([et,rt]),_=c.filtered);a.selectionDefs&&a.selectionDefs.length?(x=function(t,e,r){if(r)return n.difference({regions:t,inverted:!1},{regions:[e],inverted:!1}).regions;return n.union({regions:t,inverted:!1},{regions:[e],inverted:!1}).regions}(a.mergedPolygons,_,st),_.subtract=st,v=R(a.selectionDefs.concat([_]))):(x=[_],v=S(_)),g(q(x,D),lt,a),H&&b.throttle(ft,k.SELECTDELAY,(function(){var t;pt=[];var e,r=[];for(w=0;w<dt.length;w++)if(e=(T=dt[w])._module.selectPoints(T,v),r.push(e),t=U(e,T),pt.length)for(var n=0;n<t.length;n++)pt.push(t[n]);else pt=t;V(W,dt,E={points:pt}),ut(E,_,c),a.gd.emit("plotly_selecting",E)}))},a.clickFn=function(t,e){if(ht.remove(),W._fullLayout._activeShapeIndex>=0)W._fullLayout._deactivateShape(W);else if(!j){var r=Z.clickmode;b.done(ft).then((function(){if(b.clear(ft),2===t){for(lt.remove(),w=0;w<dt.length;w++)(T=dt[w])._module.selectPoints(T,!1);V(W,dt),B(a),W.emit("plotly_deselect",null)}else r.indexOf("select")>-1&&z(e,W,a.xaxes,a.yaxes,a.subplot,a,lt),"event"===r&&W.emit("plotly_selected",void 0);s.click(W,e)})).catch(y.error)}},a.doneFn=function(){ht.remove(),b.done(ft).then((function(){b.clear(ft),a.gd.emit("plotly_selected",E),_&&a.selectionDefs&&(_.subtract=st,a.selectionDefs.push(_),a.mergedPolygons.length=0,[].push.apply(a.mergedPolygons,x)),a.doneFnCompleted&&a.doneFnCompleted(pt)})).catch(y.error),j&&B(a)}},clearSelect:E,clearSelectionsCache:B,selectOnClick:z}},{"../../components/color":595,"../../components/dragelement/helpers":613,"../../components/drawing":617,"../../components/fx":635,"../../components/fx/helpers":631,"../../components/shapes/draw_newshape/display_outlines":680,"../../components/shapes/draw_newshape/helpers":681,"../../components/shapes/draw_newshape/newshapes":682,"../../lib":728,"../../lib/clear_gl_canvases":713,"../../lib/polygon":740,"../../lib/throttle":753,"../../plot_api/subroutines":767,"../../registry":859,"./axis_ids":779,"./constants":782,"./handle_outline":786,"./helpers":787,polybooljs:471}],796:[function(t,e,r){"use strict";var n=t("d3"),a=t("fast-isnumeric"),i=t("../../lib"),o=i.cleanNumber,s=i.ms2DateTime,l=i.dateTime2ms,c=i.ensureNumber,u=i.isArrayOrTypedArray,h=t("../../constants/numerical"),f=h.FP_SAFE,p=h.BADNUM,d=h.LOG_CLIP,g=h.ONEDAY,m=h.ONEHOUR,v=h.ONEMIN,y=h.ONESEC,x=t("./axis_ids"),b=t("./constants"),_=b.HOUR_PATTERN,w=b.WEEKDAY_PATTERN;function T(t){return Math.pow(10,t)}function k(t){return null!=t}e.exports=function(t,e){e=e||{};var r=t._id||"x",h=r.charAt(0);function A(e,r){if(e>0)return Math.log(e)/Math.LN10;if(e<=0&&r&&t.range&&2===t.range.length){var n=t.range[0],a=t.range[1];return.5*(n+a-2*d*Math.abs(n-a))}return p}function M(e,r,n,o){var s=l(e,n||t.calendar);if(s===p){if(!a(e))return p;if(e=+e,(o||{}).msUTC)return e;var c=Math.floor(10*i.mod(e+.05,1)),u=Math.round(e-c/10);s=l(new Date(u))+c/10}return s}function S(e,r,n){return s(e,r,n||t.calendar)}function E(e){return t._categories[Math.round(e)]}function C(e){if(k(e)){if(void 0===t._categoriesMap&&(t._categoriesMap={}),void 0!==t._categoriesMap[e])return t._categoriesMap[e];t._categories.push("number"==typeof e?String(e):e);var r=t._categories.length-1;return t._categoriesMap[e]=r,r}return p}function L(e){if(t._categoriesMap)return t._categoriesMap[e]}function P(t){var e=L(t);return void 0!==e?e:a(t)?+t:void 0}function I(t,e,r){return n.round(r+e*t,2)}function z(t,e,r){return(t-r)/e}var O=function(e){return a(e)?I(e,t._m,t._b):p},D=function(e){return z(e,t._m,t._b)};if(t.rangebreaks){var R="y"===h;O=function(e){if(!a(e))return p;var r=t._rangebreaks.length;if(!r)return I(e,t._m,t._b);var n=R;t.range[0]>t.range[1]&&(n=!n);for(var i=n?-1:1,o=i*e,s=0,l=0;l<r;l++){var c=i*t._rangebreaks[l].min,u=i*t._rangebreaks[l].max;if(o<c)break;if(!(o>u)){s=o<(c+u)/2?l:l+1;break}s=l+1}var h=t._B[s]||0;return isFinite(h)?I(e,t._m2,h):0},D=function(e){var r=t._rangebreaks.length;if(!r)return z(e,t._m,t._b);for(var n=0,a=0;a<r&&!(e<t._rangebreaks[a].pmin);a++)e>t._rangebreaks[a].pmax&&(n=a+1);return z(e,t._m2,t._B[n])}}t.c2l="log"===t.type?A:c,t.l2c="log"===t.type?T:c,t.l2p=O,t.p2l=D,t.c2p="log"===t.type?function(t,e){return O(A(t,e))}:O,t.p2c="log"===t.type?function(t){return T(D(t))}:D,-1!==["linear","-"].indexOf(t.type)?(t.d2r=t.r2d=t.d2c=t.r2c=t.d2l=t.r2l=o,t.c2d=t.c2r=t.l2d=t.l2r=c,t.d2p=t.r2p=function(e){return t.l2p(o(e))},t.p2d=t.p2r=D,t.cleanPos=c):"log"===t.type?(t.d2r=t.d2l=function(t,e){return A(o(t),e)},t.r2d=t.r2c=function(t){return T(o(t))},t.d2c=t.r2l=o,t.c2d=t.l2r=c,t.c2r=A,t.l2d=T,t.d2p=function(e,r){return t.l2p(t.d2r(e,r))},t.p2d=function(t){return T(D(t))},t.r2p=function(e){return t.l2p(o(e))},t.p2r=D,t.cleanPos=c):"date"===t.type?(t.d2r=t.r2d=i.identity,t.d2c=t.r2c=t.d2l=t.r2l=M,t.c2d=t.c2r=t.l2d=t.l2r=S,t.d2p=t.r2p=function(e,r,n){return t.l2p(M(e,0,n))},t.p2d=t.p2r=function(t,e,r){return S(D(t),e,r)},t.cleanPos=function(e){return i.cleanDate(e,p,t.calendar)}):"category"===t.type?(t.d2c=t.d2l=C,t.r2d=t.c2d=t.l2d=E,t.d2r=t.d2l_noadd=P,t.r2c=function(e){var r=P(e);return void 0!==r?r:t.fraction2r(.5)},t.l2r=t.c2r=c,t.r2l=P,t.d2p=function(e){return t.l2p(t.r2c(e))},t.p2d=function(t){return E(D(t))},t.r2p=t.d2p,t.p2r=D,t.cleanPos=function(t){return"string"==typeof t&&""!==t?t:c(t)}):"multicategory"===t.type&&(t.r2d=t.c2d=t.l2d=E,t.d2r=t.d2l_noadd=P,t.r2c=function(e){var r=P(e);return void 0!==r?r:t.fraction2r(.5)},t.r2c_just_indices=L,t.l2r=t.c2r=c,t.r2l=P,t.d2p=function(e){return t.l2p(t.r2c(e))},t.p2d=function(t){return E(D(t))},t.r2p=t.d2p,t.p2r=D,t.cleanPos=function(t){return Array.isArray(t)||"string"==typeof t&&""!==t?t:c(t)},t.setupMultiCategory=function(n){var a,o,s=t._traceIndices,l=e._axisMatchGroups;if(l&&l.length&&0===t._categories.length)for(a=0;a<l.length;a++){var c=l[a];if(c[r])for(var f in c)if(f!==r){var p=e[x.id2name(f)];s=s.concat(p._traceIndices)}}var d=[[0,{}],[0,{}]],g=[];for(a=0;a<s.length;a++){var m=n[s[a]];if(h in m){var v=m[h],y=m._length||i.minRowLength(v);if(u(v[0])&&u(v[1]))for(o=0;o<y;o++){var b=v[0][o],_=v[1][o];k(b)&&k(_)&&(g.push([b,_]),b in d[0][1]||(d[0][1][b]=d[0][0]++),_ in d[1][1]||(d[1][1][_]=d[1][0]++))}}}for(g.sort((function(t,e){var r=d[0][1],n=r[t[0]]-r[e[0]];if(n)return n;var a=d[1][1];return a[t[1]]-a[e[1]]})),a=0;a<g.length;a++)C(g[a])}),t.fraction2r=function(e){var r=t.r2l(t.range[0]),n=t.r2l(t.range[1]);return t.l2r(r+e*(n-r))},t.r2fraction=function(e){var r=t.r2l(t.range[0]),n=t.r2l(t.range[1]);return(t.r2l(e)-r)/(n-r)},t.cleanRange=function(e,r){r||(r={}),e||(e="range");var n,o,s=i.nestedProperty(t,e).get();if(o=(o="date"===t.type?i.dfltRange(t.calendar):"y"===h?b.DFLTRANGEY:r.dfltRange||b.DFLTRANGEX).slice(),"tozero"!==t.rangemode&&"nonnegative"!==t.rangemode||(o[0]=0),s&&2===s.length)for("date"!==t.type||t.autorange||(s[0]=i.cleanDate(s[0],p,t.calendar),s[1]=i.cleanDate(s[1],p,t.calendar)),n=0;n<2;n++)if("date"===t.type){if(!i.isDateTime(s[n],t.calendar)){t[e]=o;break}if(t.r2l(s[0])===t.r2l(s[1])){var l=i.constrain(t.r2l(s[0]),i.MIN_MS+1e3,i.MAX_MS-1e3);s[0]=t.l2r(l-1e3),s[1]=t.l2r(l+1e3);break}}else{if(!a(s[n])){if(!a(s[1-n])){t[e]=o;break}s[n]=s[1-n]*(n?10:.1)}if(s[n]<-f?s[n]=-f:s[n]>f&&(s[n]=f),s[0]===s[1]){var c=Math.max(1,Math.abs(1e-6*s[0]));s[0]-=c,s[1]+=c}}else i.nestedProperty(t,e).set(o)},t.setScale=function(r){var n=e._size;if(t.overlaying){var a=x.getFromId({_fullLayout:e},t.overlaying);t.domain=a.domain}var i=r&&t._r?"_r":"range",o=t.calendar;t.cleanRange(i);var s,l,c=t.r2l(t[i][0],o),u=t.r2l(t[i][1],o),f="y"===h;if((f?(t._offset=n.t+(1-t.domain[1])*n.h,t._length=n.h*(t.domain[1]-t.domain[0]),t._m=t._length/(c-u),t._b=-t._m*u):(t._offset=n.l+t.domain[0]*n.w,t._length=n.w*(t.domain[1]-t.domain[0]),t._m=t._length/(u-c),t._b=-t._m*c),t._rangebreaks=[],t._lBreaks=0,t._m2=0,t._B=[],t.rangebreaks)&&(t._rangebreaks=t.locateBreaks(Math.min(c,u),Math.max(c,u)),t._rangebreaks.length)){for(s=0;s<t._rangebreaks.length;s++)l=t._rangebreaks[s],t._lBreaks+=Math.abs(l.max-l.min);var p=f;c>u&&(p=!p),p&&t._rangebreaks.reverse();var d=p?-1:1;for(t._m2=d*t._length/(Math.abs(u-c)-t._lBreaks),t._B.push(-t._m2*(f?u:c)),s=0;s<t._rangebreaks.length;s++)l=t._rangebreaks[s],t._B.push(t._B[t._B.length-1]-d*t._m2*(l.max-l.min));for(s=0;s<t._rangebreaks.length;s++)(l=t._rangebreaks[s]).pmin=O(l.min),l.pmax=O(l.max)}if(!isFinite(t._m)||!isFinite(t._b)||t._length<0)throw e._replotting=!1,new Error("Something went wrong with axis scaling")},t.maskBreaks=function(e){for(var r,n,a,s,l,c=t.rangebreaks||[],u=0;u<c.length;u++){var h=c[u];if(h.enabled)if(h.bounds){var f=h.pattern;switch(n=(r=i.simpleMap(h.bounds,f?o:t.d2c))[0],a=r[1],f){case w:s=(l=new Date(e)).getUTCDay(),n>a&&(a+=7,s<n&&(s+=7));break;case _:s=(l=new Date(e)).getUTCHours()+(l.getUTCMinutes()/60+l.getUTCSeconds()/3600+l.getUTCMilliseconds()/36e5),n>a&&(a+=24,s<n&&(s+=24));break;case"":s=e}if(s>=n&&s<a)return p}else for(var d=i.simpleMap(h.values,t.d2c).sort(i.sorterAsc),g=0;g<d.length;g++)if(a=(n=d[g])+h.dvalue,e>=n&&e<a)return p}return e},t.locateBreaks=function(e,r){var n,a,s,l,c=[];if(!t.rangebreaks)return c;var u=t.rangebreaks.slice().sort((function(t,e){return t.pattern===w&&e.pattern===_?-1:e.pattern===w&&t.pattern===_?1:0})),h=function(t,n){if((t=i.constrain(t,e,r))!==(n=i.constrain(n,e,r))){for(var a=!0,o=0;o<c.length;o++){var s=c[o];t<s.max&&n>=s.min&&(t<s.min&&(s.min=t),n>s.max&&(s.max=n),a=!1)}a&&c.push({min:t,max:n})}};for(n=0;n<u.length;n++){var f=u[n];if(f.enabled)if(f.bounds){var p=e,d=r;f.pattern&&(p=Math.floor(p)),s=(a=i.simpleMap(f.bounds,f.pattern?o:t.r2l))[0],l=a[1];var x,b,T=new Date(p);switch(f.pattern){case w:b=7*g,x=(l-s+(l<s?7:0))*g,p+=s*g-(T.getUTCDay()*g+T.getUTCHours()*m+T.getUTCMinutes()*v+T.getUTCSeconds()*y+T.getUTCMilliseconds());break;case _:b=g,x=(l-s+(l<s?24:0))*m,p+=s*m-(T.getUTCHours()*m+T.getUTCMinutes()*v+T.getUTCSeconds()*y+T.getUTCMilliseconds());break;default:p=Math.min(a[0],a[1]),x=b=(d=Math.max(a[0],a[1]))-p}for(var k=p;k<d;k+=b)h(k,k+x)}else for(var A=i.simpleMap(f.values,t.d2c),M=0;M<A.length;M++)h(s=A[M],l=s+f.dvalue)}return c.sort((function(t,e){return t.min-e.min})),c},t.makeCalcdata=function(e,r,n){var a,o,s,l,c=t.type,u="date"===c&&e[r+"calendar"];if(r in e){if(a=e[r],l=e._length||i.minRowLength(a),i.isTypedArray(a)&&("linear"===c||"log"===c)){if(l===a.length)return a;if(a.subarray)return a.subarray(0,l)}if("multicategory"===c)return function(t,e){for(var r=new Array(e),n=0;n<e;n++){var a=(t[0]||[])[n],i=(t[1]||[])[n];r[n]=L([a,i])}return r}(a,l);for(o=new Array(l),s=0;s<l;s++)o[s]=t.d2c(a[s],0,u,n)}else{var h=r+"0"in e?t.d2c(e[r+"0"],0,u):0,f=e["d"+r]?Number(e["d"+r]):1;for(a=e[{x:"y",y:"x"}[r]],l=e._length||a.length,o=new Array(l),s=0;s<l;s++)o[s]=h+s*f}if(t.rangebreaks)for(s=0;s<l;s++)o[s]=t.maskBreaks(o[s]);return o},t.isValidRange=function(e){return Array.isArray(e)&&2===e.length&&a(t.r2l(e[0]))&&a(t.r2l(e[1]))},t.isPtWithinRange=function(e,r){var n=t.c2l(e[h],null,r),a=t.r2l(t.range[0]),i=t.r2l(t.range[1]);return a<i?a<=n&&n<=i:i<=n&&n<=a},t._emptyCategories=function(){t._categories=[],t._categoriesMap={}},t.clearCalc=function(){var n=e._axisMatchGroups;if(n&&n.length){for(var a=!1,i=0;i<n.length;i++){var o=n[i];if(o[r]){a=!0;var s=null,l=null;for(var c in o){var u=e[x.id2name(c)];if(u._categories){s=u._categories,l=u._categoriesMap;break}}s&&l?(t._categories=s,t._categoriesMap=l):t._emptyCategories();break}}a||t._emptyCategories()}else t._emptyCategories();if(t._initialCategories)for(var h=0;h<t._initialCategories.length;h++)C(t._initialCategories[h])},t.sortByInitialCategories=function(){var n=[];if(t._emptyCategories(),t._initialCategories)for(var a=0;a<t._initialCategories.length;a++)C(t._initialCategories[a]);n=n.concat(t._traceIndices);var i=t._matchGroup;for(var o in i)if(r!==o){var s=e[x.id2name(o)];s._categories=t._categories,s._categoriesMap=t._categoriesMap,n=n.concat(s._traceIndices)}return n};var F=e._d3locale;"date"===t.type&&(t._dateFormat=F?F.timeFormat.utc:n.time.format.utc,t._extraFormat=e._extraFormat),t._separators=e.separators,t._numFormat=F?F.numberFormat:n.format,delete t._minDtick,delete t._forceTick0}},{"../../constants/numerical":704,"../../lib":728,"./axis_ids":779,"./constants":782,d3:164,"fast-isnumeric":236}],797:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./layout_attributes"),i=t("../array_container_defaults");function o(t){var e=["showexponent","showtickprefix","showticksuffix"].filter((function(e){return void 0!==t[e]}));if(e.every((function(r){return t[r]===t[e[0]]}))||1===e.length)return t[e[0]]}function s(t,e){function r(r,i){return n.coerce(t,e,a.tickformatstops,r,i)}r("enabled")&&(r("dtickrange"),r("value"))}e.exports=function(t,e,r,l,c,u){u&&1!==u.pass||function(t,e,r,n,a){var i=o(t);r("tickprefix")&&r("showtickprefix",i);r("ticksuffix",a.tickSuffixDflt)&&r("showticksuffix",i)}(t,0,r,0,c),u&&2!==u.pass||function(t,e,r,l,c){var u=o(t);r("tickprefix")&&r("showtickprefix",u);r("ticksuffix",c.tickSuffixDflt)&&r("showticksuffix",u);if(r("showticklabels")){var h=c.font||{},f=e.color,p=f&&f!==a.color.dflt?f:h.color;if(n.coerceFont(r,"tickfont",{family:h.family,size:h.size,color:p}),r("tickangle"),"category"!==l){var d=r("tickformat");i(t,e,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:s}),e.tickformatstops.length||delete e.tickformatstops,d||"date"===l||(r("showexponent",u),r("exponentformat"),r("separatethousands"))}}}(t,e,r,l,c)}},{"../../lib":728,"../array_container_defaults":772,"./layout_attributes":790}],798:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./layout_attributes");e.exports=function(t,e,r,i){var o=n.coerce2(t,e,a,"ticklen"),s=n.coerce2(t,e,a,"tickwidth"),l=n.coerce2(t,e,a,"tickcolor",e.color);r("ticks",i.outerTicks||o||s||l?"outside":"")||(delete e.ticklen,delete e.tickwidth,delete e.tickcolor)}},{"../../lib":728,"./layout_attributes":790}],799:[function(t,e,r){"use strict";var n=t("./clean_ticks"),a=t("../../lib").isArrayOrTypedArray;e.exports=function(t,e,r,i){function o(r){var n=t[r];return void 0!==n?n:(e._template||{})[r]}var s=o("tick0"),l=o("dtick"),c=o("tickvals"),u=r("tickmode",a(c)?"array":l?"linear":"auto");if("auto"===u)r("nticks");else if("linear"===u){var h=e.dtick=n.dtick(l,i);e.tick0=n.tick0(s,i,e.calendar,h)}else if("multicategory"!==i){void 0===r("tickvals")?e.tickmode="auto":r("ticktext")}}},{"../../lib":728,"./clean_ticks":781}],800:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../registry"),i=t("../../lib"),o=t("../../components/drawing"),s=t("./axes");e.exports=function(t,e,r,l){var c=t._fullLayout;if(0!==e.length){var u,h,f,p;l&&(u=l());var d=n.ease(r.easing);return t._transitionData._interruptCallbacks.push((function(){return window.cancelAnimationFrame(p),p=null,function(){for(var r={},n=0;n<e.length;n++){var i=e[n],o=i.plotinfo.xaxis,s=i.plotinfo.yaxis;i.xr0&&(r[o._name+".range"]=i.xr0.slice()),i.yr0&&(r[s._name+".range"]=i.yr0.slice())}return a.call("relayout",t,r).then((function(){for(var t=0;t<e.length;t++)g(e[t].plotinfo)}))}()})),h=Date.now(),p=window.requestAnimationFrame((function n(){f=Date.now();for(var i=Math.min(1,(f-h)/r.duration),o=d(i),s=0;s<e.length;s++)m(e[s],o);f-h>r.duration?(!function(){for(var r={},n=0;n<e.length;n++){var i=e[n],o=i.plotinfo.xaxis,s=i.plotinfo.yaxis;i.xr1&&(r[o._name+".range"]=i.xr1.slice()),i.yr1&&(r[s._name+".range"]=i.yr1.slice())}u&&u(),a.call("relayout",t,r).then((function(){for(var t=0;t<e.length;t++)g(e[t].plotinfo)}))}(),p=window.cancelAnimationFrame(n)):p=window.requestAnimationFrame(n)})),Promise.resolve()}function g(t){var e=t.xaxis,r=t.yaxis;c._defs.select("#"+t.clipId+"> rect").call(o.setTranslate,0,0).call(o.setScale,1,1),t.plot.call(o.setTranslate,e._offset,r._offset).call(o.setScale,1,1);var n=t.plot.selectAll(".scatterlayer .trace");n.selectAll(".point").call(o.setPointGroupScale,1,1),n.selectAll(".textpoint").call(o.setTextPointsScale,1,1),n.call(o.hideOutsideRangePoints,t)}function m(e,r){var n=e.plotinfo,a=n.xaxis,l=n.yaxis,c=a._length,u=l._length,h=!!e.xr1,f=!!e.yr1,p=[];if(h){var d=i.simpleMap(e.xr0,a.r2l),g=i.simpleMap(e.xr1,a.r2l),m=d[1]-d[0],v=g[1]-g[0];p[0]=(d[0]*(1-r)+r*g[0]-d[0])/(d[1]-d[0])*c,p[2]=c*(1-r+r*v/m),a.range[0]=a.l2r(d[0]*(1-r)+r*g[0]),a.range[1]=a.l2r(d[1]*(1-r)+r*g[1])}else p[0]=0,p[2]=c;if(f){var y=i.simpleMap(e.yr0,l.r2l),x=i.simpleMap(e.yr1,l.r2l),b=y[1]-y[0],_=x[1]-x[0];p[1]=(y[1]*(1-r)+r*x[1]-y[1])/(y[0]-y[1])*u,p[3]=u*(1-r+r*_/b),l.range[0]=a.l2r(y[0]*(1-r)+r*x[0]),l.range[1]=l.l2r(y[1]*(1-r)+r*x[1])}else p[1]=0,p[3]=u;s.drawOne(t,a,{skipTitle:!0}),s.drawOne(t,l,{skipTitle:!0}),s.redrawComponents(t,[a._id,l._id]);var w=h?c/p[2]:1,T=f?u/p[3]:1,k=h?p[0]:0,A=f?p[1]:0,M=h?p[0]/p[2]*c:0,S=f?p[1]/p[3]*u:0,E=a._offset-M,C=l._offset-S;n.clipRect.call(o.setTranslate,k,A).call(o.setScale,1/w,1/T),n.plot.call(o.setTranslate,E,C).call(o.setScale,w,T),o.setPointGroupScale(n.zoomScalePts,1/w,1/T),o.setTextPointsScale(n.zoomScaleTxt,1/w,1/T)}s.redrawComponents(t)}},{"../../components/drawing":617,"../../lib":728,"../../registry":859,"./axes":776,d3:164}],801:[function(t,e,r){"use strict";var n=t("../../registry").traceIs,a=t("./axis_autotype");function i(t){return{v:"x",h:"y"}[t.orientation||"v"]}function o(t,e){var r=i(t),a=n(t,"box-violin"),o=n(t._fullInput||{},"candlestick");return a&&!o&&e===r&&void 0===t[r]&&void 0===t[r+"0"]}e.exports=function(t,e,r,s){"-"===r("type",(s.splomStash||{}).type)&&(!function(t,e){if("-"!==t.type)return;var r,s=t._id,l=s.charAt(0);-1!==s.indexOf("scene")&&(s=l);var c=function(t,e,r){for(var n=0;n<t.length;n++){var a=t[n];if("splom"===a.type&&a._length>0&&(a["_"+r+"axes"]||{})[e])return a;if((a[r+"axis"]||r)===e){if(o(a,r))return a;if((a[r]||[]).length||a[r+"0"])return a}}}(e,s,l);if(!c)return;if("histogram"===c.type&&l==={v:"y",h:"x"}[c.orientation||"v"])return void(t.type="linear");var u=l+"calendar",h=c[u],f={noMultiCategory:!n(c,"cartesian")||n(c,"noMultiCategory")};"box"===c.type&&c._hasPreCompStats&&l==={h:"x",v:"y"}[c.orientation||"v"]&&(f.noMultiCategory=!0);if(o(c,l)){var p=i(c),d=[];for(r=0;r<e.length;r++){var g=e[r];n(g,"box-violin")&&(g[l+"axis"]||l)===s&&(void 0!==g[p]?d.push(g[p][0]):void 0!==g.name?d.push(g.name):d.push("text"),g[u]!==h&&(h=void 0))}t.type=a(d,h,f)}else if("splom"===c.type){var m=c.dimensions[c._axesDim[s]];m.visible&&(t.type=a(m.values,h,f))}else t.type=a(c[l]||[c[l+"0"]],h,f)}(e,s.data),"-"===e.type?e.type="linear":t.type=e.type)}},{"../../registry":859,"./axis_autotype":777}],802:[function(t,e,r){"use strict";var n=t("../registry"),a=t("../lib");function i(t,e,r){var n,i,o,s=!1;if("data"===e.type)n=t._fullData[null!==e.traces?e.traces[0]:0];else{if("layout"!==e.type)return!1;n=t._fullLayout}return i=a.nestedProperty(n,e.prop).get(),(o=r[e.type]=r[e.type]||{}).hasOwnProperty(e.prop)&&o[e.prop]!==i&&(s=!0),o[e.prop]=i,{changed:s,value:i}}function o(t,e){var r=[],n=e[0],i={};if("string"==typeof n)i[n]=e[1];else{if(!a.isPlainObject(n))return r;i=n}return l(i,(function(t,e,n){r.push({type:"layout",prop:t,value:n})}),"",0),r}function s(t,e){var r,n,i,o,s=[];if(n=e[0],i=e[1],r=e[2],o={},"string"==typeof n)o[n]=i;else{if(!a.isPlainObject(n))return s;o=n,void 0===r&&(r=i)}return void 0===r&&(r=null),l(o,(function(e,n,a){var i,o;if(Array.isArray(a)){o=a.slice();var l=Math.min(o.length,t.data.length);r&&(l=Math.min(l,r.length)),i=[];for(var c=0;c<l;c++)i[c]=r?r[c]:c}else o=a,i=r?r.slice():null;if(null===i)Array.isArray(o)&&(o=o[0]);else if(Array.isArray(i)){if(!Array.isArray(o)){var u=o;o=[];for(var h=0;h<i.length;h++)o[h]=u}o.length=Math.min(i.length,o.length)}s.push({type:"data",prop:e,traces:i,value:o})}),"",0),s}function l(t,e,r,n){Object.keys(t).forEach((function(i){var o=t[i];if("_"!==i[0]){var s=r+(n>0?".":"")+i;a.isPlainObject(o)?l(o,e,s,n+1):e(s,i,o)}}))}r.manageCommandObserver=function(t,e,n,o){var s={},l=!0;e&&e._commandObserver&&(s=e._commandObserver),s.cache||(s.cache={}),s.lookupTable={};var c=r.hasSimpleAPICommandBindings(t,n,s.lookupTable);if(e&&e._commandObserver){if(c)return s;if(e._commandObserver.remove)return e._commandObserver.remove(),e._commandObserver=null,s}if(c){i(t,c,s.cache),s.check=function(){if(l){var e=i(t,c,s.cache);return e.changed&&o&&void 0!==s.lookupTable[e.value]&&(s.disable(),Promise.resolve(o({value:e.value,type:c.type,prop:c.prop,traces:c.traces,index:s.lookupTable[e.value]})).then(s.enable,s.enable)),e.changed}};for(var u=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],h=0;h<u.length;h++)t._internalOn(u[h],s.check);s.remove=function(){for(var e=0;e<u.length;e++)t._removeInternalListener(u[e],s.check)}}else a.log("Unable to automatically bind plot updates to API command"),s.lookupTable={},s.remove=function(){};return s.disable=function(){l=!1},s.enable=function(){l=!0},e&&(e._commandObserver=s),s},r.hasSimpleAPICommandBindings=function(t,e,n){var a,i,o=e.length;for(a=0;a<o;a++){var s,l=e[a],c=l.method,u=l.args;if(Array.isArray(u)||(u=[]),!c)return!1;var h=r.computeAPICommandBindings(t,c,u);if(1!==h.length)return!1;if(i){if((s=h[0]).type!==i.type)return!1;if(s.prop!==i.prop)return!1;if(Array.isArray(i.traces)){if(!Array.isArray(s.traces))return!1;s.traces.sort();for(var f=0;f<i.traces.length;f++)if(i.traces[f]!==s.traces[f])return!1}else if(s.prop!==i.prop)return!1}else i=h[0],Array.isArray(i.traces)&&i.traces.sort();var p=(s=h[0]).value;if(Array.isArray(p)){if(1!==p.length)return!1;p=p[0]}n&&(n[p]=a)}return i},r.executeAPICommand=function(t,e,r){if("skip"===e)return Promise.resolve();var i=n.apiMethodRegistry[e],o=[t];Array.isArray(r)||(r=[]);for(var s=0;s<r.length;s++)o.push(r[s]);return i.apply(null,o).catch((function(t){return a.warn("API call to Plotly."+e+" rejected.",t),Promise.reject(t)}))},r.computeAPICommandBindings=function(t,e,r){var n;switch(Array.isArray(r)||(r=[]),e){case"restyle":n=s(t,r);break;case"relayout":n=o(t,r);break;case"update":n=s(t,[r[0],r[2]]).concat(o(t,[r[1]]));break;case"animate":n=function(t,e){return Array.isArray(e[0])&&1===e[0].length&&-1!==["string","number"].indexOf(typeof e[0][0])?[{type:"layout",prop:"_currentFrame",value:e[0][0].toString()}]:[]}(0,r);break;default:n=[]}return n}},{"../lib":728,"../registry":859}],803:[function(t,e,r){"use strict";var n=t("../lib/extend").extendFlat;r.attributes=function(t,e){e=e||{};var r={valType:"info_array",editType:(t=t||{}).editType,items:[{valType:"number",min:0,max:1,editType:t.editType},{valType:"number",min:0,max:1,editType:t.editType}],dflt:[0,1]},a=(t.name&&t.name,t.trace,e.description&&e.description,{x:n({},r,{}),y:n({},r,{}),editType:t.editType});return t.noGridCell||(a.row={valType:"integer",min:0,dflt:0,editType:t.editType},a.column={valType:"integer",min:0,dflt:0,editType:t.editType}),a},r.defaults=function(t,e,r,n){var a=n&&n.x||[0,1],i=n&&n.y||[0,1],o=e.grid;if(o){var s=r("domain.column");void 0!==s&&(s<o.columns?a=o._domains.x[s]:delete t.domain.column);var l=r("domain.row");void 0!==l&&(l<o.rows?i=o._domains.y[l]:delete t.domain.row)}var c=r("domain.x",a),u=r("domain.y",i);c[0]<c[1]||(t.domain.x=a.slice()),u[0]<u[1]||(t.domain.y=i.slice())}},{"../lib/extend":719}],804:[function(t,e,r){"use strict";e.exports=function(t){var e=t.editType,r=t.colorEditType;void 0===r&&(r=e);var n={family:{valType:"string",noBlank:!0,strict:!0,editType:e},size:{valType:"number",min:1,editType:e},color:{valType:"color",editType:r},editType:e};return t.arrayOk&&(n.family.arrayOk=!0,n.size.arrayOk=!0,n.color.arrayOk=!0),n}},{}],805:[function(t,e,r){"use strict";e.exports={_isLinkedToArray:"frames_entry",group:{valType:"string"},name:{valType:"string"},traces:{valType:"any"},baseframe:{valType:"string"},data:{valType:"any"},layout:{valType:"any"}}},{}],806:[function(t,e,r){"use strict";r.projNames={equirectangular:"equirectangular",mercator:"mercator",orthographic:"orthographic","natural earth":"naturalEarth",kavrayskiy7:"kavrayskiy7",miller:"miller",robinson:"robinson",eckert4:"eckert4","azimuthal equal area":"azimuthalEqualArea","azimuthal equidistant":"azimuthalEquidistant","conic equal area":"conicEqualArea","conic conformal":"conicConformal","conic equidistant":"conicEquidistant",gnomonic:"gnomonic",stereographic:"stereographic",mollweide:"mollweide",hammer:"hammer","transverse mercator":"transverseMercator","albers usa":"albersUsa","winkel tripel":"winkel3",aitoff:"aitoff",sinusoidal:"sinusoidal"},r.axesNames=["lonaxis","lataxis"],r.lonaxisSpan={orthographic:180,"azimuthal equal area":360,"azimuthal equidistant":360,"conic conformal":180,gnomonic:160,stereographic:180,"transverse mercator":180,"*":360},r.lataxisSpan={"conic conformal":150,stereographic:179.5,"*":180},r.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]}},r.clipPad=.001,r.precision=.1,r.landColor="#F0DC82",r.waterColor="#3399FF",r.locationmodeToLayer={"ISO-3":"countries","USA-states":"subunits","country names":"countries"},r.sphereSVG={type:"Sphere"},r.fillLayers={ocean:1,land:1,lakes:1},r.lineLayers={subunits:1,countries:1,coastlines:1,rivers:1,frame:1},r.layers=["bg","ocean","land","lakes","subunits","countries","coastlines","rivers","lataxis","lonaxis","frame","backplot","frontplot"],r.layersForChoropleth=["bg","ocean","land","subunits","countries","coastlines","lataxis","lonaxis","frame","backplot","rivers","lakes","frontplot"],r.layerNameToAdjective={ocean:"ocean",land:"land",lakes:"lake",subunits:"subunit",countries:"country",coastlines:"coastline",rivers:"river",frame:"frame"}},{}],807:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../registry"),i=t("../../lib"),o=t("../../components/color"),s=t("../../components/drawing"),l=t("../../components/fx"),c=t("../plots"),u=t("../cartesian/axes"),h=t("../cartesian/autorange").getAutoRange,f=t("../../components/dragelement"),p=t("../cartesian/select").prepSelect,d=t("../cartesian/select").clearSelect,g=t("../cartesian/select").selectOnClick,m=t("./zoom"),v=t("./constants"),y=t("../../lib/geo_location_utils"),x=t("../../lib/topojson_utils"),b=t("topojson-client").feature;function _(t){this.id=t.id,this.graphDiv=t.graphDiv,this.container=t.container,this.topojsonURL=t.topojsonURL,this.isStatic=t.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()}t("./projections")(n);var w=_.prototype;function T(t,e){var r=v.clipPad,n=t[0]+r,a=t[1]-r,i=e[0]+r,o=e[1]-r;n>0&&a<0&&(a+=360);var s=(a-n)/4;return{type:"Polygon",coordinates:[[[n,i],[n,o],[n+s,o],[n+2*s,o],[n+3*s,o],[a,o],[a,i],[a-s,i],[a-2*s,i],[a-3*s,i],[n,i]]]}}e.exports=function(t){return new _(t)},w.plot=function(t,e,r){var n=this,a=e[this.id],i=[],o=!1;for(var s in v.layerNameToAdjective)if("frame"!==s&&a["show"+s]){o=!0;break}for(var l=0;l<t.length;l++)if(t[0][0].trace.locationmode){o=!0;break}if(o){var c=x.getTopojsonName(a);null!==n.topojson&&c===n.topojsonName||(n.topojsonName=c,void 0===PlotlyGeoAssets.topojson[n.topojsonName]&&i.push(n.fetchTopojson()))}i=i.concat(y.fetchTraceGeoData(t)),r.push(new Promise((function(r,a){Promise.all(i).then((function(){n.topojson=PlotlyGeoAssets.topojson[n.topojsonName],n.update(t,e),r()})).catch(a)})))},w.fetchTopojson=function(){var t=this,e=x.getTopojsonPath(t.topojsonURL,t.topojsonName);return new Promise((function(r,a){n.json(e,(function(n,i){if(n)return 404===n.status?a(new Error(["plotly.js could not find topojson file at",e,".","Make sure the *topojsonURL* plot config option","is set properly."].join(" "))):a(new Error(["unexpected error while fetching topojson file at",e].join(" ")));PlotlyGeoAssets.topojson[t.topojsonName]=i,r()}))}))},w.update=function(t,e){var r=e[this.id];this.hasChoropleth=!1;for(var n=0;n<t.length;n++){var a=t[n],i=a[0].trace;"choropleth"===i.type&&(this.hasChoropleth=!0),!0===i.visible&&i._length>0&&i._module.calcGeoJSON(a,e)}if(!this.updateProjection(t,e)){this.viewInitial&&this.scope===r.scope||this.saveViewInitial(r),this.scope=r.scope,this.updateBaseLayers(e,r),this.updateDims(e,r),this.updateFx(e,r),c.generalUpdatePerTraceModule(this.graphDiv,this,t,r);var o=this.layers.frontplot.select(".scatterlayer");this.dataPoints.point=o.selectAll(".point"),this.dataPoints.text=o.selectAll("text"),this.dataPaths.line=o.selectAll(".js-line");var s=this.layers.backplot.select(".choroplethlayer");this.dataPaths.choropleth=s.selectAll("path"),this.render()}},w.updateProjection=function(t,e){var r=this.graphDiv,o=e[this.id],s=e._size,l=o.domain,c=o.projection,u=o.lonaxis,f=o.lataxis,p=u._ax,d=f._ax,g=this.projection=function(t){for(var e=t.projection.type,r=n.geo[v.projNames[e]](),a=t._isClipped?v.lonaxisSpan[e]/2:null,i=["center","rotate","parallels","clipExtent"],o=function(t){return t?r:[]},s=0;s<i.length;s++){var l=i[s];"function"!=typeof r[l]&&(r[l]=o)}r.isLonLatOverEdges=function(t){if(null===r(t))return!0;if(a){var e=r.rotate();return n.geo.distance(t,[-e[0],-e[1]])>a*Math.PI/180}return!1},r.getPath=function(){return n.geo.path().projection(r)},r.getBounds=function(t){return r.getPath().bounds(t)},r.fitExtent=function(t,e){var n=t[1][0]-t[0][0],a=t[1][1]-t[0][1],i=r.clipExtent&&r.clipExtent();r.scale(150).translate([0,0]),i&&r.clipExtent(null);var o=r.getBounds(e),s=Math.min(n/(o[1][0]-o[0][0]),a/(o[1][1]-o[0][1])),l=+t[0][0]+(n-s*(o[1][0]+o[0][0]))/2,c=+t[0][1]+(a-s*(o[1][1]+o[0][1]))/2;return i&&r.clipExtent(i),r.scale(150*s).translate([l,c])},r.precision(v.precision),a&&r.clipAngle(a-v.clipPad);return r}(o),m=[[s.l+s.w*l.x[0],s.t+s.h*(1-l.y[1])],[s.l+s.w*l.x[1],s.t+s.h*(1-l.y[0])]],y=o.center||{},x=c.rotation||{},b=u.range||[],_=f.range||[];if(o.fitbounds){p._length=m[1][0]-m[0][0],d._length=m[1][1]-m[0][1],p.range=h(r,p),d.range=h(r,d);var w=(p.range[0]+p.range[1])/2,k=(d.range[0]+d.range[1])/2;if(o._isScoped)y={lon:w,lat:k};else if(o._isClipped){y={lon:w,lat:k},x={lon:w,lat:k,roll:x.roll};var A=c.type,M=v.lonaxisSpan[A]/2||180,S=v.lataxisSpan[A]/2||180;b=[w-M,w+M],_=[k-S,k+S]}else y={lon:w,lat:k},x={lon:w,lat:x.lat,roll:x.roll}}g.center([y.lon-x.lon,y.lat-x.lat]).rotate([-x.lon,-x.lat,x.roll]).parallels(c.parallels);var E=T(b,_);g.fitExtent(m,E);var C=this.bounds=g.getBounds(E),L=this.fitScale=g.scale(),P=g.translate();if(!isFinite(C[0][0])||!isFinite(C[0][1])||!isFinite(C[1][0])||!isFinite(C[1][1])||isNaN(P[0])||isNaN(P[0])){for(var I=["fitbounds","projection.rotation","center","lonaxis.range","lataxis.range"],z="Invalid geo settings, relayout'ing to default view.",O={},D=0;D<I.length;D++)O[this.id+"."+I[D]]=null;return this.viewInitial=null,i.warn(z),r._promises.push(a.call("relayout",r,O)),z}if(o.fitbounds){var R=g.getBounds(T(p.range,d.range)),F=Math.min((C[1][0]-C[0][0])/(R[1][0]-R[0][0]),(C[1][1]-C[0][1])/(R[1][1]-R[0][1]));isFinite(F)?g.scale(F*L):i.warn("Something went wrong during"+this.id+"fitbounds computations.")}else g.scale(c.scale*L);var B=this.midPt=[(C[0][0]+C[1][0])/2,(C[0][1]+C[1][1])/2];if(g.translate([P[0]+(B[0]-P[0]),P[1]+(B[1]-P[1])]).clipExtent(C),o._isAlbersUsa){var N=g([y.lon,y.lat]),j=g.translate();g.translate([j[0]-(N[0]-j[0]),j[1]-(N[1]-j[1])])}},w.updateBaseLayers=function(t,e){var r=this,a=r.topojson,i=r.layers,l=r.basePaths;function c(t){return"lonaxis"===t||"lataxis"===t}function h(t){return Boolean(v.lineLayers[t])}function f(t){return Boolean(v.fillLayers[t])}var p=(this.hasChoropleth?v.layersForChoropleth:v.layers).filter((function(t){return h(t)||f(t)?e["show"+t]:!c(t)||e[t].showgrid})),d=r.framework.selectAll(".layer").data(p,String);d.exit().each((function(t){delete i[t],delete l[t],n.select(this).remove()})),d.enter().append("g").attr("class",(function(t){return"layer "+t})).each((function(t){var e=i[t]=n.select(this);"bg"===t?r.bgRect=e.append("rect").style("pointer-events","all"):c(t)?l[t]=e.append("path").style("fill","none"):"backplot"===t?e.append("g").classed("choroplethlayer",!0):"frontplot"===t?e.append("g").classed("scatterlayer",!0):h(t)?l[t]=e.append("path").style("fill","none").style("stroke-miterlimit",2):f(t)&&(l[t]=e.append("path").style("stroke","none"))})),d.order(),d.each((function(r){var n=l[r],i=v.layerNameToAdjective[r];"frame"===r?n.datum(v.sphereSVG):h(r)||f(r)?n.datum(b(a,a.objects[r])):c(r)&&n.datum(function(t,e,r){var n,a,i,o=e[t],s=v.scopeDefaults[e.scope];"lonaxis"===t?(n=s.lonaxisRange,a=s.lataxisRange,i=function(t,e){return[t,e]}):"lataxis"===t&&(n=s.lataxisRange,a=s.lonaxisRange,i=function(t,e){return[e,t]});var l={type:"linear",range:[n[0],n[1]-1e-6],tick0:o.tick0,dtick:o.dtick};u.setConvert(l,r);var c=u.calcTicks(l);e.isScoped||"lonaxis"!==t||c.pop();for(var h=c.length,f=new Array(h),p=0;p<h;p++)for(var d=c[p].x,g=f[p]=[],m=a[0];m<a[1]+2.5;m+=2.5)g.push(i(d,m));return{type:"MultiLineString",coordinates:f}}(r,e,t)).call(o.stroke,e[r].gridcolor).call(s.dashLine,"",e[r].gridwidth),h(r)?n.call(o.stroke,e[i+"color"]).call(s.dashLine,"",e[i+"width"]):f(r)&&n.call(o.fill,e[i+"color"])}))},w.updateDims=function(t,e){var r=this.bounds,n=(e.framewidth||0)/2,a=r[0][0]-n,i=r[0][1]-n,l=r[1][0]-a+n,c=r[1][1]-i+n;s.setRect(this.clipRect,a,i,l,c),this.bgRect.call(s.setRect,a,i,l,c).call(o.fill,e.bgcolor),this.xaxis._offset=a,this.xaxis._length=l,this.yaxis._offset=i,this.yaxis._length=c},w.updateFx=function(t,e){var r=this,i=r.graphDiv,o=r.bgRect,s=t.dragmode,c=t.clickmode;if(!r.isStatic){var u;"select"===s?u=function(t,e){(t.range={})[r.id]=[v([e.xmin,e.ymin]),v([e.xmax,e.ymax])]}:"lasso"===s&&(u=function(t,e,n){(t.lassoPoints={})[r.id]=n.filtered.map(v)});var h={element:r.bgRect.node(),gd:i,plotinfo:{id:r.id,xaxis:r.xaxis,yaxis:r.yaxis,fillRangeItems:u},xaxes:[r.xaxis],yaxes:[r.yaxis],subplot:r.id,clickFn:function(t){2===t&&d(i)}};"pan"===s?(o.node().onmousedown=null,o.call(m(r,e)),o.on("dblclick.zoom",(function(){var t=r.viewInitial,e={};for(var n in t)e[r.id+"."+n]=t[n];a.call("_guiRelayout",i,e),i.emit("plotly_doubleclick",null)})),i._context._scrollZoom.geo||o.on("wheel.zoom",null)):"select"!==s&&"lasso"!==s||(o.on(".zoom",null),h.prepFn=function(t,e,r){p(t,e,r,h,s)},f.init(h)),o.on("mousemove",(function(){var t=r.projection.invert(n.mouse(this));if(!t||isNaN(t[0])||isNaN(t[1]))return f.unhover(i,n.event);r.xaxis.p2c=function(){return t[0]},r.yaxis.p2c=function(){return t[1]},l.hover(i,n.event,r.id)})),o.on("mouseout",(function(){i._dragging||f.unhover(i,n.event)})),o.on("click",(function(){"select"!==s&&"lasso"!==s&&(c.indexOf("select")>-1&&g(n.event,i,[r.xaxis],[r.yaxis],r.id,h),c.indexOf("event")>-1&&l.click(i,n.event))}))}function v(t){return r.projection.invert([t[0]+r.xaxis._offset,t[1]+r.yaxis._offset])}},w.makeFramework=function(){var t=this,e=t.graphDiv,r=e._fullLayout,a="clip"+r._uid+t.id;t.clipDef=r._clips.append("clipPath").attr("id",a),t.clipRect=t.clipDef.append("rect"),t.framework=n.select(t.container).append("g").attr("class","geo "+t.id).call(s.setClipUrl,a,e),t.project=function(e){var r=t.projection(e);return r?[r[0]-t.xaxis._offset,r[1]-t.yaxis._offset]:[null,null]},t.xaxis={_id:"x",c2p:function(e){return t.project(e)[0]}},t.yaxis={_id:"y",c2p:function(e){return t.project(e)[1]}},t.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},u.setConvert(t.mockAxis,r)},w.saveViewInitial=function(t){var e,r=t.center||{},n=t.projection,a=n.rotation||{};this.viewInitial={fitbounds:t.fitbounds,"projection.scale":n.scale},e=t._isScoped?{"center.lon":r.lon,"center.lat":r.lat}:t._isClipped?{"projection.rotation.lon":a.lon,"projection.rotation.lat":a.lat}:{"center.lon":r.lon,"center.lat":r.lat,"projection.rotation.lon":a.lon},i.extendFlat(this.viewInitial,e)},w.render=function(){var t,e=this.projection,r=e.getPath();function n(t){var r=e(t.lonlat);return r?"translate("+r[0]+","+r[1]+")":null}function a(t){return e.isLonLatOverEdges(t.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(t){return r(t.geojson)}));for(t in this.dataPoints)this.dataPoints[t].attr("display",a).attr("transform",n)}},{"../../components/color":595,"../../components/dragelement":614,"../../components/drawing":617,"../../components/fx":635,"../../lib":728,"../../lib/geo_location_utils":722,"../../lib/topojson_utils":755,"../../registry":859,"../cartesian/autorange":775,"../cartesian/axes":776,"../cartesian/select":795,"../plots":839,"./constants":806,"./projections":811,"./zoom":812,d3:164,"topojson-client":531}],808:[function(t,e,r){"use strict";var n=t("../../plots/get_data").getSubplotCalcData,a=t("../../lib").counterRegex,i=t("./geo"),o="geo",s=a(o),l={};l.geo={valType:"subplotid",dflt:o,editType:"calc"},e.exports={attr:o,name:o,idRoot:o,idRegex:s,attrRegex:s,attributes:l,layoutAttributes:t("./layout_attributes"),supplyLayoutDefaults:t("./layout_defaults"),plot:function(t){for(var e=t._fullLayout,r=t.calcdata,a=e._subplots.geo,s=0;s<a.length;s++){var l=a[s],c=n(r,o,l),u=e[l]._subplot;u||(u=i({id:l,graphDiv:t,container:e._geolayer.node(),topojsonURL:t._context.topojsonURL,staticPlot:t._context.staticPlot}),e[l]._subplot=u),u.plot(c,e,t._promises)}},updateFx:function(t){for(var e=t._fullLayout,r=e._subplots.geo,n=0;n<r.length;n++){var a=e[r[n]];a._subplot.updateFx(e,a)}},clean:function(t,e,r,n){for(var a=n._subplots.geo||[],i=0;i<a.length;i++){var o=a[i],s=n[o]._subplot;!e[o]&&s&&(s.framework.remove(),s.clipDef.remove())}}}},{"../../lib":728,"../../plots/get_data":813,"./geo":807,"./layout_attributes":809,"./layout_defaults":810}],809:[function(t,e,r){"use strict";var n=t("../../components/color/attributes"),a=t("../domain").attributes,i=t("./constants"),o=t("../../plot_api/edit_types").overrideAll,s={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:n.lightLine},gridwidth:{valType:"number",min:0,dflt:1}};(e.exports=o({domain:a({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:Object.keys(i.scopeDefaults),dflt:"world"},projection:{type:{valType:"enumerated",values:Object.keys(i.projNames)},rotation:{lon:{valType:"number"},lat:{valType:"number"},roll:{valType:"number"}},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:n.defaultLine},coastlinewidth:{valType:"number",min:0,dflt:1},showland:{valType:"boolean",dflt:!1},landcolor:{valType:"color",dflt:i.landColor},showocean:{valType:"boolean",dflt:!1},oceancolor:{valType:"color",dflt:i.waterColor},showlakes:{valType:"boolean",dflt:!1},lakecolor:{valType:"color",dflt:i.waterColor},showrivers:{valType:"boolean",dflt:!1},rivercolor:{valType:"color",dflt:i.waterColor},riverwidth:{valType:"number",min:0,dflt:1},showcountries:{valType:"boolean"},countrycolor:{valType:"color",dflt:n.defaultLine},countrywidth:{valType:"number",min:0,dflt:1},showsubunits:{valType:"boolean"},subunitcolor:{valType:"color",dflt:n.defaultLine},subunitwidth:{valType:"number",min:0,dflt:1},showframe:{valType:"boolean"},framecolor:{valType:"color",dflt:n.defaultLine},framewidth:{valType:"number",min:0,dflt:1},bgcolor:{valType:"color",dflt:n.background},lonaxis:s,lataxis:s},"plot","from-root")).uirevision={valType:"any",editType:"none"}},{"../../components/color/attributes":594,"../../plot_api/edit_types":759,"../domain":803,"./constants":806}],810:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../subplot_defaults"),i=t("../get_data").getSubplotData,o=t("./constants"),s=t("./layout_attributes"),l=o.axesNames;function c(t,e,r,a){var s=i(a.fullData,"geo",a.id).map((function(t){return t._expandedIndex})),c=r("resolution"),u=r("scope"),h=o.scopeDefaults[u],f=r("projection.type",h.projType),p=e._isAlbersUsa="albers usa"===f;p&&(u=e.scope="usa");var d=e._isScoped="world"!==u,g=e._isConic=-1!==f.indexOf("conic"),m=e._isClipped=!!o.lonaxisSpan[f];if(!1===t.visible){var v=n.extendDeep({},e._template);v.showcoastlines=!1,v.showcountries=!1,v.showframe=!1,v.showlakes=!1,v.showland=!1,v.showocean=!1,v.showrivers=!1,v.showsubunits=!1,v.lonaxis&&(v.lonaxis.showgrid=!1),v.lataxis&&(v.lataxis.showgrid=!1),e._template=v}for(var y=r("visible"),x=0;x<l.length;x++){var b,_=l[x],w=[30,10][x];if(d)b=h[_+"Range"];else{var T=o[_+"Span"],k=(T[f]||T["*"])/2,A=r("projection.rotation."+_.substr(0,3),h.projRotate[x]);b=[A-k,A+k]}var M=r(_+".range",b);r(_+".tick0"),r(_+".dtick",w),r(_+".showgrid",!!y&&void 0)&&(r(_+".gridcolor"),r(_+".gridwidth")),e[_]._ax={type:"linear",_id:_.slice(0,3),_traceIndices:s,setScale:n.identity,c2l:n.identity,r2l:n.identity,autorange:!0,range:M.slice(),_m:1,_input:{}}}var S=e.lonaxis.range,E=e.lataxis.range,C=S[0],L=S[1];C>0&&L<0&&(L+=360);var P,I,z,O=(C+L)/2;if(!p){var D=d?h.projRotate:[O,0,0];P=r("projection.rotation.lon",D[0]),r("projection.rotation.lat",D[1]),r("projection.rotation.roll",D[2]),r("showcoastlines",!d&&y)&&(r("coastlinecolor"),r("coastlinewidth")),r("showocean",!!y&&void 0)&&r("oceancolor")}(p?(I=-96.6,z=38.7):(I=d?O:P,z=(E[0]+E[1])/2),r("center.lon",I),r("center.lat",z),g)&&r("projection.parallels",h.projParallels||[0,60]);r("projection.scale"),r("showland",!!y&&void 0)&&r("landcolor"),r("showlakes",!!y&&void 0)&&r("lakecolor"),r("showrivers",!!y&&void 0)&&(r("rivercolor"),r("riverwidth")),r("showcountries",d&&"usa"!==u&&y)&&(r("countrycolor"),r("countrywidth")),("usa"===u||"north america"===u&&50===c)&&(r("showsubunits",y),r("subunitcolor"),r("subunitwidth")),d||r("showframe",y)&&(r("framecolor"),r("framewidth")),r("bgcolor"),r("fitbounds")&&(delete e.projection.scale,d?(delete e.center.lon,delete e.center.lat):m?(delete e.center.lon,delete e.center.lat,delete e.projection.rotation.lon,delete e.projection.rotation.lat,delete e.lonaxis.range,delete e.lataxis.range):(delete e.center.lon,delete e.center.lat,delete e.projection.rotation.lon))}e.exports=function(t,e,r){a(t,e,r,{type:"geo",attributes:s,handleDefaults:c,fullData:r,partition:"y"})}},{"../../lib":728,"../get_data":813,"../subplot_defaults":853,"./constants":806,"./layout_attributes":809}],811:[function(t,e,r){"use strict";e.exports=function(t){function e(t,e){return{type:"Feature",id:t.id,properties:t.properties,geometry:r(t.geometry,e)}}function r(e,n){if(!e)return null;if("GeometryCollection"===e.type)return{type:"GeometryCollection",geometries:object.geometries.map((function(t){return r(t,n)}))};if(!c.hasOwnProperty(e.type))return null;var a=c[e.type];return t.geo.stream(e,n(a)),a.result()}t.geo.project=function(t,e){var a=e.stream;if(!a)throw new Error("not yet supported");return(t&&n.hasOwnProperty(t.type)?n[t.type]:r)(t,a)};var n={Feature:e,FeatureCollection:function(t,r){return{type:"FeatureCollection",features:t.features.map((function(t){return e(t,r)}))}}},a=[],i=[],o={point:function(t,e){a.push([t,e])},result:function(){var t=a.length?a.length<2?{type:"Point",coordinates:a[0]}:{type:"MultiPoint",coordinates:a}:null;return a=[],t}},s={lineStart:u,point:function(t,e){a.push([t,e])},lineEnd:function(){a.length&&(i.push(a),a=[])},result:function(){var t=i.length?i.length<2?{type:"LineString",coordinates:i[0]}:{type:"MultiLineString",coordinates:i}:null;return i=[],t}},l={polygonStart:u,lineStart:u,point:function(t,e){a.push([t,e])},lineEnd:function(){var t=a.length;if(t){do{a.push(a[0].slice())}while(++t<4);i.push(a),a=[]}},polygonEnd:u,result:function(){if(!i.length)return null;var t=[],e=[];return i.forEach((function(r){!function(t){if((e=t.length)<4)return!1;var e,r=0,n=t[e-1][1]*t[0][0]-t[e-1][0]*t[0][1];for(;++r<e;)n+=t[r-1][1]*t[r][0]-t[r-1][0]*t[r][1];return n<=0}(r)?e.push(r):t.push([r])})),e.forEach((function(e){var r=e[0];t.some((function(t){if(function(t,e){for(var r=e[0],n=e[1],a=!1,i=0,o=t.length,s=o-1;i<o;s=i++){var l=t[i],c=l[0],u=l[1],h=t[s],f=h[0],p=h[1];u>n^p>n&&r<(f-c)*(n-u)/(p-u)+c&&(a=!a)}return a}(t[0],r))return t.push(e),!0}))||t.push([e])})),i=[],t.length?t.length>1?{type:"MultiPolygon",coordinates:t}:{type:"Polygon",coordinates:t[0]}:null}},c={Point:o,MultiPoint:o,LineString:s,MultiLineString:s,Polygon:l,MultiPolygon:l,Sphere:l};function u(){}var h=1e-6,f=Math.PI,p=f/2,d=(Math.sqrt(f),f/180),g=180/f;function m(t){return t>1?p:t<-1?-p:Math.asin(t)}function v(t){return t>1?0:t<-1?f:Math.acos(t)}var y=t.geo.projection,x=t.geo.projectionMutator;function b(t,e){var r=(2+p)*Math.sin(e);e/=2;for(var n=0,a=1/0;n<10&&Math.abs(a)>h;n++){var i=Math.cos(e);e-=a=(e+Math.sin(e)*(i+2)-r)/(2*i*(1+i))}return[2/Math.sqrt(f*(4+f))*t*(1+Math.cos(e)),2*Math.sqrt(f/(4+f))*Math.sin(e)]}t.geo.interrupt=function(e){var r,n=[[[[-f,0],[0,p],[f,0]]],[[[-f,0],[0,-p],[f,0]]]];function a(t,r){for(var a=r<0?-1:1,i=n[+(r<0)],o=0,s=i.length-1;o<s&&t>i[o][2][0];++o);var l=e(t-i[o][1][0],r);return l[0]+=e(i[o][1][0],a*r>a*i[o][0][1]?i[o][0][1]:r)[0],l}function i(){r=n.map((function(t){return t.map((function(t){var r,n=e(t[0][0],t[0][1])[0],a=e(t[2][0],t[2][1])[0],i=e(t[1][0],t[0][1])[1],o=e(t[1][0],t[1][1])[1];return i>o&&(r=i,i=o,o=r),[[n,i],[a,o]]}))}))}e.invert&&(a.invert=function(t,i){for(var o=r[+(i<0)],s=n[+(i<0)],l=0,u=o.length;l<u;++l){var h=o[l];if(h[0][0]<=t&&t<h[1][0]&&h[0][1]<=i&&i<h[1][1]){var f=e.invert(t-e(s[l][1][0],0)[0],i);return f[0]+=s[l][1][0],c(a(f[0],f[1]),[t,i])?f:null}}});var o=t.geo.projection(a),s=o.stream;function l(t,e){for(var r,n,a,i=-1,o=t.length,s=t[0],l=[];++i<o;){n=((r=t[i])[0]-s[0])/e,a=(r[1]-s[1])/e;for(var c=0;c<e;++c)l.push([s[0]+c*n,s[1]+c*a]);s=r}return l.push(r),l}function c(t,e){return Math.abs(t[0]-e[0])<h&&Math.abs(t[1]-e[1])<h}return o.stream=function(e){var r=o.rotate(),a=s(e),i=(o.rotate([0,0]),s(e));return o.rotate(r),a.sphere=function(){t.geo.stream(function(){for(var e=1e-6,r=[],a=0,i=n[0].length;a<i;++a){var o=180*(p=n[0][a])[0][0]/f,s=180*p[0][1]/f,c=180*p[1][1]/f,u=180*p[2][0]/f,h=180*p[2][1]/f;r.push(l([[o+e,s+e],[o+e,c-e],[u-e,c-e],[u-e,h+e]],30))}for(a=n[1].length-1;a>=0;--a){var p;o=180*(p=n[1][a])[0][0]/f,s=180*p[0][1]/f,c=180*p[1][1]/f,u=180*p[2][0]/f,h=180*p[2][1]/f;r.push(l([[u-e,h-e],[u-e,c+e],[o+e,c+e],[o+e,s-e]],30))}return{type:"Polygon",coordinates:[t.merge(r)]}}(),i)},a},o.lobes=function(t){return arguments.length?(n=t.map((function(t){return t.map((function(t){return[[t[0][0]*f/180,t[0][1]*f/180],[t[1][0]*f/180,t[1][1]*f/180],[t[2][0]*f/180,t[2][1]*f/180]]}))})),i(),o):n.map((function(t){return t.map((function(t){return[[180*t[0][0]/f,180*t[0][1]/f],[180*t[1][0]/f,180*t[1][1]/f],[180*t[2][0]/f,180*t[2][1]/f]]}))}))},o},b.invert=function(t,e){var r=.5*e*Math.sqrt((4+f)/f),n=m(r),a=Math.cos(n);return[t/(2/Math.sqrt(f*(4+f))*(1+a)),m((n+r*(a+2))/(2+p))]},(t.geo.eckert4=function(){return y(b)}).raw=b;var _=t.geo.azimuthalEqualArea.raw;function w(t,e){if(arguments.length<2&&(e=t),1===e)return _;if(e===1/0)return T;function r(r,n){var a=_(r/e,n);return a[0]*=t,a}return r.invert=function(r,n){var a=_.invert(r/t,n);return a[0]*=e,a},r}function T(t,e){return[t*Math.cos(e)/Math.cos(e/=2),2*Math.sin(e)]}function k(t,e){return[3*t/(2*f)*Math.sqrt(f*f/3-e*e),e]}function A(t,e){return[t,1.25*Math.log(Math.tan(f/4+.4*e))]}function M(t){return function(e){var r,n=t*Math.sin(e),a=30;do{e-=r=(e+Math.sin(e)-n)/(1+Math.cos(e))}while(Math.abs(r)>h&&--a>0);return e/2}}T.invert=function(t,e){var r=2*m(e/2);return[t*Math.cos(r/2)/Math.cos(r),r]},(t.geo.hammer=function(){var t=2,e=x(w),r=e(t);return r.coefficient=function(r){return arguments.length?e(t=+r):t},r}).raw=w,k.invert=function(t,e){return[2/3*f*t/Math.sqrt(f*f/3-e*e),e]},(t.geo.kavrayskiy7=function(){return y(k)}).raw=k,A.invert=function(t,e){return[t,2.5*Math.atan(Math.exp(.8*e))-.625*f]},(t.geo.miller=function(){return y(A)}).raw=A,M(f);var S=function(t,e,r){var n=M(r);function a(r,a){return[t*r*Math.cos(a=n(a)),e*Math.sin(a)]}return a.invert=function(n,a){var i=m(a/e);return[n/(t*Math.cos(i)),m((2*i+Math.sin(2*i))/r)]},a}(Math.SQRT2/p,Math.SQRT2,f);function E(t,e){var r=e*e,n=r*r;return[t*(.8707-.131979*r+n*(n*(.003971*r-.001529*n)-.013791)),e*(1.007226+r*(.015085+n*(.028874*r-.044475-.005916*n)))]}(t.geo.mollweide=function(){return y(S)}).raw=S,E.invert=function(t,e){var r,n=e,a=25;do{var i=n*n,o=i*i;n-=r=(n*(1.007226+i*(.015085+o*(.028874*i-.044475-.005916*o)))-e)/(1.007226+i*(.045255+o*(.259866*i-.311325-.005916*11*o)))}while(Math.abs(r)>h&&--a>0);return[t/(.8707+(i=n*n)*(i*(i*i*i*(.003971-.001529*i)-.013791)-.131979)),n]},(t.geo.naturalEarth=function(){return y(E)}).raw=E;var C=[[.9986,-.062],[1,0],[.9986,.062],[.9954,.124],[.99,.186],[.9822,.248],[.973,.31],[.96,.372],[.9427,.434],[.9216,.4958],[.8962,.5571],[.8679,.6176],[.835,.6769],[.7986,.7346],[.7597,.7903],[.7186,.8435],[.6732,.8936],[.6213,.9394],[.5722,.9761],[.5322,1]];function L(t,e){var r,n=Math.min(18,36*Math.abs(e)/f),a=Math.floor(n),i=n-a,o=(r=C[a])[0],s=r[1],l=(r=C[++a])[0],c=r[1],u=(r=C[Math.min(19,++a)])[0],h=r[1];return[t*(l+i*(u-o)/2+i*i*(u-2*l+o)/2),(e>0?p:-p)*(c+i*(h-s)/2+i*i*(h-2*c+s)/2)]}function P(t,e){return[t*Math.cos(e),e]}function I(t,e){var r,n=Math.cos(e),a=(r=v(n*Math.cos(t/=2)))?r/Math.sin(r):1;return[2*n*Math.sin(t)*a,Math.sin(e)*a]}function z(t,e){var r=I(t,e);return[(r[0]+t/p)/2,(r[1]+e)/2]}C.forEach((function(t){t[1]*=1.0144})),L.invert=function(t,e){var r=e/p,n=90*r,a=Math.min(18,Math.abs(n/5)),i=Math.max(0,Math.floor(a));do{var o=C[i][1],s=C[i+1][1],l=C[Math.min(19,i+2)][1],c=l-o,u=l-2*s+o,h=2*(Math.abs(r)-s)/c,f=u/c,m=h*(1-f*h*(1-2*f*h));if(m>=0||1===i){n=(e>=0?5:-5)*(m+a);var v,y=50;do{m=(a=Math.min(18,Math.abs(n)/5))-(i=Math.floor(a)),o=C[i][1],s=C[i+1][1],l=C[Math.min(19,i+2)][1],n-=(v=(e>=0?p:-p)*(s+m*(l-o)/2+m*m*(l-2*s+o)/2)-e)*g}while(Math.abs(v)>1e-12&&--y>0);break}}while(--i>=0);var x=C[i][0],b=C[i+1][0],_=C[Math.min(19,i+2)][0];return[t/(b+m*(_-x)/2+m*m*(_-2*b+x)/2),n*d]},(t.geo.robinson=function(){return y(L)}).raw=L,P.invert=function(t,e){return[t/Math.cos(e),e]},(t.geo.sinusoidal=function(){return y(P)}).raw=P,I.invert=function(t,e){if(!(t*t+4*e*e>f*f+h)){var r=t,n=e,a=25;do{var i,o=Math.sin(r),s=Math.sin(r/2),l=Math.cos(r/2),c=Math.sin(n),u=Math.cos(n),p=Math.sin(2*n),d=c*c,g=u*u,m=s*s,y=1-g*l*l,x=y?v(u*l)*Math.sqrt(i=1/y):i=0,b=2*x*u*s-t,_=x*c-e,w=i*(g*m+x*u*l*d),T=i*(.5*o*p-2*x*c*s),k=.25*i*(p*s-x*c*g*o),A=i*(d*l+x*m*u),M=T*k-A*w;if(!M)break;var S=(_*T-b*A)/M,E=(b*k-_*w)/M;r-=S,n-=E}while((Math.abs(S)>h||Math.abs(E)>h)&&--a>0);return[r,n]}},(t.geo.aitoff=function(){return y(I)}).raw=I,z.invert=function(t,e){var r=t,n=e,a=25;do{var i,o=Math.cos(n),s=Math.sin(n),l=Math.sin(2*n),c=s*s,u=o*o,f=Math.sin(r),d=Math.cos(r/2),g=Math.sin(r/2),m=g*g,y=1-u*d*d,x=y?v(o*d)*Math.sqrt(i=1/y):i=0,b=.5*(2*x*o*g+r/p)-t,_=.5*(x*s+n)-e,w=.5*i*(u*m+x*o*d*c)+.5/p,T=i*(f*l/4-x*s*g),k=.125*i*(l*g-x*s*u*f),A=.5*i*(c*d+x*m*o)+.5,M=T*k-A*w,S=(_*T-b*A)/M,E=(b*k-_*w)/M;r-=S,n-=E}while((Math.abs(S)>h||Math.abs(E)>h)&&--a>0);return[r,n]},(t.geo.winkel3=function(){return y(z)}).raw=z}},{}],812:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../lib"),i=t("../../registry"),o=Math.PI/180,s=180/Math.PI,l={cursor:"pointer"},c={cursor:"auto"};function u(t,e){return n.behavior.zoom().translate(e.translate()).scale(e.scale())}function h(t,e,r){var n=t.id,o=t.graphDiv,s=o.layout,l=s[n],c=o._fullLayout,u=c[n],h={},f={};function p(t,e){h[n+"."+t]=a.nestedProperty(l,t).get(),i.call("_storeDirectGUIEdit",s,c._preGUI,h);var r=a.nestedProperty(u,t);r.get()!==e&&(r.set(e),a.nestedProperty(l,t).set(e),f[n+"."+t]=e)}r(p),p("projection.scale",e.scale()/t.fitScale),p("fitbounds",!1),o.emit("plotly_relayout",f)}function f(t,e){var r=u(0,e);function a(r){var n=e.invert(t.midPt);r("center.lon",n[0]),r("center.lat",n[1])}return r.on("zoomstart",(function(){n.select(this).style(l)})).on("zoom",(function(){e.scale(n.event.scale).translate(n.event.translate),t.render();var r=e.invert(t.midPt);t.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":e.scale()/t.fitScale,"geo.center.lon":r[0],"geo.center.lat":r[1]})})).on("zoomend",(function(){n.select(this).style(c),h(t,e,a)})),r}function p(t,e){var r,a,i,o,s,f,p,d,g,m=u(0,e);function v(t){return e.invert(t)}function y(r){var n=e.rotate(),a=e.invert(t.midPt);r("projection.rotation.lon",-n[0]),r("center.lon",a[0]),r("center.lat",a[1])}return m.on("zoomstart",(function(){n.select(this).style(l),r=n.mouse(this),a=e.rotate(),i=e.translate(),o=a,s=v(r)})).on("zoom",(function(){if(f=n.mouse(this),function(t){var r=v(t);if(!r)return!0;var n=e(r);return Math.abs(n[0]-t[0])>2||Math.abs(n[1]-t[1])>2}(r))return m.scale(e.scale()),void m.translate(e.translate());e.scale(n.event.scale),e.translate([i[0],n.event.translate[1]]),s?v(f)&&(d=v(f),p=[o[0]+(d[0]-s[0]),a[1],a[2]],e.rotate(p),o=p):s=v(r=f),g=!0,t.render();var l=e.rotate(),c=e.invert(t.midPt);t.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":e.scale()/t.fitScale,"geo.center.lon":c[0],"geo.center.lat":c[1],"geo.projection.rotation.lon":-l[0]})})).on("zoomend",(function(){n.select(this).style(c),g&&h(t,e,y)})),m}function d(t,e){var r,a={r:e.rotate(),k:e.scale()},i=u(0,e),o=function(t){var e=0,r=arguments.length,a=[];for(;++e<r;)a.push(arguments[e]);var i=n.dispatch.apply(null,a);return i.of=function(e,r){return function(a){var o;try{o=a.sourceEvent=n.event,a.target=t,n.event=a,i[a.type].apply(e,r)}finally{n.event=o}}},i}(i,"zoomstart","zoom","zoomend"),s=0,f=i.on;function p(t){s++||t({type:"zoomstart"})}function d(t){t({type:"zoom"})}function b(t){--s||t({type:"zoomend"})}function _(t){var r=e.rotate();t("projection.rotation.lon",-r[0]),t("projection.rotation.lat",-r[1])}return i.on("zoomstart",(function(){n.select(this).style(l);var t=n.mouse(this),s=e.rotate(),c=s,u=e.translate(),h=m(s);r=g(e,t),f.call(i,"zoom",(function(){var i=n.mouse(this);if(e.scale(a.k=n.event.scale),r){if(g(e,i)){e.rotate(s).translate(u);var l=g(e,i),f=y(r,l),p=T(v(h,f)),m=a.r=x(p,r,c);isFinite(m[0])&&isFinite(m[1])&&isFinite(m[2])||(m=c),e.rotate(m),c=m}}else r=g(e,t=i);d(o.of(this,arguments))})),p(o.of(this,arguments))})).on("zoomend",(function(){n.select(this).style(c),f.call(i,"zoom",null),b(o.of(this,arguments)),h(t,e,_)})).on("zoom.redraw",(function(){t.render();var r=e.rotate();t.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":e.scale()/t.fitScale,"geo.projection.rotation.lon":-r[0],"geo.projection.rotation.lat":-r[1]})})),n.rebind(i,o,"on")}function g(t,e){var r=t.invert(e);return r&&isFinite(r[0])&&isFinite(r[1])&&function(t){var e=t[0]*o,r=t[1]*o,n=Math.cos(r);return[n*Math.cos(e),n*Math.sin(e),Math.sin(r)]}(r)}function m(t){var e=.5*t[0]*o,r=.5*t[1]*o,n=.5*t[2]*o,a=Math.sin(e),i=Math.cos(e),s=Math.sin(r),l=Math.cos(r),c=Math.sin(n),u=Math.cos(n);return[i*l*u+a*s*c,a*l*u-i*s*c,i*s*u+a*l*c,i*l*c-a*s*u]}function v(t,e){var r=t[0],n=t[1],a=t[2],i=t[3],o=e[0],s=e[1],l=e[2],c=e[3];return[r*o-n*s-a*l-i*c,r*s+n*o+a*c-i*l,r*l-n*c+a*o+i*s,r*c+n*l-a*s+i*o]}function y(t,e){if(t&&e){var r=function(t,e){return[t[1]*e[2]-t[2]*e[1],t[2]*e[0]-t[0]*e[2],t[0]*e[1]-t[1]*e[0]]}(t,e),n=Math.sqrt(k(r,r)),a=.5*Math.acos(Math.max(-1,Math.min(1,k(t,e)))),i=Math.sin(a)/n;return n&&[Math.cos(a),r[2]*i,-r[1]*i,r[0]*i]}}function x(t,e,r){var n=w(e,2,t[0]);n=w(n,1,t[1]),n=w(n,0,t[2]-r[2]);var a,i,o=e[0],l=e[1],c=e[2],u=n[0],h=n[1],f=n[2],p=Math.atan2(l,o)*s,d=Math.sqrt(o*o+l*l);Math.abs(h)>d?(i=(h>0?90:-90)-p,a=0):(i=Math.asin(h/d)*s-p,a=Math.sqrt(d*d-h*h));var g=180-i-2*p,m=(Math.atan2(f,u)-Math.atan2(c,a))*s,v=(Math.atan2(f,u)-Math.atan2(c,-a))*s;return b(r[0],r[1],i,m)<=b(r[0],r[1],g,v)?[i,m,r[2]]:[g,v,r[2]]}function b(t,e,r,n){var a=_(r-t),i=_(n-e);return Math.sqrt(a*a+i*i)}function _(t){return(t%360+540)%360-180}function w(t,e,r){var n=r*o,a=t.slice(),i=0===e?1:0,s=2===e?1:2,l=Math.cos(n),c=Math.sin(n);return a[i]=t[i]*l-t[s]*c,a[s]=t[s]*l+t[i]*c,a}function T(t){return[Math.atan2(2*(t[0]*t[1]+t[2]*t[3]),1-2*(t[1]*t[1]+t[2]*t[2]))*s,Math.asin(Math.max(-1,Math.min(1,2*(t[0]*t[2]-t[3]*t[1]))))*s,Math.atan2(2*(t[0]*t[3]+t[1]*t[2]),1-2*(t[2]*t[2]+t[3]*t[3]))*s]}function k(t,e){for(var r=0,n=0,a=t.length;n<a;++n)r+=t[n]*e[n];return r}e.exports=function(t,e){var r=t.projection;return(e._isScoped?f:e._isClipped?d:p)(t,r)}},{"../../lib":728,"../../registry":859,d3:164}],813:[function(t,e,r){"use strict";var n=t("../registry"),a=t("./cartesian/constants").SUBPLOT_PATTERN;r.getSubplotCalcData=function(t,e,r){var a=n.subplotsRegistry[e];if(!a)return[];for(var i=a.attr,o=[],s=0;s<t.length;s++){var l=t[s];l[0].trace[i]===r&&o.push(l)}return o},r.getModuleCalcData=function(t,e){var r,a=[],i=[];if(!(r="string"==typeof e?n.getModule(e).plot:"function"==typeof e?e:e.plot))return[a,t];for(var o=0;o<t.length;o++){var s=t[o],l=s[0].trace;!0===l.visible&&0!==l._length&&(l._module.plot===r?a.push(s):i.push(s))}return[a,i]},r.getSubplotData=function(t,e,r){if(!n.subplotsRegistry[e])return[];var i,o,s,l=n.subplotsRegistry[e].attr,c=[];if("gl2d"===e){var u=r.match(a);o="x"+u[1],s="y"+u[2]}for(var h=0;h<t.length;h++)i=t[h],"gl2d"===e&&n.traceIs(i,"gl2d")?i[l[0]]===o&&i[l[1]]===s&&c.push(i):i[l]===r&&c.push(i);return c}},{"../registry":859,"./cartesian/constants":782}],814:[function(t,e,r){"use strict";var n=t("mouse-change"),a=t("mouse-wheel"),i=t("mouse-event-offset"),o=t("../cartesian/constants"),s=t("has-passive-events");function l(t,e){this.element=t,this.plot=e,this.mouseListener=null,this.wheelListener=null,this.lastInputTime=Date.now(),this.lastPos=[0,0],this.boxEnabled=!1,this.boxInited=!1,this.boxStart=[0,0],this.boxEnd=[0,0],this.dragStart=[0,0]}e.exports=function(t){var e=t.mouseContainer,r=t.glplot,c=new l(e,r);function u(){t.xaxis.autorange=!1,t.yaxis.autorange=!1}function h(e,n,a){var i,s,l=t.calcDataBox(),h=r.viewBox,f=c.lastPos[0],p=c.lastPos[1],d=o.MINDRAG*r.pixelRatio,g=o.MINZOOM*r.pixelRatio;function m(e,r,n){var a=Math.min(r,n),i=Math.max(r,n);a!==i?(l[e]=a,l[e+2]=i,c.dataBox=l,t.setRanges(l)):(t.selectBox.selectBox=[0,0,1,1],t.glplot.setDirty())}switch(n*=r.pixelRatio,a*=r.pixelRatio,a=h[3]-h[1]-a,t.fullLayout.dragmode){case"zoom":if(e){var v=n/(h[2]-h[0])*(l[2]-l[0])+l[0],y=a/(h[3]-h[1])*(l[3]-l[1])+l[1];c.boxInited||(c.boxStart[0]=v,c.boxStart[1]=y,c.dragStart[0]=n,c.dragStart[1]=a),c.boxEnd[0]=v,c.boxEnd[1]=y,c.boxInited=!0,c.boxEnabled||c.boxStart[0]===c.boxEnd[0]&&c.boxStart[1]===c.boxEnd[1]||(c.boxEnabled=!0);var x=Math.abs(c.dragStart[0]-n)<g,b=Math.abs(c.dragStart[1]-a)<g;if(!function(){for(var e=t.graphDiv._fullLayout._axisConstraintGroups,r=t.xaxis._id,n=t.yaxis._id,a=0;a<e.length;a++)if(-1!==e[a][r]){if(-1!==e[a][n])return!0;break}return!1}()||x&&b)x&&(c.boxEnd[0]=c.boxStart[0]),b&&(c.boxEnd[1]=c.boxStart[1]);else{i=c.boxEnd[0]-c.boxStart[0],s=c.boxEnd[1]-c.boxStart[1];var _=(l[3]-l[1])/(l[2]-l[0]);Math.abs(i*_)>Math.abs(s)?(c.boxEnd[1]=c.boxStart[1]+Math.abs(i)*_*(s>=0?1:-1),c.boxEnd[1]<l[1]?(c.boxEnd[1]=l[1],c.boxEnd[0]=c.boxStart[0]+(l[1]-c.boxStart[1])/Math.abs(_)):c.boxEnd[1]>l[3]&&(c.boxEnd[1]=l[3],c.boxEnd[0]=c.boxStart[0]+(l[3]-c.boxStart[1])/Math.abs(_))):(c.boxEnd[0]=c.boxStart[0]+Math.abs(s)/_*(i>=0?1:-1),c.boxEnd[0]<l[0]?(c.boxEnd[0]=l[0],c.boxEnd[1]=c.boxStart[1]+(l[0]-c.boxStart[0])*Math.abs(_)):c.boxEnd[0]>l[2]&&(c.boxEnd[0]=l[2],c.boxEnd[1]=c.boxStart[1]+(l[2]-c.boxStart[0])*Math.abs(_)))}}else c.boxEnabled?(i=c.boxStart[0]!==c.boxEnd[0],s=c.boxStart[1]!==c.boxEnd[1],i||s?(i&&(m(0,c.boxStart[0],c.boxEnd[0]),t.xaxis.autorange=!1),s&&(m(1,c.boxStart[1],c.boxEnd[1]),t.yaxis.autorange=!1),t.relayoutCallback()):t.glplot.setDirty(),c.boxEnabled=!1,c.boxInited=!1):c.boxInited&&(c.boxInited=!1);break;case"pan":c.boxEnabled=!1,c.boxInited=!1,e?(c.panning||(c.dragStart[0]=n,c.dragStart[1]=a),Math.abs(c.dragStart[0]-n)<d&&(n=c.dragStart[0]),Math.abs(c.dragStart[1]-a)<d&&(a=c.dragStart[1]),i=(f-n)*(l[2]-l[0])/(r.viewBox[2]-r.viewBox[0]),s=(p-a)*(l[3]-l[1])/(r.viewBox[3]-r.viewBox[1]),l[0]+=i,l[2]+=i,l[1]+=s,l[3]+=s,t.setRanges(l),c.panning=!0,c.lastInputTime=Date.now(),u(),t.cameraChanged(),t.handleAnnotations()):c.panning&&(c.panning=!1,t.relayoutCallback())}c.lastPos[0]=n,c.lastPos[1]=a}return c.mouseListener=n(e,h),e.addEventListener("touchstart",(function(t){var r=i(t.changedTouches[0],e);h(0,r[0],r[1]),h(1,r[0],r[1]),t.preventDefault()}),!!s&&{passive:!1}),e.addEventListener("touchmove",(function(t){t.preventDefault();var r=i(t.changedTouches[0],e);h(1,r[0],r[1]),t.preventDefault()}),!!s&&{passive:!1}),e.addEventListener("touchend",(function(t){h(0,c.lastPos[0],c.lastPos[1]),t.preventDefault()}),!!s&&{passive:!1}),c.wheelListener=a(e,(function(e,n){if(!t.scrollZoom)return!1;var a=t.calcDataBox(),i=r.viewBox,o=c.lastPos[0],s=c.lastPos[1],l=Math.exp(5*n/(i[3]-i[1])),h=o/(i[2]-i[0])*(a[2]-a[0])+a[0],f=s/(i[3]-i[1])*(a[3]-a[1])+a[1];return a[0]=(a[0]-h)*l+h,a[2]=(a[2]-h)*l+h,a[1]=(a[1]-f)*l+f,a[3]=(a[3]-f)*l+f,t.setRanges(a),c.lastInputTime=Date.now(),u(),t.cameraChanged(),t.handleAnnotations(),t.relayoutCallback(),!0}),!0),c}},{"../cartesian/constants":782,"has-passive-events":410,"mouse-change":436,"mouse-event-offset":437,"mouse-wheel":439}],815:[function(t,e,r){"use strict";var n=t("../cartesian/axes"),a=t("../../lib/str2rgbarray");function i(t){this.scene=t,this.gl=t.gl,this.pixelRatio=t.pixelRatio,this.screenBox=[0,0,1,1],this.viewBox=[0,0,1,1],this.dataBox=[-1,-1,1,1],this.borderLineEnable=[!1,!1,!1,!1],this.borderLineWidth=[1,1,1,1],this.borderLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.ticks=[[],[]],this.tickEnable=[!0,!0,!1,!1],this.tickPad=[15,15,15,15],this.tickAngle=[0,0,0,0],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickMarkLength=[0,0,0,0],this.tickMarkWidth=[0,0,0,0],this.tickMarkColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labels=["x","y"],this.labelEnable=[!0,!0,!1,!1],this.labelAngle=[0,Math.PI/2,0,3*Math.PI/2],this.labelPad=[15,15,15,15],this.labelSize=[12,12],this.labelFont=["sans-serif","sans-serif"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.title="",this.titleEnable=!0,this.titleCenter=[0,0,0,0],this.titleAngle=0,this.titleColor=[0,0,0,1],this.titleFont="sans-serif",this.titleSize=18,this.gridLineEnable=[!0,!0],this.gridLineColor=[[0,0,0,.5],[0,0,0,.5]],this.gridLineWidth=[1,1],this.zeroLineEnable=[!0,!0],this.zeroLineWidth=[1,1],this.zeroLineColor=[[0,0,0,1],[0,0,0,1]],this.borderColor=[0,0,0,0],this.backgroundColor=[0,0,0,0],this.static=this.scene.staticPlot}var o=i.prototype,s=["xaxis","yaxis"];o.merge=function(t){var e,r,n,i,o,l,c,u,h,f,p;for(this.titleEnable=!1,this.backgroundColor=a(t.plot_bgcolor),f=0;f<2;++f){var d=(e=s[f]).charAt(0);for(n=(r=t[this.scene[e]._name]).title.text===this.scene.fullLayout._dfltTitle[d]?"":r.title.text,p=0;p<=2;p+=2)this.labelEnable[f+p]=!1,this.labels[f+p]=n,this.labelColor[f+p]=a(r.title.font.color),this.labelFont[f+p]=r.title.font.family,this.labelSize[f+p]=r.title.font.size,this.labelPad[f+p]=this.getLabelPad(e,r),this.tickEnable[f+p]=!1,this.tickColor[f+p]=a((r.tickfont||{}).color),this.tickAngle[f+p]="auto"===r.tickangle?0:Math.PI*-r.tickangle/180,this.tickPad[f+p]=this.getTickPad(r),this.tickMarkLength[f+p]=0,this.tickMarkWidth[f+p]=r.tickwidth||0,this.tickMarkColor[f+p]=a(r.tickcolor),this.borderLineEnable[f+p]=!1,this.borderLineColor[f+p]=a(r.linecolor),this.borderLineWidth[f+p]=r.linewidth||0;c=this.hasSharedAxis(r),o=this.hasAxisInDfltPos(e,r)&&!c,l=this.hasAxisInAltrPos(e,r)&&!c,i=r.mirror||!1,u=c?-1!==String(i).indexOf("all"):!!i,h=c?"allticks"===i:-1!==String(i).indexOf("ticks"),o?this.labelEnable[f]=!0:l&&(this.labelEnable[f+2]=!0),o?this.tickEnable[f]=r.showticklabels:l&&(this.tickEnable[f+2]=r.showticklabels),(o||u)&&(this.borderLineEnable[f]=r.showline),(l||u)&&(this.borderLineEnable[f+2]=r.showline),(o||h)&&(this.tickMarkLength[f]=this.getTickMarkLength(r)),(l||h)&&(this.tickMarkLength[f+2]=this.getTickMarkLength(r)),this.gridLineEnable[f]=r.showgrid,this.gridLineColor[f]=a(r.gridcolor),this.gridLineWidth[f]=r.gridwidth,this.zeroLineEnable[f]=r.zeroline,this.zeroLineColor[f]=a(r.zerolinecolor),this.zeroLineWidth[f]=r.zerolinewidth}},o.hasSharedAxis=function(t){var e=this.scene,r=e.fullLayout._subplots.gl2d;return 0!==n.findSubplotsWithAxis(r,t).indexOf(e.id)},o.hasAxisInDfltPos=function(t,e){var r=e.side;return"xaxis"===t?"bottom"===r:"yaxis"===t?"left"===r:void 0},o.hasAxisInAltrPos=function(t,e){var r=e.side;return"xaxis"===t?"top"===r:"yaxis"===t?"right"===r:void 0},o.getLabelPad=function(t,e){var r=e.title.font.size,n=e.showticklabels;return"xaxis"===t?"top"===e.side?r*(1.5+(n?1:0))-10:r*(1.5+(n?.5:0))-10:"yaxis"===t?"right"===e.side?10+r*(1.5+(n?1:.5)):10+r*(1.5+(n?.5:0)):void 0},o.getTickPad=function(t){return"outside"===t.ticks?10+t.ticklen:15},o.getTickMarkLength=function(t){if(!t.ticks)return 0;var e=t.ticklen;return"inside"===t.ticks?-e:e},e.exports=function(t){return new i(t)}},{"../../lib/str2rgbarray":751,"../cartesian/axes":776}],816:[function(t,e,r){"use strict";var n=t("../../plot_api/edit_types").overrideAll,a=t("./scene2d"),i=t("../layout_attributes"),o=t("../../constants/xmlns_namespaces"),s=t("../cartesian/constants"),l=t("../cartesian"),c=t("../../components/fx/layout_attributes"),u=t("../get_data").getSubplotData;r.name="gl2d",r.attr=["xaxis","yaxis"],r.idRoot=["x","y"],r.idRegex=s.idRegex,r.attrRegex=s.attrRegex,r.attributes=t("../cartesian/attributes"),r.supplyLayoutDefaults=function(t,e,r){e._has("cartesian")||l.supplyLayoutDefaults(t,e,r)},r.layoutAttrOverrides=n(l.layoutAttributes,"plot","from-root"),r.baseLayoutAttrOverrides=n({plot_bgcolor:i.plot_bgcolor,hoverlabel:c.hoverlabel},"plot","nested"),r.plot=function(t){for(var e=t._fullLayout,r=t._fullData,n=e._subplots.gl2d,i=0;i<n.length;i++){var o=n[i],s=e._plots[o],l=u(r,"gl2d",o),c=s._scene2d;void 0===c&&(c=new a({id:o,graphDiv:t,container:t.querySelector(".gl-container"),staticPlot:t._context.staticPlot,plotGlPixelRatio:t._context.plotGlPixelRatio},e),s._scene2d=c),c.plot(l,t.calcdata,e,t.layout)}},r.clean=function(t,e,r,n){for(var a=n._subplots.gl2d||[],i=0;i<a.length;i++){var o=a[i],s=n._plots[o];if(s._scene2d){var c=u(t,"gl2d",o);0===c.length&&(s._scene2d.destroy(),delete n._plots[o])}}l.clean.apply(this,arguments)},r.drawFramework=function(t){t._context.staticPlot||l.drawFramework(t)},r.toSVG=function(t){for(var e=t._fullLayout,r=e._subplots.gl2d,n=0;n<r.length;n++){var a=e._plots[r[n]]._scene2d,i=a.toImage("png");e._glimages.append("svg:image").attr({xmlns:o.svg,"xlink:href":i,x:0,y:0,width:"100%",height:"100%",preserveAspectRatio:"none"}),a.destroy()}},r.updateFx=function(t){for(var e=t._fullLayout,r=e._subplots.gl2d,n=0;n<r.length;n++){e._plots[r[n]]._scene2d.updateFx(e.dragmode)}}},{"../../components/fx/layout_attributes":636,"../../constants/xmlns_namespaces":705,"../../plot_api/edit_types":759,"../cartesian":789,"../cartesian/attributes":774,"../cartesian/constants":782,"../get_data":813,"../layout_attributes":830,"./scene2d":817}],817:[function(t,e,r){"use strict";var n,a,i=t("../../registry"),o=t("../../plots/cartesian/axes"),s=t("../../components/fx"),l=t("gl-plot2d"),c=t("gl-spikes2d"),u=t("gl-select-box"),h=t("webgl-context"),f=t("./convert"),p=t("./camera"),d=t("../../lib/show_no_webgl_msg"),g=t("../cartesian/constraints"),m=g.enforce,v=g.clean,y=t("../cartesian/autorange").doAutoRange,x=t("../../components/dragelement/helpers"),b=x.drawMode,_=x.selectMode,w=["xaxis","yaxis"],T=t("../cartesian/constants").SUBPLOT_PATTERN;function k(t,e){this.container=t.container,this.graphDiv=t.graphDiv,this.pixelRatio=t.plotGlPixelRatio||window.devicePixelRatio,this.id=t.id,this.staticPlot=!!t.staticPlot,this.scrollZoom=this.graphDiv._context._scrollZoom.cartesian,this.fullData=null,this.updateRefs(e),this.makeFramework(),this.stopped||(this.glplotOptions=f(this),this.glplotOptions.merge(e),this.glplot=l(this.glplotOptions),this.camera=p(this),this.traces={},this.spikes=c(this.glplot),this.selectBox=u(this.glplot,{innerFill:!1,outerFill:!0}),this.lastButtonState=0,this.pickResult=null,this.isMouseOver=!0,this.stopped=!1,this.redraw=this.draw.bind(this),this.redraw())}e.exports=k;var A=k.prototype;A.makeFramework=function(){if(this.staticPlot){if(!(a||(n=document.createElement("canvas"),a=h({canvas:n,preserveDrawingBuffer:!1,premultipliedAlpha:!0,antialias:!0}))))throw new Error("Error creating static canvas/context for image server");this.canvas=n,this.gl=a}else{var t=this.container.querySelector(".gl-canvas-focus"),e=h({canvas:t,preserveDrawingBuffer:!0,premultipliedAlpha:!0});if(!e)return d(this),void(this.stopped=!0);this.canvas=t,this.gl=e}var r=this.canvas;r.style.width="100%",r.style.height="100%",r.style.position="absolute",r.style.top="0px",r.style.left="0px",r.style["pointer-events"]="none",this.updateSize(r),r.className+=" user-select-none";var i=this.svgContainer=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";var o=this.mouseContainer=document.createElement("div");o.style.position="absolute",o.style["pointer-events"]="auto",this.pickCanvas=this.container.querySelector(".gl-canvas-pick");var s=this.container;s.appendChild(i),s.appendChild(o);var l=this;o.addEventListener("mouseout",(function(){l.isMouseOver=!1,l.unhover()})),o.addEventListener("mouseover",(function(){l.isMouseOver=!0}))},A.toImage=function(t){t||(t="png"),this.stopped=!0,this.staticPlot&&this.container.appendChild(n),this.updateSize(this.canvas);var e=this.glplot.gl,r=e.drawingBufferWidth,a=e.drawingBufferHeight;e.clearColor(1,1,1,0),e.clear(e.COLOR_BUFFER_BIT|e.DEPTH_BUFFER_BIT),this.glplot.setDirty(),this.glplot.draw(),e.bindFramebuffer(e.FRAMEBUFFER,null);var i=new Uint8Array(r*a*4);e.readPixels(0,0,r,a,e.RGBA,e.UNSIGNED_BYTE,i);for(var o=0,s=a-1;o<s;++o,--s)for(var l=0;l<r;++l)for(var c=0;c<4;++c){var u=i[4*(r*o+l)+c];i[4*(r*o+l)+c]=i[4*(r*s+l)+c],i[4*(r*s+l)+c]=u}var h=document.createElement("canvas");h.width=r,h.height=a;var f,p=h.getContext("2d"),d=p.createImageData(r,a);switch(d.data.set(i),p.putImageData(d,0,0),t){case"jpeg":f=h.toDataURL("image/jpeg");break;case"webp":f=h.toDataURL("image/webp");break;default:f=h.toDataURL("image/png")}return this.staticPlot&&this.container.removeChild(n),f},A.updateSize=function(t){t||(t=this.canvas);var e=this.pixelRatio,r=this.fullLayout,n=r.width,a=r.height,i=0|Math.ceil(e*n),o=0|Math.ceil(e*a);return t.width===i&&t.height===o||(t.width=i,t.height=o),t},A.computeTickMarks=function(){this.xaxis.setScale(),this.yaxis.setScale();for(var t=[o.calcTicks(this.xaxis),o.calcTicks(this.yaxis)],e=0;e<2;++e)for(var r=0;r<t[e].length;++r)t[e][r].text=t[e][r].text+"";return t},A.updateRefs=function(t){this.fullLayout=t;var e=this.id.match(T),r="xaxis"+e[1],n="yaxis"+e[2];this.xaxis=this.fullLayout[r],this.yaxis=this.fullLayout[n]},A.relayoutCallback=function(){var t=this.graphDiv,e=this.xaxis,r=this.yaxis,n=t.layout,a={},o=a[e._name+".range"]=e.range.slice(),s=a[r._name+".range"]=r.range.slice();a[e._name+".autorange"]=e.autorange,a[r._name+".autorange"]=r.autorange,i.call("_storeDirectGUIEdit",t.layout,t._fullLayout._preGUI,a);var l=n[e._name];l.range=o,l.autorange=e.autorange;var c=n[r._name];c.range=s,c.autorange=r.autorange,a.lastInputTime=this.camera.lastInputTime,t.emit("plotly_relayout",a)},A.cameraChanged=function(){var t=this.camera;this.glplot.setDataBox(this.calcDataBox());var e=this.computeTickMarks();(function(t,e){for(var r=0;r<2;++r){var n=t[r],a=e[r];if(n.length!==a.length)return!0;for(var i=0;i<n.length;++i)if(n[i].x!==a[i].x)return!0}return!1})(e,this.glplotOptions.ticks)&&(this.glplotOptions.ticks=e,this.glplotOptions.dataBox=t.dataBox,this.glplot.update(this.glplotOptions),this.handleAnnotations())},A.handleAnnotations=function(){for(var t=this.graphDiv,e=this.fullLayout.annotations,r=0;r<e.length;r++){var n=e[r];n.xref===this.xaxis._id&&n.yref===this.yaxis._id&&i.getComponentMethod("annotations","drawOne")(t,r)}},A.destroy=function(){if(this.glplot){var t=this.traces;t&&Object.keys(t).map((function(e){t[e].dispose(),delete t[e]})),this.glplot.dispose(),this.container.removeChild(this.svgContainer),this.container.removeChild(this.mouseContainer),this.fullData=null,this.glplot=null,this.stopped=!0,this.camera.mouseListener.enabled=!1,this.mouseContainer.removeEventListener("wheel",this.camera.wheelListener),this.camera=null}},A.plot=function(t,e,r){var n=this.glplot;this.updateRefs(r),this.xaxis.clearCalc(),this.yaxis.clearCalc(),this.updateTraces(t,e),this.updateFx(r.dragmode);var a=r.width,i=r.height;this.updateSize(this.canvas);var o=this.glplotOptions;o.merge(r),o.screenBox=[0,0,a,i];var s={_fullLayout:{_axisConstraintGroups:this.graphDiv._fullLayout._axisConstraintGroups,xaxis:this.xaxis,yaxis:this.yaxis}};v(s,this.xaxis),v(s,this.yaxis);var l,c,u=r._size,h=this.xaxis.domain,f=this.yaxis.domain;for(o.viewBox=[u.l+h[0]*u.w,u.b+f[0]*u.h,a-u.r-(1-h[1])*u.w,i-u.t-(1-f[1])*u.h],this.mouseContainer.style.width=u.w*(h[1]-h[0])+"px",this.mouseContainer.style.height=u.h*(f[1]-f[0])+"px",this.mouseContainer.height=u.h*(f[1]-f[0]),this.mouseContainer.style.left=u.l+h[0]*u.w+"px",this.mouseContainer.style.top=u.t+(1-f[1])*u.h+"px",c=0;c<2;++c)(l=this[w[c]])._length=o.viewBox[c+2]-o.viewBox[c],y(this.graphDiv,l),l.setScale();m(s),o.ticks=this.computeTickMarks(),o.dataBox=this.calcDataBox(),o.merge(r),n.update(o),this.glplot.draw()},A.calcDataBox=function(){var t=this.xaxis,e=this.yaxis,r=t.range,n=e.range,a=t.r2l,i=e.r2l;return[a(r[0]),i(n[0]),a(r[1]),i(n[1])]},A.setRanges=function(t){var e=this.xaxis,r=this.yaxis,n=e.l2r,a=r.l2r;e.range=[n(t[0]),n(t[2])],r.range=[a(t[1]),a(t[3])]},A.updateTraces=function(t,e){var r,n,a,i=Object.keys(this.traces);this.fullData=t;t:for(r=0;r<i.length;r++){var o=i[r],s=this.traces[o];for(n=0;n<t.length;n++)if((a=t[n]).uid===o&&a.type===s.type)continue t;s.dispose(),delete this.traces[o]}for(r=0;r<t.length;r++){a=t[r];var l=e[r],c=this.traces[a.uid];c?c.update(a,l):(c=a._module.plot(this,a,l),this.traces[a.uid]=c)}this.glplot.objects.sort((function(t,e){return t._trace.index-e._trace.index}))},A.updateFx=function(t){_(t)||b(t)?(this.pickCanvas.style["pointer-events"]="none",this.mouseContainer.style["pointer-events"]="none"):(this.pickCanvas.style["pointer-events"]="auto",this.mouseContainer.style["pointer-events"]="auto"),this.mouseContainer.style.cursor="pan"===t?"move":"zoom"===t?"crosshair":null},A.emitPointAction=function(t,e){for(var r,n=t.trace.uid,a=t.pointIndex,i=0;i<this.fullData.length;i++)this.fullData[i].uid===n&&(r=this.fullData[i]);var o={x:t.traceCoord[0],y:t.traceCoord[1],curveNumber:r.index,pointNumber:a,data:r._input,fullData:this.fullData,xaxis:this.xaxis,yaxis:this.yaxis};s.appendArrayPointValue(o,r,a),this.graphDiv.emit(e,{points:[o]})},A.draw=function(){if(!this.stopped){requestAnimationFrame(this.redraw);var t=this.glplot,e=this.camera,r=e.mouseListener,n=1===this.lastButtonState&&0===r.buttons,a=this.fullLayout;this.lastButtonState=r.buttons,this.cameraChanged();var i,o=r.x*t.pixelRatio,l=this.canvas.height-t.pixelRatio*r.y;if(e.boxEnabled&&"zoom"===a.dragmode){this.selectBox.enabled=!0;for(var c=this.selectBox.selectBox=[Math.min(e.boxStart[0],e.boxEnd[0]),Math.min(e.boxStart[1],e.boxEnd[1]),Math.max(e.boxStart[0],e.boxEnd[0]),Math.max(e.boxStart[1],e.boxEnd[1])],u=0;u<2;u++)e.boxStart[u]===e.boxEnd[u]&&(c[u]=t.dataBox[u],c[u+2]=t.dataBox[u+2]);t.setDirty()}else if(!e.panning&&this.isMouseOver){this.selectBox.enabled=!1;var h=a._size,f=this.xaxis.domain,p=this.yaxis.domain,d=(i=t.pick(o/t.pixelRatio+h.l+f[0]*h.w,l/t.pixelRatio-(h.t+(1-p[1])*h.h)))&&i.object._trace.handlePick(i);if(d&&n&&this.emitPointAction(d,"plotly_click"),i&&"skip"!==i.object._trace.hoverinfo&&a.hovermode&&d&&(!this.lastPickResult||this.lastPickResult.traceUid!==d.trace.uid||this.lastPickResult.dataCoord[0]!==d.dataCoord[0]||this.lastPickResult.dataCoord[1]!==d.dataCoord[1])){var g=d;this.lastPickResult={traceUid:d.trace?d.trace.uid:null,dataCoord:d.dataCoord.slice()},this.spikes.update({center:i.dataCoord}),g.screenCoord=[((t.viewBox[2]-t.viewBox[0])*(i.dataCoord[0]-t.dataBox[0])/(t.dataBox[2]-t.dataBox[0])+t.viewBox[0])/t.pixelRatio,(this.canvas.height-(t.viewBox[3]-t.viewBox[1])*(i.dataCoord[1]-t.dataBox[1])/(t.dataBox[3]-t.dataBox[1])-t.viewBox[1])/t.pixelRatio],this.emitPointAction(d,"plotly_hover");var m=this.fullData[g.trace.index]||{},v=g.pointIndex,y=s.castHoverinfo(m,a,v);if(y&&"all"!==y){var x=y.split("+");-1===x.indexOf("x")&&(g.traceCoord[0]=void 0),-1===x.indexOf("y")&&(g.traceCoord[1]=void 0),-1===x.indexOf("z")&&(g.traceCoord[2]=void 0),-1===x.indexOf("text")&&(g.textLabel=void 0),-1===x.indexOf("name")&&(g.name=void 0)}s.loneHover({x:g.screenCoord[0],y:g.screenCoord[1],xLabel:this.hoverFormatter("xaxis",g.traceCoord[0]),yLabel:this.hoverFormatter("yaxis",g.traceCoord[1]),zLabel:g.traceCoord[2],text:g.textLabel,name:g.name,color:s.castHoverOption(m,v,"bgcolor")||g.color,borderColor:s.castHoverOption(m,v,"bordercolor"),fontFamily:s.castHoverOption(m,v,"font.family"),fontSize:s.castHoverOption(m,v,"font.size"),fontColor:s.castHoverOption(m,v,"font.color"),nameLength:s.castHoverOption(m,v,"namelength"),textAlign:s.castHoverOption(m,v,"align")},{container:this.svgContainer,gd:this.graphDiv})}}i||this.unhover(),t.draw()}},A.unhover=function(){this.lastPickResult&&(this.spikes.update({}),this.lastPickResult=null,this.graphDiv.emit("plotly_unhover"),s.loneUnhover(this.svgContainer))},A.hoverFormatter=function(t,e){if(void 0!==e){var r=this[t];return o.tickText(r,r.c2l(e),"hover").text}}},{"../../components/dragelement/helpers":613,"../../components/fx":635,"../../lib/show_no_webgl_msg":749,"../../plots/cartesian/axes":776,"../../registry":859,"../cartesian/autorange":775,"../cartesian/constants":782,"../cartesian/constraints":783,"./camera":814,"./convert":815,"gl-plot2d":293,"gl-select-box":305,"gl-spikes2d":314,"webgl-context":558}],818:[function(t,e,r){"use strict";var n=t("../../plot_api/edit_types").overrideAll,a=t("../../components/fx/layout_attributes"),i=t("./scene"),o=t("../get_data").getSubplotData,s=t("../../lib"),l=t("../../constants/xmlns_namespaces");r.name="gl3d",r.attr="scene",r.idRoot="scene",r.idRegex=r.attrRegex=s.counterRegex("scene"),r.attributes=t("./layout/attributes"),r.layoutAttributes=t("./layout/layout_attributes"),r.baseLayoutAttrOverrides=n({hoverlabel:a.hoverlabel},"plot","nested"),r.supplyLayoutDefaults=t("./layout/defaults"),r.plot=function(t){for(var e=t._fullLayout,r=t._fullData,n=e._subplots.gl3d,a=0;a<n.length;a++){var s=n[a],l=o(r,"gl3d",s),c=e[s],u=c.camera,h=c._scene;h||(h=new i({id:s,graphDiv:t,container:t.querySelector(".gl-container"),staticPlot:t._context.staticPlot,plotGlPixelRatio:t._context.plotGlPixelRatio,camera:u},e),c._scene=h),h.viewInitial||(h.viewInitial={up:{x:u.up.x,y:u.up.y,z:u.up.z},eye:{x:u.eye.x,y:u.eye.y,z:u.eye.z},center:{x:u.center.x,y:u.center.y,z:u.center.z}}),h.plot(l,e,t.layout)}},r.clean=function(t,e,r,n){for(var a=n._subplots.gl3d||[],i=0;i<a.length;i++){var o=a[i];!e[o]&&n[o]._scene&&(n[o]._scene.destroy(),n._infolayer&&n._infolayer.selectAll(".annotation-"+o).remove())}},r.toSVG=function(t){for(var e=t._fullLayout,r=e._subplots.gl3d,n=e._size,a=0;a<r.length;a++){var i=e[r[a]],o=i.domain,s=i._scene,c=s.toImage("png");e._glimages.append("svg:image").attr({xmlns:l.svg,"xlink:href":c,x:n.l+n.w*o.x[0],y:n.t+n.h*(1-o.y[1]),width:n.w*(o.x[1]-o.x[0]),height:n.h*(o.y[1]-o.y[0]),preserveAspectRatio:"none"}),s.destroy()}},r.cleanId=function(t){if(t.match(/^scene[0-9]*$/)){var e=t.substr(5);return"1"===e&&(e=""),"scene"+e}},r.updateFx=function(t){for(var e=t._fullLayout,r=e._subplots.gl3d,n=0;n<r.length;n++){e[r[n]]._scene.updateFx(e.dragmode,e.hovermode)}}},{"../../components/fx/layout_attributes":636,"../../constants/xmlns_namespaces":705,"../../lib":728,"../../plot_api/edit_types":759,"../get_data":813,"./layout/attributes":819,"./layout/defaults":823,"./layout/layout_attributes":824,"./scene":828}],819:[function(t,e,r){"use strict";e.exports={scene:{valType:"subplotid",dflt:"scene",editType:"calc+clearAxisTypes"}}},{}],820:[function(t,e,r){"use strict";var n=t("../../../components/color"),a=t("../../cartesian/layout_attributes"),i=t("../../../lib/extend").extendFlat,o=t("../../../plot_api/edit_types").overrideAll;e.exports=o({visible:a.visible,showspikes:{valType:"boolean",dflt:!0},spikesides:{valType:"boolean",dflt:!0},spikethickness:{valType:"number",min:0,dflt:2},spikecolor:{valType:"color",dflt:n.defaultLine},showbackground:{valType:"boolean",dflt:!1},backgroundcolor:{valType:"color",dflt:"rgba(204, 204, 204, 0.5)"},showaxeslabels:{valType:"boolean",dflt:!0},color:a.color,categoryorder:a.categoryorder,categoryarray:a.categoryarray,title:{text:a.title.text,font:a.title.font},type:i({},a.type,{values:["-","linear","log","date","category"]}),autorange:a.autorange,rangemode:a.rangemode,range:i({},a.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],anim:!1}),tickmode:a.tickmode,nticks:a.nticks,tick0:a.tick0,dtick:a.dtick,tickvals:a.tickvals,ticktext:a.ticktext,ticks:a.ticks,mirror:a.mirror,ticklen:a.ticklen,tickwidth:a.tickwidth,tickcolor:a.tickcolor,showticklabels:a.showticklabels,tickfont:a.tickfont,tickangle:a.tickangle,tickprefix:a.tickprefix,showtickprefix:a.showtickprefix,ticksuffix:a.ticksuffix,showticksuffix:a.showticksuffix,showexponent:a.showexponent,exponentformat:a.exponentformat,separatethousands:a.separatethousands,tickformat:a.tickformat,tickformatstops:a.tickformatstops,hoverformat:a.hoverformat,showline:a.showline,linecolor:a.linecolor,linewidth:a.linewidth,showgrid:a.showgrid,gridcolor:i({},a.gridcolor,{dflt:"rgb(204, 204, 204)"}),gridwidth:a.gridwidth,zeroline:a.zeroline,zerolinecolor:a.zerolinecolor,zerolinewidth:a.zerolinewidth,_deprecated:{title:a._deprecated.title,titlefont:a._deprecated.titlefont}},"plot","from-root")},{"../../../components/color":595,"../../../lib/extend":719,"../../../plot_api/edit_types":759,"../../cartesian/layout_attributes":790}],821:[function(t,e,r){"use strict";var n=t("tinycolor2").mix,a=t("../../../lib"),i=t("../../../plot_api/plot_template"),o=t("./axis_attributes"),s=t("../../cartesian/type_defaults"),l=t("../../cartesian/axis_defaults"),c=["xaxis","yaxis","zaxis"];e.exports=function(t,e,r){var u,h;function f(t,e){return a.coerce(u,h,o,t,e)}for(var p=0;p<c.length;p++){var d=c[p];u=t[d]||{},(h=i.newContainer(e,d))._id=d[0]+r.scene,h._name=d,s(u,h,f,r),l(u,h,f,{font:r.font,letter:d[0],data:r.data,showGrid:!0,noTickson:!0,bgColor:r.bgColor,calendar:r.calendar},r.fullLayout),f("gridcolor",n(h.color,r.bgColor,13600/187).toRgbString()),f("title.text",d[0]),h.setScale=a.noop,f("showspikes")&&(f("spikesides"),f("spikethickness"),f("spikecolor",h.color)),f("showaxeslabels"),f("showbackground")&&f("backgroundcolor")}}},{"../../../lib":728,"../../../plot_api/plot_template":766,"../../cartesian/axis_defaults":778,"../../cartesian/type_defaults":801,"./axis_attributes":820,tinycolor2:528}],822:[function(t,e,r){"use strict";var n=t("../../../lib/str2rgbarray"),a=t("../../../lib"),i=["xaxis","yaxis","zaxis"];function o(){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.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.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()}o.prototype.merge=function(t,e){for(var r=0;r<3;++r){var o=e[i[r]];o.visible?(this.labels[r]=t._meta?a.templateString(o.title.text,t._meta):o.title.text,"font"in o.title&&(o.title.font.color&&(this.labelColor[r]=n(o.title.font.color)),o.title.font.family&&(this.labelFont[r]=o.title.font.family),o.title.font.size&&(this.labelSize[r]=o.title.font.size)),"showline"in o&&(this.lineEnable[r]=o.showline),"linecolor"in o&&(this.lineColor[r]=n(o.linecolor)),"linewidth"in o&&(this.lineWidth[r]=o.linewidth),"showgrid"in o&&(this.gridEnable[r]=o.showgrid),"gridcolor"in o&&(this.gridColor[r]=n(o.gridcolor)),"gridwidth"in o&&(this.gridWidth[r]=o.gridwidth),"log"===o.type?this.zeroEnable[r]=!1:"zeroline"in o&&(this.zeroEnable[r]=o.zeroline),"zerolinecolor"in o&&(this.zeroLineColor[r]=n(o.zerolinecolor)),"zerolinewidth"in o&&(this.zeroLineWidth[r]=o.zerolinewidth),"ticks"in o&&o.ticks?this.lineTickEnable[r]=!0:this.lineTickEnable[r]=!1,"ticklen"in o&&(this.lineTickLength[r]=this._defaultLineTickLength[r]=o.ticklen),"tickcolor"in o&&(this.lineTickColor[r]=n(o.tickcolor)),"tickwidth"in o&&(this.lineTickWidth[r]=o.tickwidth),"tickangle"in o&&(this.tickAngle[r]="auto"===o.tickangle?-3600:Math.PI*-o.tickangle/180),"showticklabels"in o&&(this.tickEnable[r]=o.showticklabels),"tickfont"in o&&(o.tickfont.color&&(this.tickColor[r]=n(o.tickfont.color)),o.tickfont.family&&(this.tickFont[r]=o.tickfont.family),o.tickfont.size&&(this.tickSize[r]=o.tickfont.size)),"mirror"in o?-1!==["ticks","all","allticks"].indexOf(o.mirror)?(this.lineTickMirror[r]=!0,this.lineMirror[r]=!0):!0===o.mirror?(this.lineTickMirror[r]=!1,this.lineMirror[r]=!0):(this.lineTickMirror[r]=!1,this.lineMirror[r]=!1):this.lineMirror[r]=!1,"showbackground"in o&&!1!==o.showbackground?(this.backgroundEnable[r]=!0,this.backgroundColor[r]=n(o.backgroundcolor)):this.backgroundEnable[r]=!1):(this.tickEnable[r]=!1,this.labelEnable[r]=!1,this.lineEnable[r]=!1,this.lineTickEnable[r]=!1,this.gridEnable[r]=!1,this.zeroEnable[r]=!1,this.backgroundEnable[r]=!1)}},e.exports=function(t,e){var r=new o;return r.merge(t,e),r}},{"../../../lib":728,"../../../lib/str2rgbarray":751}],823:[function(t,e,r){"use strict";var n=t("../../../lib"),a=t("../../../components/color"),i=t("../../../registry"),o=t("../../subplot_defaults"),s=t("./axis_defaults"),l=t("./layout_attributes"),c=t("../../get_data").getSubplotData;function u(t,e,r,n){for(var o=r("bgcolor"),l=a.combine(o,n.paper_bgcolor),u=["up","center","eye"],h=0;h<u.length;h++)r("camera."+u[h]+".x"),r("camera."+u[h]+".y"),r("camera."+u[h]+".z");r("camera.projection.type");var f=!!r("aspectratio.x")&&!!r("aspectratio.y")&&!!r("aspectratio.z"),p=r("aspectmode",f?"manual":"auto");f||(t.aspectratio=e.aspectratio={x:1,y:1,z:1},"manual"===p&&(e.aspectmode="auto"),t.aspectmode=e.aspectmode);var d=c(n.fullData,"gl3d",n.id);s(t,e,{font:n.font,scene:n.id,data:d,bgColor:l,calendar:n.calendar,fullLayout:n.fullLayout}),i.getComponentMethod("annotations3d","handleDefaults")(t,e,n);var g=n.getDfltFromLayout("dragmode");if(!1!==g&&!g)if(g="orbit",t.camera&&t.camera.up){var m=t.camera.up.x,v=t.camera.up.y,y=t.camera.up.z;0!==y&&(m&&v&&y?y/Math.sqrt(m*m+v*v+y*y)>.999&&(g="turntable"):g="turntable")}else g="turntable";r("dragmode",g),r("hovermode",n.getDfltFromLayout("hovermode"))}e.exports=function(t,e,r){var a=e._basePlotModules.length>1;o(t,e,r,{type:"gl3d",attributes:l,handleDefaults:u,fullLayout:e,font:e.font,fullData:r,getDfltFromLayout:function(e){if(!a)return n.validate(t[e],l[e])?t[e]:void 0},paper_bgcolor:e.paper_bgcolor,calendar:e.calendar})}},{"../../../components/color":595,"../../../lib":728,"../../../registry":859,"../../get_data":813,"../../subplot_defaults":853,"./axis_defaults":821,"./layout_attributes":824}],824:[function(t,e,r){"use strict";var n=t("./axis_attributes"),a=t("../../domain").attributes,i=t("../../../lib/extend").extendFlat,o=t("../../../lib").counterRegex;function s(t,e,r){return{x:{valType:"number",dflt:t,editType:"camera"},y:{valType:"number",dflt:e,editType:"camera"},z:{valType:"number",dflt:r,editType:"camera"},editType:"camera"}}e.exports={_arrayAttrRegexps:[o("scene",".annotations",!0)],bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"plot"},camera:{up:i(s(0,0,1),{}),center:i(s(0,0,0),{}),eye:i(s(1.25,1.25,1.25),{}),projection:{type:{valType:"enumerated",values:["perspective","orthographic"],dflt:"perspective",editType:"calc"},editType:"calc"},editType:"camera"},domain:a({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:n,yaxis:n,zaxis:n,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",_deprecated:{cameraposition:{valType:"info_array",editType:"camera"}}}},{"../../../lib":728,"../../../lib/extend":719,"../../domain":803,"./axis_attributes":820}],825:[function(t,e,r){"use strict";var n=t("../../../lib/str2rgbarray"),a=["xaxis","yaxis","zaxis"];function i(){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]}i.prototype.merge=function(t){for(var e=0;e<3;++e){var r=t[a[e]];r.visible?(this.enabled[e]=r.showspikes,this.colors[e]=n(r.spikecolor),this.drawSides[e]=r.spikesides,this.lineWidth[e]=r.spikethickness):(this.enabled[e]=!1,this.drawSides[e]=!1)}},e.exports=function(t){var e=new i;return e.merge(t),e}},{"../../../lib/str2rgbarray":751}],826:[function(t,e,r){"use strict";e.exports=function(t){for(var e=t.axesOptions,r=t.glplot.axesPixels,s=t.fullSceneLayout,l=[[],[],[]],c=0;c<3;++c){var u=s[i[c]];if(u._length=(r[c].hi-r[c].lo)*r[c].pixelsPerDataUnit/t.dataScale[c],Math.abs(u._length)===1/0||isNaN(u._length))l[c]=[];else{u._input_range=u.range.slice(),u.range[0]=r[c].lo/t.dataScale[c],u.range[1]=r[c].hi/t.dataScale[c],u._m=1/(t.dataScale[c]*r[c].pixelsPerDataUnit),u.range[0]===u.range[1]&&(u.range[0]-=1,u.range[1]+=1);var h=u.tickmode;if("auto"===u.tickmode){u.tickmode="linear";var f=u.nticks||a.constrain(u._length/40,4,9);n.autoTicks(u,Math.abs(u.range[1]-u.range[0])/f)}for(var p=n.calcTicks(u,{msUTC:!0}),d=0;d<p.length;++d)p[d].x=p[d].x*t.dataScale[c],"date"===u.type&&(p[d].text=p[d].text.replace(/\<br\>/g," "));l[c]=p,u.tickmode=h}}e.ticks=l;for(c=0;c<3;++c){o[c]=.5*(t.glplot.bounds[0][c]+t.glplot.bounds[1][c]);for(d=0;d<2;++d)e.bounds[d][c]=t.glplot.bounds[d][c]}t.contourLevels=function(t){for(var e=new Array(3),r=0;r<3;++r){for(var n=t[r],a=new Array(n.length),i=0;i<n.length;++i)a[i]=n[i].x;e[r]=a}return e}(l)};var n=t("../../cartesian/axes"),a=t("../../../lib"),i=["xaxis","yaxis","zaxis"],o=[0,0,0]},{"../../../lib":728,"../../cartesian/axes":776}],827:[function(t,e,r){"use strict";function n(t,e){var r,n,a=[0,0,0,0];for(r=0;r<4;++r)for(n=0;n<4;++n)a[n]+=t[4*r+n]*e[r];return a}e.exports=function(t,e){return n(t.projection,n(t.view,n(t.model,[e[0],e[1],e[2],1])))}},{}],828:[function(t,e,r){"use strict";var n,a,i=t("gl-plot3d"),o=i.createCamera,s=i.createScene,l=t("webgl-context"),c=t("has-passive-events"),u=t("../../registry"),h=t("../../lib"),f=t("../../plots/cartesian/axes"),p=t("../../components/fx"),d=t("../../lib/str2rgbarray"),g=t("../../lib/show_no_webgl_msg"),m=t("./project"),v=t("./layout/convert"),y=t("./layout/spikes"),x=t("./layout/tick_marks"),b=t("is-mobile")({tablet:!0,featureDetect:!0});function _(t,e){var r=document.createElement("div"),n=t.container;this.graphDiv=t.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",r.appendChild(a),this.svgContainer=a,r.id=t.id,r.style.position="absolute",r.style.top=r.style.left="0px",r.style.width=r.style.height="100%",n.appendChild(r),this.fullLayout=e,this.id=t.id||"scene",this.fullSceneLayout=e[this.id],this.plotArgs=[[],{},{}],this.axesOptions=v(e,e[this.id]),this.spikeOptions=y(e[this.id]),this.container=r,this.staticMode=!!t.staticPlot,this.pixelRatio=this.pixelRatio||t.plotGlPixelRatio||2,this.dataScale=[1,1,1],this.contourLevels=[[],[],[]],this.convertAnnotations=u.getComponentMethod("annotations3d","convert"),this.drawAnnotations=u.getComponentMethod("annotations3d","draw"),this.initializeGLPlot()}var w=_.prototype;w.prepareOptions=function(){var t={canvas:this.canvas,gl:this.gl,glOptions:{preserveDrawingBuffer:b,premultipliedAlpha:!0,antialias:!0},container:this.container,axes:this.axesOptions,spikes:this.spikeOptions,pickRadius:10,snapToData:!0,autoScale:!0,autoBounds:!1,cameraObject:this.camera,pixelRatio:this.pixelRatio};if(this.staticMode){if(!(a||(n=document.createElement("canvas"),a=l({canvas:n,preserveDrawingBuffer:!0,premultipliedAlpha:!0,antialias:!0}))))throw new Error("error creating static canvas/context for image server");t.gl=a,t.canvas=n}return t},w.tryCreatePlot=function(){var t=this.prepareOptions(),e=!0;try{this.glplot=s(t)}catch(r){if(this.staticMode)e=!1;else try{h.warn(["webgl setup failed possibly due to",b?"disabling":"enabling","preserveDrawingBuffer config.","The device may not be supported by is-mobile module!","Inverting preserveDrawingBuffer option in second attempt to create webgl scene."].join(" ")),b=t.glOptions.preserveDrawingBuffer=!t.glOptions.preserveDrawingBuffer,this.glplot=s(t)}catch(t){e=!1}}return e},w.initializeGLCamera=function(){var t=this.fullSceneLayout.camera,e="orthographic"===t.projection.type;this.camera=o(this.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:e,zoomMin:.01,zoomMax:100,mode:"orbit"})},w.initializeGLPlot=function(){var t=this;if(t.initializeGLCamera(),!t.tryCreatePlot())return g(t);t.traces={},t.make4thDimension();var e=t.graphDiv,r=e.layout,n=function(){var e={};return t.isCameraChanged(r)&&(e[t.id+".camera"]=t.getCamera()),t.isAspectChanged(r)&&(e[t.id+".aspectratio"]=t.glplot.getAspectratio(),"manual"!==r[t.id].aspectmode&&(t.fullSceneLayout.aspectmode=r[t.id].aspectmode=e[t.id+".aspectmode"]="manual")),e},a=function(t){if(!1!==t.fullSceneLayout.dragmode){var e=n();t.saveLayout(r),t.graphDiv.emit("plotly_relayout",e)}};return t.glplot.canvas.addEventListener("mouseup",(function(){a(t)})),t.glplot.canvas.addEventListener("wheel",(function(r){if(e._context._scrollZoom.gl3d){if(t.camera._ortho){var n=r.deltaX>r.deltaY?1.1:1/1.1,i=t.glplot.getAspectratio();t.glplot.setAspectratio({x:n*i.x,y:n*i.y,z:n*i.z})}a(t)}}),!!c&&{passive:!1}),t.glplot.canvas.addEventListener("mousemove",(function(){if(!1!==t.fullSceneLayout.dragmode&&0!==t.camera.mouseListener.buttons){var e=n();t.graphDiv.emit("plotly_relayouting",e)}})),t.staticMode||t.glplot.canvas.addEventListener("webglcontextlost",(function(r){e&&e.emit&&e.emit("plotly_webglcontextlost",{event:r,layer:t.id})}),!1),t.glplot.oncontextloss=function(){t.recoverContext()},t.glplot.onrender=function(){t.render()},!0},w.render=function(){var t,e=this,r=e.graphDiv,n=e.svgContainer,a=e.container.getBoundingClientRect(),i=a.width,o=a.height;n.setAttributeNS(null,"viewBox","0 0 "+i+" "+o),n.setAttributeNS(null,"width",i),n.setAttributeNS(null,"height",o),x(e),e.glplot.axes.update(e.axesOptions);for(var s,l=Object.keys(e.traces),c=null,u=e.glplot.selection,d=0;d<l.length;++d)"skip"!==(t=e.traces[l[d]]).data.hoverinfo&&t.handlePick(u)&&(c=t),t.setContourLevels&&t.setContourLevels();function g(t,r){var n=e.fullSceneLayout[t];return f.tickText(n,n.d2l(r),"hover").text}if(null!==c){var v=m(e.glplot.cameraParams,u.dataCoordinate);t=c.data;var y,b=r._fullData[t.index],_=u.index,w={xLabel:g("xaxis",u.traceCoordinate[0]),yLabel:g("yaxis",u.traceCoordinate[1]),zLabel:g("zaxis",u.traceCoordinate[2])},T=p.castHoverinfo(b,e.fullLayout,_),k=(T||"").split("+"),A=T&&"all"===T;b.hovertemplate||A||(-1===k.indexOf("x")&&(w.xLabel=void 0),-1===k.indexOf("y")&&(w.yLabel=void 0),-1===k.indexOf("z")&&(w.zLabel=void 0),-1===k.indexOf("text")&&(u.textLabel=void 0),-1===k.indexOf("name")&&(c.name=void 0));var M=[];"cone"===t.type||"streamtube"===t.type?(w.uLabel=g("xaxis",u.traceCoordinate[3]),(A||-1!==k.indexOf("u"))&&M.push("u: "+w.uLabel),w.vLabel=g("yaxis",u.traceCoordinate[4]),(A||-1!==k.indexOf("v"))&&M.push("v: "+w.vLabel),w.wLabel=g("zaxis",u.traceCoordinate[5]),(A||-1!==k.indexOf("w"))&&M.push("w: "+w.wLabel),w.normLabel=u.traceCoordinate[6].toPrecision(3),(A||-1!==k.indexOf("norm"))&&M.push("norm: "+w.normLabel),"streamtube"===t.type&&(w.divergenceLabel=u.traceCoordinate[7].toPrecision(3),(A||-1!==k.indexOf("divergence"))&&M.push("divergence: "+w.divergenceLabel)),u.textLabel&&M.push(u.textLabel),y=M.join("<br>")):"isosurface"===t.type||"volume"===t.type?(w.valueLabel=f.tickText(e._mockAxis,e._mockAxis.d2l(u.traceCoordinate[3]),"hover").text,M.push("value: "+w.valueLabel),u.textLabel&&M.push(u.textLabel),y=M.join("<br>")):y=u.textLabel;var S={x:u.traceCoordinate[0],y:u.traceCoordinate[1],z:u.traceCoordinate[2],data:b._input,fullData:b,curveNumber:b.index,pointNumber:_};p.appendArrayPointValue(S,b,_),t._module.eventData&&(S=b._module.eventData(S,u,b,{},_));var E={points:[S]};e.fullSceneLayout.hovermode&&p.loneHover({trace:b,x:(.5+.5*v[0]/v[3])*i,y:(.5-.5*v[1]/v[3])*o,xLabel:w.xLabel,yLabel:w.yLabel,zLabel:w.zLabel,text:y,name:c.name,color:p.castHoverOption(b,_,"bgcolor")||c.color,borderColor:p.castHoverOption(b,_,"bordercolor"),fontFamily:p.castHoverOption(b,_,"font.family"),fontSize:p.castHoverOption(b,_,"font.size"),fontColor:p.castHoverOption(b,_,"font.color"),nameLength:p.castHoverOption(b,_,"namelength"),textAlign:p.castHoverOption(b,_,"align"),hovertemplate:h.castOption(b,_,"hovertemplate"),hovertemplateLabels:h.extendFlat({},S,w),eventData:[S]},{container:n,gd:r}),u.buttons&&u.distance<5?r.emit("plotly_click",E):r.emit("plotly_hover",E),s=E}else p.loneUnhover(n),r.emit("plotly_unhover",s);e.drawAnnotations(e)},w.recoverContext=function(){var t=this;t.glplot.dispose();var e=function(){t.glplot.gl.isContextLost()?requestAnimationFrame(e):t.initializeGLPlot()?t.plot.apply(t,t.plotArgs):h.error("Catastrophic and unrecoverable WebGL error. Context lost.")};requestAnimationFrame(e)};var T=["xaxis","yaxis","zaxis"];function k(t,e,r){for(var n=t.fullSceneLayout,a=0;a<3;a++){var i=T[a],o=i.charAt(0),s=n[i],l=e[o],c=e[o+"calendar"],u=e["_"+o+"length"];if(h.isArrayOrTypedArray(l))for(var f,p=0;p<(u||l.length);p++)if(h.isArrayOrTypedArray(l[p]))for(var d=0;d<l[p].length;++d)f=s.d2l(l[p][d],0,c),!isNaN(f)&&isFinite(f)&&(r[0][a]=Math.min(r[0][a],f),r[1][a]=Math.max(r[1][a],f));else f=s.d2l(l[p],0,c),!isNaN(f)&&isFinite(f)&&(r[0][a]=Math.min(r[0][a],f),r[1][a]=Math.max(r[1][a],f));else r[0][a]=Math.min(r[0][a],0),r[1][a]=Math.max(r[1][a],u-1)}}w.plot=function(t,e,r){if(this.plotArgs=[t,e,r],!this.glplot.contextLost){var n,a,i,o,s,l,c=e[this.id],u=r[this.id];this.fullLayout=e,this.fullSceneLayout=c,this.axesOptions.merge(e,c),this.spikeOptions.merge(c),this.setViewport(c),this.updateFx(c.dragmode,c.hovermode),this.camera.enableWheel=this.graphDiv._context._scrollZoom.gl3d,this.glplot.setClearColor(d(c.bgcolor)),this.setConvert(s),t?Array.isArray(t)||(t=[t]):t=[];var h=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]];for(i=0;i<t.length;++i)!0===(n=t[i]).visible&&0!==n._length&&k(this,n,h);!function(t,e){for(var r=t.fullSceneLayout,n=r.annotations||[],a=0;a<3;a++)for(var i=T[a],o=i.charAt(0),s=r[i],l=0;l<n.length;l++){var c=n[l];if(c.visible){var u=s.r2l(c[o]);!isNaN(u)&&isFinite(u)&&(e[0][a]=Math.min(e[0][a],u),e[1][a]=Math.max(e[1][a],u))}}}(this,h);var f=[1,1,1];for(o=0;o<3;++o)h[1][o]===h[0][o]?f[o]=1:f[o]=1/(h[1][o]-h[0][o]);for(this.dataScale=f,this.convertAnnotations(this),i=0;i<t.length;++i)!0===(n=t[i]).visible&&0!==n._length&&((a=this.traces[n.uid])?a.data.type===n.type?a.update(n):(a.dispose(),a=n._module.plot(this,n),this.traces[n.uid]=a):(a=n._module.plot(this,n),this.traces[n.uid]=a),a.name=n.name);var p=Object.keys(this.traces);t:for(i=0;i<p.length;++i){for(o=0;o<t.length;++o)if(t[o].uid===p[i]&&!0===t[o].visible&&0!==t[o]._length)continue t;(a=this.traces[p[i]]).dispose(),delete this.traces[p[i]]}this.glplot.objects.sort((function(t,e){return t._trace.data.index-e._trace.data.index}));var g,m=[[0,0,0],[0,0,0]],v=[],y={};for(i=0;i<3;++i){if((l=(s=c[T[i]]).type)in y?(y[l].acc*=f[i],y[l].count+=1):y[l]={acc:f[i],count:1},s.autorange){m[0][i]=1/0,m[1][i]=-1/0;var x=this.glplot.objects,b=this.fullSceneLayout.annotations||[],_=s._name.charAt(0);for(o=0;o<x.length;o++){var w=x[o],A=w.bounds,M=w._trace.data._pad||0;"ErrorBars"===w.constructor.name&&s._lowerLogErrorBound?m[0][i]=Math.min(m[0][i],s._lowerLogErrorBound):m[0][i]=Math.min(m[0][i],A[0][i]/f[i]-M),m[1][i]=Math.max(m[1][i],A[1][i]/f[i]+M)}for(o=0;o<b.length;o++){var S=b[o];if(S.visible){var E=s.r2l(S[_]);m[0][i]=Math.min(m[0][i],E),m[1][i]=Math.max(m[1][i],E)}}if("rangemode"in s&&"tozero"===s.rangemode&&(m[0][i]=Math.min(m[0][i],0),m[1][i]=Math.max(m[1][i],0)),m[0][i]>m[1][i])m[0][i]=-1,m[1][i]=1;else{var C=m[1][i]-m[0][i];m[0][i]-=C/32,m[1][i]+=C/32}if("reversed"===s.autorange){var L=m[0][i];m[0][i]=m[1][i],m[1][i]=L}}else{var P=s.range;m[0][i]=s.r2l(P[0]),m[1][i]=s.r2l(P[1])}m[0][i]===m[1][i]&&(m[0][i]-=1,m[1][i]+=1),v[i]=m[1][i]-m[0][i],this.glplot.setBounds(i,{min:m[0][i]*f[i],max:m[1][i]*f[i]})}var I=c.aspectmode;if("cube"===I)g=[1,1,1];else if("manual"===I){var z=c.aspectratio;g=[z.x,z.y,z.z]}else{if("auto"!==I&&"data"!==I)throw new Error("scene.js aspectRatio was not one of the enumerated types");var O=[1,1,1];for(i=0;i<3;++i){var D=y[l=(s=c[T[i]]).type];O[i]=Math.pow(D.acc,1/D.count)/f[i]}g="data"===I||Math.max.apply(null,O)/Math.min.apply(null,O)<=4?O:[1,1,1]}c.aspectratio.x=u.aspectratio.x=g[0],c.aspectratio.y=u.aspectratio.y=g[1],c.aspectratio.z=u.aspectratio.z=g[2],this.glplot.setAspectratio(c.aspectratio),this.viewInitial.aspectratio||(this.viewInitial.aspectratio={x:c.aspectratio.x,y:c.aspectratio.y,z:c.aspectratio.z}),this.viewInitial.aspectmode||(this.viewInitial.aspectmode=c.aspectmode);var R=c.domain||null,F=e._size||null;if(R&&F){var B=this.container.style;B.position="absolute",B.left=F.l+R.x[0]*F.w+"px",B.top=F.t+(1-R.y[1])*F.h+"px",B.width=F.w*(R.x[1]-R.x[0])+"px",B.height=F.h*(R.y[1]-R.y[0])+"px"}this.glplot.redraw()}},w.destroy=function(){this.glplot&&(this.camera.mouseListener.enabled=!1,this.container.removeEventListener("wheel",this.camera.wheelListener),this.camera=null,this.glplot.dispose(),this.container.parentNode.removeChild(this.container),this.glplot=null)},w.getCamera=function(){var t;return this.camera.view.recalcMatrix(this.camera.view.lastT()),{up:{x:(t=this.camera).up[0],y:t.up[1],z:t.up[2]},center:{x:t.center[0],y:t.center[1],z:t.center[2]},eye:{x:t.eye[0],y:t.eye[1],z:t.eye[2]},projection:{type:!0===t._ortho?"orthographic":"perspective"}}},w.setViewport=function(t){var e,r=t.camera;this.camera.lookAt.apply(this,[[(e=r).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]]),this.glplot.setAspectratio(t.aspectratio),"orthographic"===r.projection.type!==this.camera._ortho&&(this.glplot.redraw(),this.glplot.clearRGBA(),this.glplot.dispose(),this.initializeGLPlot())},w.isCameraChanged=function(t){var e=this.getCamera(),r=h.nestedProperty(t,this.id+".camera").get();function n(t,e,r,n){var a=["up","center","eye"],i=["x","y","z"];return e[a[r]]&&t[a[r]][i[n]]===e[a[r]][i[n]]}var a=!1;if(void 0===r)a=!0;else{for(var i=0;i<3;i++)for(var o=0;o<3;o++)if(!n(e,r,i,o)){a=!0;break}(!r.projection||e.projection&&e.projection.type!==r.projection.type)&&(a=!0)}return a},w.isAspectChanged=function(t){var e=this.glplot.getAspectratio(),r=h.nestedProperty(t,this.id+".aspectratio").get();return void 0===r||r.x!==e.x||r.y!==e.y||r.z!==e.z},w.saveLayout=function(t){var e,r,n,a,i,o,s=this.fullLayout,l=this.isCameraChanged(t),c=this.isAspectChanged(t),f=l||c;if(f){var p={};if(l&&(e=this.getCamera(),n=(r=h.nestedProperty(t,this.id+".camera")).get(),p[this.id+".camera"]=n),c&&(a=this.glplot.getAspectratio(),o=(i=h.nestedProperty(t,this.id+".aspectratio")).get(),p[this.id+".aspectratio"]=o),u.call("_storeDirectGUIEdit",t,s._preGUI,p),l)r.set(e),h.nestedProperty(s,this.id+".camera").set(e);if(c)i.set(a),h.nestedProperty(s,this.id+".aspectratio").set(a),this.glplot.redraw()}return f},w.updateFx=function(t,e){var r=this.camera;if(r)if("orbit"===t)r.mode="orbit",r.keyBindingMode="rotate";else if("turntable"===t){r.up=[0,0,1],r.mode="turntable",r.keyBindingMode="rotate";var n=this.graphDiv,a=n._fullLayout,i=this.fullSceneLayout.camera,o=i.up.x,s=i.up.y,l=i.up.z;if(l/Math.sqrt(o*o+s*s+l*l)<.999){var c=this.id+".camera.up",f={x:0,y:0,z:1},p={};p[c]=f;var d=n.layout;u.call("_storeDirectGUIEdit",d,a._preGUI,p),i.up=f,h.nestedProperty(d,c).set(f)}}else r.keyBindingMode=t;this.fullSceneLayout.hovermode=e},w.toImage=function(t){t||(t="png"),this.staticMode&&this.container.appendChild(n),this.glplot.redraw();var e=this.glplot.gl,r=e.drawingBufferWidth,a=e.drawingBufferHeight;e.bindFramebuffer(e.FRAMEBUFFER,null);var i=new Uint8Array(r*a*4);e.readPixels(0,0,r,a,e.RGBA,e.UNSIGNED_BYTE,i),function(t,e,r){for(var n=0,a=r-1;n<a;++n,--a)for(var i=0;i<e;++i)for(var o=0;o<4;++o){var s=4*(e*n+i)+o,l=4*(e*a+i)+o,c=t[s];t[s]=t[l],t[l]=c}}(i,r,a),function(t,e,r){for(var n=0;n<r;++n)for(var a=0;a<e;++a){var i=4*(e*n+a),o=t[i+3];if(o>0)for(var s=255/o,l=0;l<3;++l)t[i+l]=Math.min(s*t[i+l],255)}}(i,r,a);var o=document.createElement("canvas");o.width=r,o.height=a;var s,l=o.getContext("2d"),c=l.createImageData(r,a);switch(c.data.set(i),l.putImageData(c,0,0),t){case"jpeg":s=o.toDataURL("image/jpeg");break;case"webp":s=o.toDataURL("image/webp");break;default:s=o.toDataURL("image/png")}return this.staticMode&&this.container.removeChild(n),s},w.setConvert=function(){for(var t=0;t<3;t++){var e=this.fullSceneLayout[T[t]];f.setConvert(e,this.fullLayout),e.setScale=h.noop}},w.make4thDimension=function(){var t=this.graphDiv._fullLayout;this._mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},f.setConvert(this._mockAxis,t)},e.exports=_},{"../../components/fx":635,"../../lib":728,"../../lib/show_no_webgl_msg":749,"../../lib/str2rgbarray":751,"../../plots/cartesian/axes":776,"../../registry":859,"./layout/convert":822,"./layout/spikes":825,"./layout/tick_marks":826,"./project":827,"gl-plot3d":296,"has-passive-events":410,"is-mobile":420,"webgl-context":558}],829:[function(t,e,r){"use strict";e.exports=function(t,e,r,n){n=n||t.length;for(var a=new Array(n),i=0;i<n;i++)a[i]=[t[i],e[i],r[i]];return a}},{}],830:[function(t,e,r){"use strict";var n=t("./font_attributes"),a=t("./animation_attributes"),i=t("../components/color/attributes"),o=t("../components/shapes/draw_newshape/attributes"),s=t("./pad_attributes"),l=t("../lib/extend").extendFlat,c=n({editType:"calc"});c.family.dflt='"Open Sans", verdana, arial, sans-serif',c.size.dflt=12,c.color.dflt=i.defaultLine,e.exports={font:c,title:{text:{valType:"string",editType:"layoutstyle"},font:n({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:l(s({editType:"layoutstyle"}),{}),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"},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"},paper_bgcolor:{valType:"color",dflt:i.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:i.background,editType:"layoutstyle"},separators:{valType:"string",editType:"plot"},hidesources:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:{valType:"boolean",editType:"legend"},colorway:{valType:"colorlist",dflt:i.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"},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"},editType:"modebar"},newshape:o.newshape,activeshape:o.activeshape,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:l({},a.transition,{editType:"none"}),_deprecated:{title:{valType:"string",editType:"layoutstyle"},titlefont:n({editType:"layoutstyle"})}}},{"../components/color/attributes":594,"../components/shapes/draw_newshape/attributes":677,"../lib/extend":719,"./animation_attributes":771,"./font_attributes":804,"./pad_attributes":838}],831:[function(t,e,r){"use strict";var n={"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:'<a href="http://www.openstreetmap.org/about/" target="_blank">\xa9 OpenStreetMap</a>',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}]},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}]},"carto-positron":{id:"carto-positron",version:8,sources:{"plotly-carto-positron":{type:"raster",attribution:'<a href="https://carto.com/" target="_blank">\xa9 CARTO</a>',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}]},"carto-darkmatter":{id:"carto-darkmatter",version:8,sources:{"plotly-carto-darkmatter":{type:"raster",attribution:'<a href="https://carto.com/" target="_blank">\xa9 CARTO</a>',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}]},"stamen-terrain":{id:"stamen-terrain",version:8,sources:{"plotly-stamen-terrain":{type:"raster",attribution:'Map tiles by <a href="http://stamen.com">Stamen Design</a>, under <a href="http://creativecommons.org/licenses/by/3.0">CC BY 3.0</a> | Data by <a href="http://openstreetmap.org">OpenStreetMap</a>, under <a href="http://www.openstreetmap.org/copyright">ODbL</a>.',tiles:["https://stamen-tiles.a.ssl.fastly.net/terrain/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-stamen-terrain",type:"raster",source:"plotly-stamen-terrain",minzoom:0,maxzoom:22}]},"stamen-toner":{id:"stamen-toner",version:8,sources:{"plotly-stamen-toner":{type:"raster",attribution:'Map tiles by <a href="http://stamen.com">Stamen Design</a>, under <a href="http://creativecommons.org/licenses/by/3.0">CC BY 3.0</a> | Data by <a href="http://openstreetmap.org">OpenStreetMap</a>, under <a href="http://www.openstreetmap.org/copyright">ODbL</a>.',tiles:["https://stamen-tiles.a.ssl.fastly.net/toner/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-stamen-toner",type:"raster",source:"plotly-stamen-toner",minzoom:0,maxzoom:22}]},"stamen-watercolor":{id:"stamen-watercolor",version:8,sources:{"plotly-stamen-watercolor":{type:"raster",attribution:'Map tiles by <a href="http://stamen.com">Stamen Design</a>, under <a href="http://creativecommons.org/licenses/by/3.0">CC BY 3.0</a> | Data by <a href="http://openstreetmap.org">OpenStreetMap</a>, under <a href="http://creativecommons.org/licenses/by-sa/3.0">CC BY SA</a>.',tiles:["https://stamen-tiles.a.ssl.fastly.net/watercolor/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-stamen-watercolor",type:"raster",source:"plotly-stamen-watercolor",minzoom:0,maxzoom:22}]}},a=Object.keys(n);e.exports={requiredVersion:"1.10.1",styleUrlPrefix:"mapbox://styles/mapbox/",styleUrlSuffix:"v9",styleValuesMapbox:["basic","streets","outdoors","light","dark","satellite","satellite-streets"],styleValueDflt:"basic",stylesNonMapbox:n,styleValuesNonMapbox:a,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",wrongVersionErrorMsg:["Your custom plotly.js bundle is not using the correct mapbox-gl version","Please install mapbox-gl@1.10.1."].join("\n"),noAccessTokenErrorMsg:["Missing Mapbox access token.","Mapbox trace type require a Mapbox access token to be registered.","For example:"," Plotly.plot(gd, data, layout, { mapboxAccessToken: 'my-access-token' });","More info here: https://www.mapbox.com/help/define-access-token/"].join("\n"),missingStyleErrorMsg:["No valid mapbox style found, please setmapbox.styleto one of:",a.join(", "),"or register a Mapbox access token to use a Mapbox-served style."].join("\n"),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("\n"),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\')'}}},{}],832:[function(t,e,r){"use strict";var n=t("../../lib");e.exports=function(t,e){var r=t.split(" "),a=r[0],i=r[1],o=n.isArrayOrTypedArray(e)?n.mean(e):e,s=.5+o/100,l=1.5+o/100,c=["",""],u=[0,0];switch(a){case"top":c[0]="top",u[1]=-l;break;case"bottom":c[0]="bottom",u[1]=l}switch(i){case"left":c[1]="right",u[0]=-s;break;case"right":c[1]="left",u[0]=s}return{anchor:c[0]&&c[1]?c.join("-"):c[0]?c[0]:c[1]?c[1]:"center",offset:u}}},{"../../lib":728}],833:[function(t,e,r){"use strict";var n=t("mapbox-gl"),a=t("../../lib"),i=t("../../plots/get_data").getSubplotCalcData,o=t("../../constants/xmlns_namespaces"),s=t("d3"),l=t("../../components/drawing"),c=t("../../lib/svg_text_utils"),u=t("./mapbox"),h=r.constants=t("./constants");function f(t){return"string"==typeof t&&(-1!==h.styleValuesMapbox.indexOf(t)||0===t.indexOf("mapbox://"))}r.name="mapbox",r.attr="subplot",r.idRoot="mapbox",r.idRegex=r.attrRegex=a.counterRegex("mapbox"),r.attributes={subplot:{valType:"subplotid",dflt:"mapbox",editType:"calc"}},r.layoutAttributes=t("./layout_attributes"),r.supplyLayoutDefaults=t("./layout_defaults"),r.plot=function(t){var e=t._fullLayout,r=t.calcdata,o=e._subplots.mapbox;if(n.version!==h.requiredVersion)throw new Error(h.wrongVersionErrorMsg);var s=function(t,e){var r=t._fullLayout;if(""===t._context.mapboxAccessToken)return"";for(var n=[],i=[],o=!1,s=!1,l=0;l<e.length;l++){var c=r[e[l]],u=c.accesstoken;f(c.style)&&(u?a.pushUnique(n,u):(f(c._input.style)&&(a.error("Uses Mapbox map style, but did not set an access token."),o=!0),s=!0)),u&&a.pushUnique(i,u)}if(s){var p=o?h.noAccessTokenErrorMsg:h.missingStyleErrorMsg;throw a.error(p),new Error(p)}return n.length?(n.length>1&&a.warn(h.multipleTokensErrorMsg),n[0]):(i.length&&a.log(["Listed mapbox access token(s)",i.join(","),"but did not use a Mapbox map style, ignoring token(s)."].join(" ")),"")}(t,o);n.accessToken=s;for(var l=0;l<o.length;l++){var c=o[l],p=i(r,"mapbox",c),d=e[c],g=d._subplot;g||(g=new u(t,c),e[c]._subplot=g),g.viewInitial||(g.viewInitial={center:a.extendFlat({},d.center),zoom:d.zoom,bearing:d.bearing,pitch:d.pitch}),g.plot(p,e,t._promises)}},r.clean=function(t,e,r,n){for(var a=n._subplots.mapbox||[],i=0;i<a.length;i++){var o=a[i];!e[o]&&n[o]._subplot&&n[o]._subplot.destroy()}},r.toSVG=function(t){for(var e=t._fullLayout,r=e._subplots.mapbox,n=e._size,a=0;a<r.length;a++){var i=e[r[a]],u=i.domain,f=i._subplot.toImage("png");e._glimages.append("svg:image").attr({xmlns:o.svg,"xlink:href":f,x:n.l+n.w*u.x[0],y:n.t+n.h*(1-u.y[1]),width:n.w*(u.x[1]-u.x[0]),height:n.h*(u.y[1]-u.y[0]),preserveAspectRatio:"none"});var p=s.select(i._subplot.div);if(!(null===p.select(".mapboxgl-ctrl-logo").node().offsetParent)){var d=e._glimages.append("g");d.attr("transform","translate("+(n.l+n.w*u.x[0]+10)+", "+(n.t+n.h*(1-u.y[0])-31)+")"),d.append("path").attr("d",h.mapboxLogo.path0).style({opacity:.9,fill:"#ffffff","enable-background":"new"}),d.append("path").attr("d",h.mapboxLogo.path1).style("opacity",.35).style("enable-background","new"),d.append("path").attr("d",h.mapboxLogo.path2).style("opacity",.35).style("enable-background","new"),d.append("polygon").attr("points",h.mapboxLogo.polygon).style({opacity:.9,fill:"#ffffff","enable-background":"new"})}var g=p.select(".mapboxgl-ctrl-attrib").text().replace("Improve this map",""),m=e._glimages.append("g"),v=m.append("text");v.text(g).classed("static-attribution",!0).attr({"font-size":12,"font-family":"Arial",color:"rgba(0, 0, 0, 0.75)","text-anchor":"end","data-unformatted":g});var y=l.bBox(v.node()),x=n.w*(u.x[1]-u.x[0]);if(y.width>x/2){var b=g.split("|").join("<br>");v.text(b).attr("data-unformatted",b).call(c.convertToTspans,t),y=l.bBox(v.node())}v.attr("transform","translate(-3, "+(8-y.height)+")"),m.insert("rect",".static-attribution").attr({x:-y.width-6,y:-y.height-3,width:y.width+6,height:y.height+3,fill:"rgba(255, 255, 255, 0.75)"});var _=1;y.width+6>x&&(_=x/(y.width+6));var w=[n.l+n.w*u.x[1],n.t+n.h*(1-u.y[0])];m.attr("transform","translate("+w[0]+","+w[1]+") scale("+_+")")}},r.updateFx=function(t){for(var e=t._fullLayout,r=e._subplots.mapbox,n=0;n<r.length;n++){e[r[n]]._subplot.updateFx(e)}}},{"../../components/drawing":617,"../../constants/xmlns_namespaces":705,"../../lib":728,"../../lib/svg_text_utils":752,"../../plots/get_data":813,"./constants":831,"./layout_attributes":835,"./layout_defaults":836,"./mapbox":837,d3:164,"mapbox-gl":426}],834:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../lib/svg_text_utils").sanitizeHTML,i=t("./convert_text_opts"),o=t("./constants");function s(t,e){this.subplot=t,this.uid=t.uid+"-"+e,this.index=e,this.idSource="source-"+this.uid,this.idLayer=o.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var l=s.prototype;function c(t){if(!t.visible)return!1;var e=t.source;if(Array.isArray(e)&&e.length>0){for(var r=0;r<e.length;r++)if("string"!=typeof e[r]||0===e[r].length)return!1;return!0}return n.isPlainObject(e)||"string"==typeof e&&e.length>0}function u(t){var e={},r={};switch(t.type){case"circle":n.extendFlat(r,{"circle-radius":t.circle.radius,"circle-color":t.color,"circle-opacity":t.opacity});break;case"line":n.extendFlat(r,{"line-width":t.line.width,"line-color":t.color,"line-opacity":t.opacity,"line-dasharray":t.line.dash});break;case"fill":n.extendFlat(r,{"fill-color":t.color,"fill-outline-color":t.fill.outlinecolor,"fill-opacity":t.opacity});break;case"symbol":var a=t.symbol,o=i(a.textposition,a.iconsize);n.extendFlat(e,{"icon-image":a.icon+"-15","icon-size":a.iconsize/10,"text-field":a.text,"text-size":a.textfont.size,"text-anchor":o.anchor,"text-offset":o.offset,"symbol-placement":a.placement}),n.extendFlat(r,{"icon-color":t.color,"text-color":a.textfont.color,"text-opacity":t.opacity});break;case"raster":n.extendFlat(r,{"raster-fade-duration":0,"raster-opacity":t.opacity})}return{layout:e,paint:r}}l.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=c(t)},l.needsNewImage=function(t){return this.subplot.map.getSource(this.idSource)&&"image"===this.sourceType&&"image"===t.sourcetype&&(this.source!==t.source||JSON.stringify(this.coordinates)!==JSON.stringify(t.coordinates))},l.needsNewSource=function(t){return this.sourceType!==t.sourcetype||this.source!==t.source||this.layerType!==t.type},l.needsNewLayer=function(t){return this.layerType!==t.type||this.below!==this.subplot.belowLookup["layout-"+this.index]},l.updateImage=function(t){this.subplot.map.getSource(this.idSource).updateImage({url:t.source,coordinates:t.coordinates})},l.updateSource=function(t){var e=this.subplot.map;if(e.getSource(this.idSource)&&e.removeSource(this.idSource),this.sourceType=t.sourcetype,this.source=t.source,c(t)){var r=function(t){var e,r=t.sourcetype,n=t.source,i={type:r};"geojson"===r?e="data":"vector"===r?e="string"==typeof n?"url":"tiles":"raster"===r?(e="tiles",i.tileSize=256):"image"===r&&(e="url",i.coordinates=t.coordinates);i[e]=n,t.sourceattribution&&(i.attribution=a(t.sourceattribution));return i}(t);e.addSource(this.idSource,r)}},l.updateLayer=function(t){var e,r=this.subplot,n=u(t),a=this.subplot.belowLookup["layout-"+this.index];if("traces"===a)for(var i=r.getMapLayers(),s=0;s<i.length;s++){var l=i[s].id;if("string"==typeof l&&0===l.indexOf(o.traceLayerPrefix)){e=l;break}}else e=a;this.removeLayer(),c(t)&&r.addLayer({id:this.idLayer,source:this.idSource,"source-layer":t.sourcelayer||"",type:t.type,minzoom:t.minzoom,maxzoom:t.maxzoom,layout:n.layout,paint:n.paint},e),this.layerType=t.type,this.below=a},l.updateStyle=function(t){if(c(t)){var e=u(t);this.subplot.setOptions(this.idLayer,"setLayoutProperty",e.layout),this.subplot.setOptions(this.idLayer,"setPaintProperty",e.paint)}},l.removeLayer=function(){var t=this.subplot.map;t.getLayer(this.idLayer)&&t.removeLayer(this.idLayer)},l.dispose=function(){var t=this.subplot.map;t.getLayer(this.idLayer)&&t.removeLayer(this.idLayer),t.getSource(this.idSource)&&t.removeSource(this.idSource)},e.exports=function(t,e,r){var n=new s(t,e);return n.update(r),n}},{"../../lib":728,"../../lib/svg_text_utils":752,"./constants":831,"./convert_text_opts":832}],835:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../components/color").defaultLine,i=t("../domain").attributes,o=t("../font_attributes"),s=t("../../traces/scatter/attributes").textposition,l=t("../../plot_api/edit_types").overrideAll,c=t("../../plot_api/plot_template").templatedArray,u=t("./constants"),h=o({});h.family.dflt="Open Sans Regular, Arial Unicode MS Regular",(e.exports=l({_arrayAttrRegexps:[n.counterRegex("mapbox",".layers",!0)],domain:i({name:"mapbox"}),accesstoken:{valType:"string",noBlank:!0,strict:!0},style:{valType:"any",values:u.styleValuesMapbox.concat(u.styleValuesNonMapbox),dflt:u.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},layers:c("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:a},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:a}},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:h,textposition:n.extendFlat({},s,{arrayOk:!1})}})},"plot","from-root")).uirevision={valType:"any",editType:"none"}},{"../../components/color":595,"../../lib":728,"../../plot_api/edit_types":759,"../../plot_api/plot_template":766,"../../traces/scatter/attributes":1134,"../domain":803,"../font_attributes":804,"./constants":831}],836:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../subplot_defaults"),i=t("../array_container_defaults"),o=t("./layout_attributes");function s(t,e,r,n){r("accesstoken",n.accessToken),r("style"),r("center.lon"),r("center.lat"),r("zoom"),r("bearing"),r("pitch"),i(t,e,{name:"layers",handleItemDefaults:l}),e._input=t}function l(t,e){function r(r,a){return n.coerce(t,e,o.layers,r,a)}if(r("visible")){var a,i=r("sourcetype"),s="raster"===i||"image"===i;r("source"),r("sourceattribution"),"vector"===i&&r("sourcelayer"),"image"===i&&r("coordinates"),s&&(a="raster");var l=r("type",a);s&&"raster"!==l&&(l=e.type="raster",n.log("Source types *raster* and *image* must drawn *raster* layer type.")),r("below"),r("color"),r("opacity"),r("minzoom"),r("maxzoom"),"circle"===l&&r("circle.radius"),"line"===l&&(r("line.width"),r("line.dash")),"fill"===l&&r("fill.outlinecolor"),"symbol"===l&&(r("symbol.icon"),r("symbol.iconsize"),r("symbol.text"),n.coerceFont(r,"symbol.textfont"),r("symbol.textposition"),r("symbol.placement"))}}e.exports=function(t,e,r){a(t,e,r,{type:"mapbox",attributes:o,handleDefaults:s,partition:"y",accessToken:e._mapboxAccessToken})}},{"../../lib":728,"../array_container_defaults":772,"../subplot_defaults":853,"./layout_attributes":835}],837:[function(t,e,r){"use strict";var n=t("mapbox-gl"),a=t("../../lib"),i=t("../../lib/geo_location_utils"),o=t("../../registry"),s=t("../cartesian/axes"),l=t("../../components/dragelement"),c=t("../../components/fx"),u=t("../../components/dragelement/helpers"),h=u.rectMode,f=u.drawMode,p=u.selectMode,d=t("../cartesian/select").prepSelect,g=t("../cartesian/select").clearSelect,m=t("../cartesian/select").clearSelectionsCache,v=t("../cartesian/select").selectOnClick,y=t("./constants"),x=t("./layers");function b(t,e){this.id=e,this.gd=t;var r=t._fullLayout,n=t._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 _=b.prototype;_.plot=function(t,e,r){var n,a=this,i=e[a.id];a.map&&i.accesstoken!==a.accessToken&&(a.map.remove(),a.map=null,a.styleObj=null,a.traceHash={},a.layerList=[]),n=a.map?new Promise((function(r,n){a.updateMap(t,e,r,n)})):new Promise((function(r,n){a.createMap(t,e,r,n)})),r.push(n)},_.createMap=function(t,e,r,a){var o=this,s=e[o.id],l=o.styleObj=T(s.style);o.accessToken=s.accesstoken;var c=o.map=new n.Map({container:o.div,style:l.style,center:A(s.center),zoom:s.zoom,bearing:s.bearing,pitch:s.pitch,interactive:!o.isStatic,preserveDrawingBuffer:o.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new n.AttributionControl({compact:!0}));c._canvas.style.left="0px",c._canvas.style.top="0px",o.rejectOnError(a),o.isStatic||o.initFx(t,e);var u=[];u.push(new Promise((function(t){c.once("load",t)}))),u=u.concat(i.fetchTraceGeoData(t)),Promise.all(u).then((function(){o.fillBelowLookup(t,e),o.updateData(t),o.updateLayout(e),o.resolveOnRender(r)})).catch(a)},_.updateMap=function(t,e,r,n){var a=this,o=a.map,s=e[this.id];a.rejectOnError(n);var l=[],c=T(s.style);JSON.stringify(a.styleObj)!==JSON.stringify(c)&&(a.styleObj=c,o.setStyle(c.style),a.traceHash={},l.push(new Promise((function(t){o.once("styledata",t)})))),l=l.concat(i.fetchTraceGeoData(t)),Promise.all(l).then((function(){a.fillBelowLookup(t,e),a.updateData(t),a.updateLayout(e),a.resolveOnRender(r)})).catch(n)},_.fillBelowLookup=function(t,e){var r,n,a=e[this.id].layers,i=this.belowLookup={},o=!1;for(r=0;r<t.length;r++){var s=t[r][0].trace,l=s._module;"string"==typeof s.below?n=s.below:l.getBelow&&(n=l.getBelow(s,this)),""===n&&(o=!0),i["trace-"+s.uid]=n||""}for(r=0;r<a.length;r++){var c=a[r];n="string"==typeof c.below?c.below:o?"traces":"",i["layout-"+r]=n}var u,h,f={};for(u in i)f[n=i[u]]?f[n].push(u):f[n]=[u];for(n in f){var p=f[n];if(p.length>1)for(r=0;r<p.length;r++)0===(u=p[r]).indexOf("trace-")?(h=u.split("trace-")[1],this.traceHash[h]&&(this.traceHash[h].below=null)):0===u.indexOf("layout-")&&(h=u.split("layout-")[1],this.layerList[h]&&(this.layerList[h].below=null))}};var w={choroplethmapbox:0,densitymapbox:1,scattermapbox:2};function T(t){var e={};return a.isPlainObject(t)?(e.id=t.id,e.style=t):"string"==typeof t?(e.id=t,-1!==y.styleValuesMapbox.indexOf(t)?e.style=k(t):y.stylesNonMapbox[t]?e.style=y.stylesNonMapbox[t]:e.style=t):(e.id=y.styleValueDflt,e.style=k(y.styleValueDflt)),e.transition={duration:0,delay:0},e}function k(t){return y.styleUrlPrefix+t+"-"+y.styleUrlSuffix}function A(t){return[t.lon,t.lat]}_.updateData=function(t){var e,r,n,a,i=this.traceHash,o=t.slice().sort((function(t,e){return w[t[0].trace.type]-w[e[0].trace.type]}));for(n=0;n<o.length;n++){var s=o[n],l=!1;(e=i[(r=s[0].trace).uid])&&(e.type===r.type?(e.update(s),l=!0):e.dispose()),!l&&r._module&&(i[r.uid]=r._module.plot(this,s))}var c=Object.keys(i);t:for(n=0;n<c.length;n++){var u=c[n];for(a=0;a<t.length;a++)if(u===(r=t[a][0].trace).uid)continue t;(e=i[u]).dispose(),delete i[u]}},_.updateLayout=function(t){var e=this.map,r=t[this.id];this.dragging||this.wheeling||(e.setCenter(A(r.center)),e.setZoom(r.zoom),e.setBearing(r.bearing),e.setPitch(r.pitch)),this.updateLayers(t),this.updateFramework(t),this.updateFx(t),this.map.resize(),this.gd._context._scrollZoom.mapbox?e.scrollZoom.enable():e.scrollZoom.disable()},_.resolveOnRender=function(t){var e=this.map;e.on("render",(function r(){e.loaded()&&(e.off("render",r),setTimeout(t,10))}))},_.rejectOnError=function(t){var e=this.map;function r(){t(new Error(y.mapOnErrorMsg))}e.once("error",r),e.once("style.error",r),e.once("source.error",r),e.once("tile.error",r),e.once("layer.error",r)},_.createFramework=function(t){var e=this,r=e.div=document.createElement("div");r.id=e.uid,r.style.position="absolute",e.container.appendChild(r),e.xaxis={_id:"x",c2p:function(t){return e.project(t).x}},e.yaxis={_id:"y",c2p:function(t){return e.project(t).y}},e.updateFramework(t),e.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},s.setConvert(e.mockAxis,t)},_.initFx=function(t,e){var r=this,n=r.gd,a=r.map;function i(){c.loneUnhover(e._hoverlayer)}function s(){var t=r.getView();n.emit("plotly_relayouting",r.getViewEditsWithDerived(t))}a.on("moveend",(function(t){if(r.map){var e=n._fullLayout;if(t.originalEvent||r.wheeling){var a=e[r.id];o.call("_storeDirectGUIEdit",n.layout,e._preGUI,r.getViewEdits(a));var i=r.getView();a._input.center=a.center=i.center,a._input.zoom=a.zoom=i.zoom,a._input.bearing=a.bearing=i.bearing,a._input.pitch=a.pitch=i.pitch,n.emit("plotly_relayout",r.getViewEditsWithDerived(i))}t.originalEvent&&"mouseup"===t.originalEvent.type?r.dragging=!1:r.wheeling&&(r.wheeling=!1),e._rehover&&e._rehover()}})),a.on("wheel",(function(){r.wheeling=!0})),a.on("mousemove",(function(t){var e=r.div.getBoundingClientRect();t.clientX=t.point.x+e.left,t.clientY=t.point.y+e.top,t.target.getBoundingClientRect=function(){return e},r.xaxis.p2c=function(){return t.lngLat.lng},r.yaxis.p2c=function(){return t.lngLat.lat},n._fullLayout._rehover=function(){n._fullLayout._hoversubplot===r.id&&n._fullLayout[r.id]&&c.hover(n,t,r.id)},c.hover(n,t,r.id),n._fullLayout._hoversubplot=r.id})),a.on("dragstart",(function(){r.dragging=!0,i()})),a.on("zoomstart",i),a.on("mouseout",(function(){n._fullLayout._hoversubplot=null})),a.on("drag",s),a.on("zoom",s),a.on("dblclick",(function(){var t=n._fullLayout[r.id];o.call("_storeDirectGUIEdit",n.layout,n._fullLayout._preGUI,r.getViewEdits(t));var e=r.viewInitial;a.setCenter(A(e.center)),a.setZoom(e.zoom),a.setBearing(e.bearing),a.setPitch(e.pitch);var i=r.getView();t._input.center=t.center=i.center,t._input.zoom=t.zoom=i.zoom,t._input.bearing=t.bearing=i.bearing,t._input.pitch=t.pitch=i.pitch,n.emit("plotly_doubleclick",null),n.emit("plotly_relayout",r.getViewEditsWithDerived(i))})),r.clearSelect=function(){m(r.dragOptions),g(r.dragOptions.gd)},r.onClickInPanFn=function(t){return function(e){var a=n._fullLayout.clickmode;a.indexOf("select")>-1&&v(e.originalEvent,n,[r.xaxis],[r.yaxis],r.id,t),a.indexOf("event")>-1&&c.click(n,e.originalEvent)}}},_.updateFx=function(t){var e=this,r=e.map,n=e.gd;if(!e.isStatic){var i,o=t.dragmode;i=h(o)?function(t,r){(t.range={})[e.id]=[c([r.xmin,r.ymin]),c([r.xmax,r.ymax])]}:function(t,r,n){(t.lassoPoints={})[e.id]=n.filtered.map(c)};var s=e.dragOptions;e.dragOptions=a.extendDeep(s||{},{dragmode:t.dragmode,element:e.div,gd:n,plotinfo:{id:e.id,domain:t[e.id].domain,xaxis:e.xaxis,yaxis:e.yaxis,fillRangeItems:i},xaxes:[e.xaxis],yaxes:[e.yaxis],subplot:e.id}),r.off("click",e.onClickInPanHandler),p(o)||f(o)?(r.dragPan.disable(),r.on("zoomstart",e.clearSelect),e.dragOptions.prepFn=function(t,r,n){d(t,r,n,e.dragOptions,o)},l.init(e.dragOptions)):(r.dragPan.enable(),r.off("zoomstart",e.clearSelect),e.div.onmousedown=null,e.onClickInPanHandler=e.onClickInPanFn(e.dragOptions),r.on("click",e.onClickInPanHandler))}function c(t){var r=e.map.unproject(t);return[r.lng,r.lat]}},_.updateFramework=function(t){var e=t[this.id].domain,r=t._size,n=this.div.style;n.width=r.w*(e.x[1]-e.x[0])+"px",n.height=r.h*(e.y[1]-e.y[0])+"px",n.left=r.l+e.x[0]*r.w+"px",n.top=r.t+(1-e.y[1])*r.h+"px",this.xaxis._offset=r.l+e.x[0]*r.w,this.xaxis._length=r.w*(e.x[1]-e.x[0]),this.yaxis._offset=r.t+(1-e.y[1])*r.h,this.yaxis._length=r.h*(e.y[1]-e.y[0])},_.updateLayers=function(t){var e,r=t[this.id].layers,n=this.layerList;if(r.length!==n.length){for(e=0;e<n.length;e++)n[e].dispose();for(n=this.layerList=[],e=0;e<r.length;e++)n.push(x(this,e,r[e]))}else for(e=0;e<r.length;e++)n[e].update(r[e])},_.destroy=function(){this.map&&(this.map.remove(),this.map=null,this.container.removeChild(this.div))},_.toImage=function(){return this.map.stop(),this.map.getCanvas().toDataURL()},_.setOptions=function(t,e,r){for(var n in r)this.map[e](t,n,r[n])},_.getMapLayers=function(){return this.map.getStyle().layers},_.addLayer=function(t,e){var r=this.map;if("string"==typeof e){if(""===e)return void r.addLayer(t,e);for(var n=this.getMapLayers(),i=0;i<n.length;i++)if(e===n[i].id)return void r.addLayer(t,e);a.warn(["Trying to add layer with *below* value",e,"referencing a layer that does not exist","or that does not yet exist."].join(" "))}r.addLayer(t)},_.project=function(t){return this.map.project(new n.LngLat(t[0],t[1]))},_.getView=function(){var t=this.map,e=t.getCenter(),r={lon:e.lng,lat:e.lat},n=t.getCanvas(),a=n.width,i=n.height;return{center:r,zoom:t.getZoom(),bearing:t.getBearing(),pitch:t.getPitch(),_derived:{coordinates:[t.unproject([0,0]).toArray(),t.unproject([a,0]).toArray(),t.unproject([a,i]).toArray(),t.unproject([0,i]).toArray()]}}},_.getViewEdits=function(t){for(var e=this.id,r=["center","zoom","bearing","pitch"],n={},a=0;a<r.length;a++){var i=r[a];n[e+"."+i]=t[i]}return n},_.getViewEditsWithDerived=function(t){var e=this.id,r=this.getViewEdits(t);return r[e+"._derived"]=t._derived,r},e.exports=b},{"../../components/dragelement":614,"../../components/dragelement/helpers":613,"../../components/fx":635,"../../lib":728,"../../lib/geo_location_utils":722,"../../registry":859,"../cartesian/axes":776,"../cartesian/select":795,"./constants":831,"./layers":834,"mapbox-gl":426}],838:[function(t,e,r){"use strict";e.exports=function(t){var e=t.editType;return{t:{valType:"number",dflt:0,editType:e},r:{valType:"number",dflt:0,editType:e},b:{valType:"number",dflt:0,editType:e},l:{valType:"number",dflt:0,editType:e},editType:e}}},{}],839:[function(t,e,r){"use strict";var n=t("d3"),a=t("fast-isnumeric"),i=t("../registry"),o=t("../plot_api/plot_schema"),s=t("../plot_api/plot_template"),l=t("../lib"),c=t("../components/color"),u=t("../constants/numerical").BADNUM,h=t("./cartesian/axis_ids"),f=t("./cartesian/handle_outline").clearSelect,p=t("./animation_attributes"),d=t("./frame_attributes"),g=t("../plots/get_data").getModuleCalcData,m=l.relinkPrivateKeys,v=l._,y=e.exports={};l.extendFlat(y,i),y.attributes=t("./attributes"),y.attributes.type.values=y.allTypes,y.fontAttrs=t("./font_attributes"),y.layoutAttributes=t("./layout_attributes"),y.fontWeight="normal";var x=y.transformsRegistry,b=t("./command");y.executeAPICommand=b.executeAPICommand,y.computeAPICommandBindings=b.computeAPICommandBindings,y.manageCommandObserver=b.manageCommandObserver,y.hasSimpleAPICommandBindings=b.hasSimpleAPICommandBindings,y.redrawText=function(t){var e=(t=l.getGraphDiv(t))._fullLayout||{};if(!(!(e._has&&e._has("polar"))&&t.data&&t.data[0]&&t.data[0].r))return new Promise((function(e){setTimeout((function(){i.getComponentMethod("annotations","draw")(t),i.getComponentMethod("legend","draw")(t),i.getComponentMethod("colorbar","draw")(t),e(y.previousPromises(t))}),300)}))},y.resize=function(t){var e;t=l.getGraphDiv(t);var r=new Promise((function(r,n){t&&!l.isHidden(t)||n(new Error("Resize must be passed a displayed plot div element.")),t._redrawTimer&&clearTimeout(t._redrawTimer),t._resolveResize&&(e=t._resolveResize),t._resolveResize=r,t._redrawTimer=setTimeout((function(){if(!t.layout||t.layout.width&&t.layout.height||l.isHidden(t))r(t);else{delete t.layout.width,delete t.layout.height;var e=t.changed;t.autoplay=!0,i.call("relayout",t,{autosize:!0}).then((function(){t.changed=e,t._resolveResize===r&&(delete t._resolveResize,r(t))}))}}),100)}));return e&&e(r),r},y.previousPromises=function(t){if((t._promises||[]).length)return Promise.all(t._promises).then((function(){t._promises=[]}))},y.addLinks=function(t){if(t._context.showLink||t._context.showSources){var e=t._fullLayout,r=l.ensureSingle(e._paper,"text","js-plot-link-container",(function(t){t.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:c.defaultLine,"pointer-events":"all"}).each((function(){var t=n.select(this);t.append("tspan").classed("js-link-to-tool",!0),t.append("tspan").classed("js-link-spacer",!0),t.append("tspan").classed("js-sourcelinks",!0)}))})),a=r.node(),i={y:e._paper.attr("height")-9};document.body.contains(a)&&a.getComputedTextLength()>=e.width-20?(i["text-anchor"]="start",i.x=5):(i["text-anchor"]="end",i.x=e._paper.attr("width")-7),r.attr(i);var o=r.select(".js-link-to-tool"),s=r.select(".js-link-spacer"),u=r.select(".js-sourcelinks");t._context.showSources&&t._context.showSources(t),t._context.showLink&&function(t,e){e.text("");var r=e.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(t._context.linkText+" "+String.fromCharCode(187));if(t._context.sendData)r.on("click",(function(){y.sendDataToCloud(t)}));else{var n=window.location.pathname.split("/"),a=window.location.search;r.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+n[2].split(".")[0]+"/"+n[1]+a})}}(t,o),s.text(o.text()&&u.text()?" - ":"")}},y.sendDataToCloud=function(t){var e=(window.PLOTLYENV||{}).BASE_URL||t._context.plotlyServerURL;if(e){t.emit("plotly_beforeexport");var r=n.select(t).append("div").attr("id","hiddenform").style("display","none"),a=r.append("form").attr({action:e+"/external",method:"post",target:"_blank"});return a.append("input").attr({type:"text",name:"data"}).node().value=y.graphJson(t,!1,"keepdata"),a.node().submit(),r.remove(),t.emit("plotly_afterexport"),!1}};var _=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],w=["year","month","dayMonth","dayMonthYear"];function T(t,e){var r=t._context.locale,n=!1,a={};function o(t){for(var r=!0,i=0;i<e.length;i++){var o=e[i];a[o]||(t[o]?a[o]=t[o]:r=!1)}r&&(n=!0)}for(var s=0;s<2;s++){for(var l=t._context.locales,c=0;c<2;c++){var u=(l[r]||{}).format;if(u&&(o(u),n))break;l=i.localeRegistry}var h=r.split("-")[0];if(n||h===r)break;r=h}return n||o(i.localeRegistry.en.format),a}function k(t,e){var r={_fullLayout:e},n="x"===t._id.charAt(0),a=t._mainAxis._anchorAxis,i="",o="",s="";if(a&&(s=a._mainAxis._id,i=n?t._id+s:s+t._id),!i||!e._plots[i]){i="";for(var l=t._counterAxes,c=0;c<l.length;c++){var u=l[c],f=n?t._id+u:u+t._id;o||(o=f);var p=h.getFromId(r,u);if(s&&p.overlaying===s){i=f;break}}}return i||o}function A(t){var e=t.transforms;if(Array.isArray(e)&&e.length)for(var r=0;r<e.length;r++){var n=e[r],a=n._module||x[n.type];if(a&&a.makesData)return!0}return!1}function M(t,e,r,n){for(var a=t.transforms,i=[t],o=0;o<a.length;o++){var s=a[o],l=x[s.type];l&&l.transform&&(i=l.transform(i,{transform:s,fullTrace:t,fullData:e,layout:r,fullLayout:n,transformIndex:o}))}return i}function S(t){return"string"==typeof t&&"px"===t.substr(t.length-2)&&parseFloat(t)}function E(t){var e=t.margin;if(!t._size){var r=t._size={l:Math.round(e.l),r:Math.round(e.r),t:Math.round(e.t),b:Math.round(e.b),p:Math.round(e.pad)};r.w=Math.round(t.width)-r.l-r.r,r.h=Math.round(t.height)-r.t-r.b}t._pushmargin||(t._pushmargin={}),t._pushmarginIds||(t._pushmarginIds={})}y.supplyDefaults=function(t,e){var r=e&&e.skipUpdateCalc,a=t._fullLayout||{};if(a._skipDefaults)delete a._skipDefaults;else{var o,s=t._fullLayout={},c=t.layout||{},u=t._fullData||[],h=t._fullData=[],p=t.data||[],d=t.calcdata||[],g=t._context||{};t._transitionData||y.createTransitionData(t),s._dfltTitle={plot:v(t,"Click to enter Plot title"),x:v(t,"Click to enter X axis title"),y:v(t,"Click to enter Y axis title"),colorbar:v(t,"Click to enter Colorscale title"),annotation:v(t,"new text")},s._traceWord=v(t,"trace");var x=T(t,_);if(s._mapboxAccessToken=g.mapboxAccessToken,a._initialAutoSizeIsDone){var b=a.width,k=a.height;y.supplyLayoutGlobalDefaults(c,s,x),c.width||(s.width=b),c.height||(s.height=k),y.sanitizeMargins(s)}else{y.supplyLayoutGlobalDefaults(c,s,x);var A=!c.width||!c.height,M=s.autosize,S=g.autosizable;A&&(M||S)?y.plotAutoSize(t,c,s):A&&y.sanitizeMargins(s),!M&&A&&(c.width=s.width,c.height=s.height)}s._d3locale=function(t,e){return t.decimal=e.charAt(0),t.thousands=e.charAt(1),n.locale(t)}(x,s.separators),s._extraFormat=T(t,w),s._initialAutoSizeIsDone=!0,s._dataLength=p.length,s._modules=[],s._visibleModules=[],s._basePlotModules=[];var C=s._subplots=function(){var t,e,r=i.collectableSubplotTypes,n={};if(!r){r=[];var a=i.subplotsRegistry;for(var o in a){var s=a[o].attr;if(s&&(r.push(o),Array.isArray(s)))for(e=0;e<s.length;e++)l.pushUnique(r,s[e])}}for(t=0;t<r.length;t++)n[r[t]]=[];return n}(),L=s._splomAxes={x:{},y:{}},P=s._splomSubplots={};s._splomGridDflt={},s._scatterStackOpts={},s._firstScatter={},s._alignmentOpts={},s._colorAxes={},s._requestRangeslider={},s._traceUids=function(t,e){var r,n,a=e.length,i=[];for(r=0;r<t.length;r++){var o=t[r]._fullInput;o!==n&&i.push(o),n=o}var s=i.length,c=new Array(a),u={};function h(t,e){c[e]=t,u[t]=1}function f(t,e){if(t&&"string"==typeof t&&!u[t])return h(t,e),!0}for(r=0;r<a;r++){var p=e[r].uid;"number"==typeof p&&(p=String(p)),f(p,r)||(r<s&&f(i[r].uid,r)||h(l.randstr(u),r))}return c}(u,p),s._globalTransforms=(t._context||{}).globalTransforms,y.supplyDataDefaults(p,h,c,s);var I=Object.keys(L.x),z=Object.keys(L.y);if(I.length>1&&z.length>1){for(i.getComponentMethod("grid","sizeDefaults")(c,s),o=0;o<I.length;o++)l.pushUnique(C.xaxis,I[o]);for(o=0;o<z.length;o++)l.pushUnique(C.yaxis,z[o]);for(var O in P)l.pushUnique(C.cartesian,O)}if(s._has=y._hasPlotType.bind(s),u.length===h.length)for(o=0;o<h.length;o++)m(h[o],u[o]);y.supplyLayoutModuleDefaults(c,s,h,t._transitionData);var D=s._visibleModules,R=[];for(o=0;o<D.length;o++){var F=D[o].crossTraceDefaults;F&&l.pushUnique(R,F)}for(o=0;o<R.length;o++)R[o](h,s);s._hasOnlyLargeSploms=1===s._basePlotModules.length&&"splom"===s._basePlotModules[0].name&&I.length>15&&z.length>15&&0===s.shapes.length&&0===s.images.length,s._hasCartesian=s._has("cartesian"),s._hasGeo=s._has("geo"),s._hasGL3D=s._has("gl3d"),s._hasGL2D=s._has("gl2d"),s._hasTernary=s._has("ternary"),s._hasPie=s._has("pie"),y.linkSubplots(h,s,u,a),y.cleanPlot(h,s,u,a);var B=!(!a._has||!a._has("gl2d")),N=!(!s._has||!s._has("gl2d")),j=!(!a._has||!a._has("cartesian"))||B,V=!(!s._has||!s._has("cartesian"))||N;j&&!V?a._bgLayer.remove():V&&!j&&(s._shouldCreateBgLayer=!0),a._zoomlayer&&!t._dragging&&f({_fullLayout:a}),function(t,e){var r,n=[];e.meta&&(r=e._meta={meta:e.meta,layout:{meta:e.meta}});for(var a=0;a<t.length;a++){var i=t[a];i.meta?n[i.index]=i._meta={meta:i.meta}:e.meta&&(i._meta={meta:e.meta}),e.meta&&(i._meta.layout={meta:e.meta})}n.length&&(r||(r=e._meta={}),r.data=n)}(h,s),m(s,a),i.getComponentMethod("colorscale","crossTraceDefaults")(h,s),s._preGUI||(s._preGUI={}),s._tracePreGUI||(s._tracePreGUI={});var U,q=s._tracePreGUI,H={};for(U in q)H[U]="old";for(o=0;o<h.length;o++)H[U=h[o]._fullInput.uid]||(q[U]={}),H[U]="new";for(U in H)"old"===H[U]&&delete q[U];E(s),i.getComponentMethod("rangeslider","makeData")(s),r||d.length!==h.length||y.supplyDefaultsUpdateCalc(d,h)}},y.supplyDefaultsUpdateCalc=function(t,e){for(var r=0;r<e.length;r++){var n=e[r],a=(t[r]||[])[0];if(a&&a.trace){var i=a.trace;if(i._hasCalcTransform){var o,s,c,u=i._arrayAttrs;for(o=0;o<u.length;o++)s=u[o],c=l.nestedProperty(i,s).get().slice(),l.nestedProperty(n,s).set(c)}a.trace=n}}},y.createTransitionData=function(t){t._transitionData||(t._transitionData={}),t._transitionData._frames||(t._transitionData._frames=[]),t._transitionData._frameHash||(t._transitionData._frameHash={}),t._transitionData._counter||(t._transitionData._counter=0),t._transitionData._interruptCallbacks||(t._transitionData._interruptCallbacks=[])},y._hasPlotType=function(t){var e,r=this._basePlotModules||[];for(e=0;e<r.length;e++)if(r[e].name===t)return!0;var n=this._modules||[];for(e=0;e<n.length;e++){var a=n[e].name;if(a===t)return!0;var o=i.modules[a];if(o&&o.categories[t])return!0}return!1},y.cleanPlot=function(t,e,r,n){var a,i,o=n._basePlotModules||[];for(a=0;a<o.length;a++){var s=o[a];s.clean&&s.clean(t,e,r,n)}var l=n._has&&n._has("gl"),c=e._has&&e._has("gl");l&&!c&&void 0!==n._glcontainer&&(n._glcontainer.selectAll(".gl-canvas").remove(),n._glcontainer.selectAll(".no-webgl").remove(),n._glcanvas=null);var u=!!n._infolayer;t:for(a=0;a<r.length;a++){var h=r[a].uid;for(i=0;i<t.length;i++){if(h===t[i].uid)continue t}u&&n._infolayer.select(".cb"+h).remove()}},y.linkSubplots=function(t,e,r,n){var a,o,s=n._plots||{},c=e._plots={},u=e._subplots,f={_fullData:t,_fullLayout:e},p=u.cartesian.concat(u.gl2d||[]);for(a=0;a<p.length;a++){var d,g=p[a],m=s[g],v=h.getFromId(f,g,"x"),y=h.getFromId(f,g,"y");for(m?d=c[g]=m:(d=c[g]={}).id=g,v._counterAxes.push(y._id),y._counterAxes.push(v._id),v._subplotsWith.push(g),y._subplotsWith.push(g),d.xaxis=v,d.yaxis=y,d._hasClipOnAxisFalse=!1,o=0;o<t.length;o++){var x=t[o];if(x.xaxis===d.xaxis._id&&x.yaxis===d.yaxis._id&&!1===x.cliponaxis){d._hasClipOnAxisFalse=!0;break}}}var b,_=h.list(f,null,!0);for(a=0;a<_.length;a++){var w=null;(b=_[a]).overlaying&&(w=h.getFromId(f,b.overlaying))&&w.overlaying&&(b.overlaying=!1,w=null),b._mainAxis=w||b,w&&(b.domain=w.domain.slice()),b._anchorAxis="free"===b.anchor?null:h.getFromId(f,b.anchor)}for(a=0;a<_.length;a++)if((b=_[a])._counterAxes.sort(h.idSort),b._subplotsWith.sort(l.subplotSort),b._mainSubplot=k(b,e),b._counterAxes.length&&(b.spikemode&&-1!==b.spikemode.indexOf("across")||b.automargin&&b.mirror&&"free"!==b.anchor||i.getComponentMethod("rangeslider","isVisible")(b))){var T=1,A=0;for(o=0;o<b._counterAxes.length;o++){var M=h.getFromId(f,b._counterAxes[o]);T=Math.min(T,M.domain[0]),A=Math.max(A,M.domain[1])}T<A&&(b._counterDomainMin=T,b._counterDomainMax=A)}},y.clearExpandedTraceDefaultColors=function(t){var e,r,n;for(r=[],(e=t._module._colorAttrs)||(t._module._colorAttrs=e=[],o.crawl(t._module.attributes,(function(t,n,a,i){r[i]=n,r.length=i+1,"color"===t.valType&&void 0===t.dflt&&e.push(r.join("."))}))),n=0;n<e.length;n++){l.nestedProperty(t,"_input."+e[n]).get()||l.nestedProperty(t,e[n]).set(null)}},y.supplyDataDefaults=function(t,e,r,n){var a,o,c,u=n._modules,h=n._visibleModules,f=n._basePlotModules,p=0,d=0;function g(t){e.push(t);var r=t._module;r&&(l.pushUnique(u,r),!0===t.visible&&l.pushUnique(h,r),l.pushUnique(f,t._module.basePlotModule),p++,!1!==t._input.visible&&d++)}n._transformModules=[];var v={},x=[],b=(r.template||{}).data||{},_=s.traceTemplater(b);for(a=0;a<t.length;a++){if(c=t[a],(o=_.newTrace(c)).uid=n._traceUids[a],y.supplyTraceDefaults(c,o,d,n,a),o.index=a,o._input=c,o._expandedIndex=p,o.transforms&&o.transforms.length)for(var w=!1!==c.visible&&!1===o.visible,T=M(o,e,r,n),k=0;k<T.length;k++){var A=T[k],S={_template:o._template,type:o.type,uid:o.uid+k};w&&!1===A.visible&&delete A.visible,y.supplyTraceDefaults(A,S,p,n,a),m(S,A),S.index=a,S._input=c,S._fullInput=o,S._expandedIndex=p,S._expandedInput=A,g(S)}else o._fullInput=o,o._expandedInput=o,g(o);i.traceIs(o,"carpetAxis")&&(v[o.carpet]=o),i.traceIs(o,"carpetDependent")&&x.push(a)}for(a=0;a<x.length;a++)if((o=e[x[a]]).visible){var E=v[o.carpet];o._carpet=E,E&&E.visible?(o.xaxis=E.xaxis,o.yaxis=E.yaxis):o.visible=!1}},y.supplyAnimationDefaults=function(t){var e;t=t||{};var r={};function n(e,n){return l.coerce(t||{},r,p,e,n)}if(n("mode"),n("direction"),n("fromcurrent"),Array.isArray(t.frame))for(r.frame=[],e=0;e<t.frame.length;e++)r.frame[e]=y.supplyAnimationFrameDefaults(t.frame[e]||{});else r.frame=y.supplyAnimationFrameDefaults(t.frame||{});if(Array.isArray(t.transition))for(r.transition=[],e=0;e<t.transition.length;e++)r.transition[e]=y.supplyAnimationTransitionDefaults(t.transition[e]||{});else r.transition=y.supplyAnimationTransitionDefaults(t.transition||{});return r},y.supplyAnimationFrameDefaults=function(t){var e={};function r(r,n){return l.coerce(t||{},e,p.frame,r,n)}return r("duration"),r("redraw"),e},y.supplyAnimationTransitionDefaults=function(t){var e={};function r(r,n){return l.coerce(t||{},e,p.transition,r,n)}return r("duration"),r("easing"),e},y.supplyFrameDefaults=function(t){var e={};function r(r,n){return l.coerce(t,e,d,r,n)}return r("group"),r("name"),r("traces"),r("baseframe"),r("data"),r("layout"),e},y.supplyTraceDefaults=function(t,e,r,n,a){var o,s=n.colorway||c.defaults,u=s[r%s.length];function h(r,n){return l.coerce(t,e,y.attributes,r,n)}var f=h("visible");h("type"),h("name",n._traceWord+" "+a),h("uirevision",n.uirevision);var p=y.getModule(e);if(e._module=p,p){var d=p.basePlotModule,g=d.attr,m=d.attributes;if(g&&m){var v=n._subplots,x="";if(f||"gl2d"!==d.name){if(Array.isArray(g))for(o=0;o<g.length;o++){var b=g[o],_=l.coerce(t,e,m,b);v[b]&&l.pushUnique(v[b],_),x+=_}else x=l.coerce(t,e,m,g);v[d.name]&&l.pushUnique(v[d.name],x)}}}return f&&(h("customdata"),h("ids"),h("meta"),i.traceIs(e,"showLegend")?(l.coerce(t,e,p.attributes.showlegend?p.attributes:y.attributes,"showlegend"),h("legendgroup"),e._dfltShowLegend=!0):e._dfltShowLegend=!1,p&&p.supplyDefaults(t,e,u,n),i.traceIs(e,"noOpacity")||h("opacity"),i.traceIs(e,"notLegendIsolatable")&&(e.visible=!!e.visible),i.traceIs(e,"noHover")||(e.hovertemplate||l.coerceHoverinfo(t,e,n),"parcats"!==e.type&&i.getComponentMethod("fx","supplyDefaults")(t,e,u,n)),p&&p.selectPoints&&h("selectedpoints"),y.supplyTransformDefaults(t,e,n)),e},y.hasMakesDataTransform=A,y.supplyTransformDefaults=function(t,e,r){if(e._length||A(t)){var n=r._globalTransforms||[],a=r._transformModules||[];if(Array.isArray(t.transforms)||0!==n.length)for(var i=t.transforms||[],o=n.concat(i),s=e.transforms=[],c=0;c<o.length;c++){var u,h=o[c],f=h.type,p=x[f],d=!(h._module&&h._module===p),g=p&&"function"==typeof p.transform;p||l.warn("Unrecognized transform type "+f+"."),p&&p.supplyDefaults&&(d||g)?((u=p.supplyDefaults(h,e,r,t)).type=f,u._module=p,l.pushUnique(a,p)):u=l.extendFlat({},h),s.push(u)}}},y.supplyLayoutGlobalDefaults=function(t,e,r){function n(r,n){return l.coerce(t,e,y.layoutAttributes,r,n)}var a=t.template;l.isPlainObject(a)&&(e.template=a,e._template=a.layout,e._dataTemplate=a.data);var o=l.coerceFont(n,"font");n("title.text",e._dfltTitle.plot),l.coerceFont(n,"title.font",{family:o.family,size:Math.round(1.4*o.size),color:o.color}),n("title.xref"),n("title.yref"),n("title.x"),n("title.y"),n("title.xanchor"),n("title.yanchor"),n("title.pad.t"),n("title.pad.r"),n("title.pad.b"),n("title.pad.l"),n("uniformtext.mode")&&n("uniformtext.minsize"),n("autosize",!(t.width&&t.height)),n("width"),n("height"),n("margin.l"),n("margin.r"),n("margin.t"),n("margin.b"),n("margin.pad"),n("margin.autoexpand"),t.width&&t.height&&y.sanitizeMargins(e),i.getComponentMethod("grid","sizeDefaults")(t,e),n("paper_bgcolor"),n("separators",r.decimal+r.thousands),n("hidesources"),n("colorway"),n("datarevision");var s=n("uirevision");n("editrevision",s),n("selectionrevision",s),n("modebar.orientation"),n("modebar.bgcolor",c.addOpacity(e.paper_bgcolor,.5));var u=c.contrast(c.rgb(e.modebar.bgcolor));n("modebar.color",c.addOpacity(u,.3)),n("modebar.activecolor",c.addOpacity(u,.7)),n("modebar.uirevision",s),i.getComponentMethod("shapes","supplyDrawNewShapeDefaults")(t,e,n),n("meta"),l.isPlainObject(t.transition)&&(n("transition.duration"),n("transition.easing"),n("transition.ordering")),i.getComponentMethod("calendars","handleDefaults")(t,e,"calendar"),i.getComponentMethod("fx","supplyLayoutGlobalDefaults")(t,e,n)},y.plotAutoSize=function(t,e,r){var n,i,o=t._context||{},s=o.frameMargins,c=l.isPlotDiv(t);if(c&&t.emit("plotly_autosize"),o.fillFrame)n=window.innerWidth,i=window.innerHeight,document.body.style.overflow="hidden";else{var u=c?window.getComputedStyle(t):{};if(n=S(u.width)||S(u.maxWidth)||r.width,i=S(u.height)||S(u.maxHeight)||r.height,a(s)&&s>0){var h=1-2*s;n=Math.round(h*n),i=Math.round(h*i)}}var f=y.layoutAttributes.width.min,p=y.layoutAttributes.height.min;n<f&&(n=f),i<p&&(i=p);var d=!e.width&&Math.abs(r.width-n)>1,g=!e.height&&Math.abs(r.height-i)>1;(g||d)&&(d&&(r.width=n),g&&(r.height=i)),t._initialAutoSize||(t._initialAutoSize={width:n,height:i}),y.sanitizeMargins(r)},y.supplyLayoutModuleDefaults=function(t,e,r,n){var a,o,s,c=i.componentsRegistry,u=e._basePlotModules,h=i.subplotsRegistry.cartesian;for(a in c)(s=c[a]).includeBasePlot&&s.includeBasePlot(t,e);for(var f in u.length||u.push(h),e._has("cartesian")&&(i.getComponentMethod("grid","contentDefaults")(t,e),h.finalizeSubplots(t,e)),e._subplots)e._subplots[f].sort(l.subplotSort);for(o=0;o<u.length;o++)(s=u[o]).supplyLayoutDefaults&&s.supplyLayoutDefaults(t,e,r);var p=e._modules;for(o=0;o<p.length;o++)(s=p[o]).supplyLayoutDefaults&&s.supplyLayoutDefaults(t,e,r);var d=e._transformModules;for(o=0;o<d.length;o++)(s=d[o]).supplyLayoutDefaults&&s.supplyLayoutDefaults(t,e,r,n);for(a in c)(s=c[a]).supplyLayoutDefaults&&s.supplyLayoutDefaults(t,e,r)},y.purge=function(t){var e=t._fullLayout||{};void 0!==e._glcontainer&&(e._glcontainer.selectAll(".gl-canvas").remove(),e._glcontainer.remove(),e._glcanvas=null),e._modeBar&&e._modeBar.destroy(),t._transitionData&&(t._transitionData._interruptCallbacks&&(t._transitionData._interruptCallbacks.length=0),t._transitionData._animationRaf&&window.cancelAnimationFrame(t._transitionData._animationRaf)),l.clearThrottle(),l.clearResponsive(t),delete t.data,delete t.layout,delete t._fullData,delete t._fullLayout,delete t.calcdata,delete t.framework,delete t.empty,delete t.fid,delete t.undoqueue,delete t.undonum,delete t.autoplay,delete t.changed,delete t._promises,delete t._redrawTimer,delete t._hmlumcount,delete t._hmpixcount,delete t._transitionData,delete t._transitioning,delete t._initialAutoSize,delete t._transitioningWithDuration,delete t._dragging,delete t._dragged,delete t._dragdata,delete t._hoverdata,delete t._snapshotInProgress,delete t._editing,delete t._mouseDownTime,delete t._legendMouseDownTime,t.removeAllListeners&&t.removeAllListeners()},y.style=function(t){var e,r=t._fullLayout._visibleModules,n=[];for(e=0;e<r.length;e++){var a=r[e];a.style&&l.pushUnique(n,a.style)}for(e=0;e<n.length;e++)n[e](t)},y.sanitizeMargins=function(t){if(t&&t.margin){var e,r=t.width,n=t.height,a=t.margin,i=r-(a.l+a.r),o=n-(a.t+a.b);i<0&&(e=(r-1)/(a.l+a.r),a.l=Math.floor(e*a.l),a.r=Math.floor(e*a.r)),o<0&&(e=(n-1)/(a.t+a.b),a.t=Math.floor(e*a.t),a.b=Math.floor(e*a.b))}},y.clearAutoMarginIds=function(t){t._fullLayout._pushmarginIds={}},y.allowAutoMargin=function(t,e){t._fullLayout._pushmarginIds[e]=1},y.autoMargin=function(t,e,r){var n=t._fullLayout,a=n._pushmargin,i=n._pushmarginIds;if(!1!==n.margin.autoexpand){if(r){var o=r.pad;if(void 0===o){var s=n.margin;o=Math.min(12,s.l,s.r,s.t,s.b)}r.l+r.r>.5*n.width&&(l.log("Margin push",e,"is too big in x, dropping"),r.l=r.r=0),r.b+r.t>.5*n.height&&(l.log("Margin push",e,"is too big in y, dropping"),r.b=r.t=0);var c=void 0!==r.xl?r.xl:r.x,u=void 0!==r.xr?r.xr:r.x,h=void 0!==r.yt?r.yt:r.y,f=void 0!==r.yb?r.yb:r.y;a[e]={l:{val:c,size:r.l+o},r:{val:u,size:r.r+o},b:{val:f,size:r.b+o},t:{val:h,size:r.t+o}},i[e]=1}else delete a[e],delete i[e];if(!n._replotting)return y.doAutoMargin(t)}},y.doAutoMargin=function(t){var e=t._fullLayout;e._size||(e._size={}),E(e);var r=e._size,n=e.margin,o=l.extendFlat({},r),s=n.l,c=n.r,u=n.t,h=n.b,f=e.width,p=e.height,d=e._pushmargin,g=e._pushmarginIds;if(!1!==e.margin.autoexpand){for(var m in d)g[m]||delete d[m];for(var v in d.base={l:{val:0,size:s},r:{val:1,size:c},t:{val:1,size:u},b:{val:0,size:h}},d){var x=d[v].l||{},b=d[v].b||{},_=x.val,w=x.size,T=b.val,k=b.size;for(var A in d){if(a(w)&&d[A].r){var M=d[A].r.val,S=d[A].r.size;if(M>_){var C=(w*M+(S-f)*_)/(M-_),L=(S*(1-_)+(w-f)*(1-M))/(M-_);C>=0&&L>=0&&f-(C+L)>0&&C+L>s+c&&(s=C,c=L)}}if(a(k)&&d[A].t){var P=d[A].t.val,I=d[A].t.size;if(P>T){var z=(k*P+(I-p)*T)/(P-T),O=(I*(1-T)+(k-p)*(1-P))/(P-T);z>=0&&O>=0&&p-(O+z)>0&&z+O>h+u&&(h=z,u=O)}}}}}if(r.l=Math.round(s),r.r=Math.round(c),r.t=Math.round(u),r.b=Math.round(h),r.p=Math.round(n.pad),r.w=Math.round(f)-r.l-r.r,r.h=Math.round(p)-r.t-r.b,!e._replotting&&y.didMarginChange(o,r)){"_redrawFromAutoMarginCount"in e?e._redrawFromAutoMarginCount++:e._redrawFromAutoMarginCount=1;var D=3*(1+Object.keys(g).length);if(e._redrawFromAutoMarginCount<D)return i.call("plot",t);l.warn("Too many auto-margin redraws.")}};var C=["l","r","t","b","p","w","h"];function L(t,e,r){var n=!1;var a=[y.previousPromises,function(){if(t._transitionData)return t._transitioning=!1,function(t){var e=Promise.resolve();if(!t)return e;for(;t.length;)e=e.then(t.shift());return e}(t._transitionData._interruptCallbacks)},r.prepareFn,y.rehover,function(){return t.emit("plotly_transitioning",[]),new Promise((function(a){t._transitioning=!0,e.duration>0&&(t._transitioningWithDuration=!0),t._transitionData._interruptCallbacks.push((function(){n=!0})),r.redraw&&t._transitionData._interruptCallbacks.push((function(){return i.call("redraw",t)})),t._transitionData._interruptCallbacks.push((function(){t.emit("plotly_transitioninterrupted",[])}));var o=0,s=0;function l(){return o++,function(){s++,n||s!==o||function(e){if(!t._transitionData)return;(function(t){if(t)for(;t.length;)t.shift()})(t._transitionData._interruptCallbacks),Promise.resolve().then((function(){if(r.redraw)return i.call("redraw",t)})).then((function(){t._transitioning=!1,t._transitioningWithDuration=!1,t.emit("plotly_transitioned",[])})).then(e)}(a)}}r.runFn(l),setTimeout(l())}))}],o=l.syncOrAsync(a,t);return o&&o.then||(o=Promise.resolve()),o.then((function(){return t}))}y.didMarginChange=function(t,e){for(var r=0;r<C.length;r++){var n=C[r],i=t[n],o=e[n];if(!a(i)||Math.abs(o-i)>1)return!0}return!1},y.graphJson=function(t,e,r,n,a,i){(a&&e&&!t._fullData||a&&!e&&!t._fullLayout)&&y.supplyDefaults(t);var o=a?t._fullData:t.data,s=a?t._fullLayout:t.layout,c=(t._transitionData||{})._frames;function u(t,e){if("function"==typeof t)return e?"_function_":null;if(l.isPlainObject(t)){var n,a={};return Object.keys(t).sort().forEach((function(i){if(-1===["_","["].indexOf(i.charAt(0)))if("function"!=typeof t[i]){if("keepdata"===r){if("src"===i.substr(i.length-3))return}else if("keepstream"===r){if("string"==typeof(n=t[i+"src"])&&n.indexOf(":")>0&&!l.isPlainObject(t.stream))return}else if("keepall"!==r&&"string"==typeof(n=t[i+"src"])&&n.indexOf(":")>0)return;a[i]=u(t[i],e)}else e&&(a[i]="_function")})),a}return Array.isArray(t)?t.map((function(t){return u(t,e)})):l.isTypedArray(t)?l.simpleMap(t,l.identity):l.isJSDate(t)?l.ms2DateTimeLocal(+t):t}var h={data:(o||[]).map((function(t){var r=u(t);return e&&delete r.fit,r}))};return e||(h.layout=u(s)),t.framework&&t.framework.isPolar&&(h=t.framework.getConfig()),c&&(h.frames=u(c)),i&&(h.config=u(t._context,!0)),"object"===n?h:JSON.stringify(h)},y.modifyFrames=function(t,e){var r,n,a,i=t._transitionData._frames,o=t._transitionData._frameHash;for(r=0;r<e.length;r++)switch((n=e[r]).type){case"replace":a=n.value;var s=(i[n.index]||{}).name,l=a.name;i[n.index]=o[l]=a,l!==s&&(delete o[s],o[l]=a);break;case"insert":o[(a=n.value).name]=a,i.splice(n.index,0,a);break;case"delete":delete o[(a=i[n.index]).name],i.splice(n.index,1)}return Promise.resolve()},y.computeFrame=function(t,e){var r,n,a,i,o=t._transitionData._frameHash;if(!e)throw new Error("computeFrame must be given a string frame name");var s=o[e.toString()];if(!s)return!1;for(var l=[s],c=[s.name];s.baseframe&&(s=o[s.baseframe.toString()])&&-1===c.indexOf(s.name);)l.push(s),c.push(s.name);for(var u={};s=l.pop();)if(s.layout&&(u.layout=y.extendLayout(u.layout,s.layout)),s.data){if(u.data||(u.data=[]),!(n=s.traces))for(n=[],r=0;r<s.data.length;r++)n[r]=r;for(u.traces||(u.traces=[]),r=0;r<s.data.length;r++)null!=(a=n[r])&&(-1===(i=u.traces.indexOf(a))&&(i=u.data.length,u.traces[i]=a),u.data[i]=y.extendTrace(u.data[i],s.data[r]))}return u},y.recomputeFrameHash=function(t){for(var e=t._transitionData._frameHash={},r=t._transitionData._frames,n=0;n<r.length;n++){var a=r[n];a&&a.name&&(e[a.name]=a)}},y.extendObjectWithContainers=function(t,e,r){var n,a,i,o,s,c,u,h=l.extendDeepNoArrays({},e||{}),f=l.expandObjectPaths(h),p={};if(r&&r.length)for(i=0;i<r.length;i++)void 0===(a=(n=l.nestedProperty(f,r[i])).get())?l.nestedProperty(p,r[i]).set(null):(n.set(null),l.nestedProperty(p,r[i]).set(a));if(t=l.extendDeepNoArrays(t||{},f),r&&r.length)for(i=0;i<r.length;i++)if(c=l.nestedProperty(p,r[i]).get()){for(u=(s=l.nestedProperty(t,r[i])).get(),Array.isArray(u)||(u=[],s.set(u)),o=0;o<c.length;o++){var d=c[o];u[o]=null===d?null:y.extendObjectWithContainers(u[o],d)}s.set(u)}return t},y.dataArrayContainers=["transforms","dimensions"],y.layoutArrayContainers=i.layoutArrayContainers,y.extendTrace=function(t,e){return y.extendObjectWithContainers(t,e,y.dataArrayContainers)},y.extendLayout=function(t,e){return y.extendObjectWithContainers(t,e,y.layoutArrayContainers)},y.transition=function(t,e,r,n,a,i){var o={redraw:a.redraw},s={},c=[];return o.prepareFn=function(){for(var a=Array.isArray(e)?e.length:0,i=n.slice(0,a),o=0;o<i.length;o++){var u=i[o],h=t._fullData[u]._module;if(h){if(h.animatable){var f=h.basePlotModule.name;s[f]||(s[f]=[]),s[f].push(u)}t.data[i[o]]=y.extendTrace(t.data[i[o]],e[o])}}var p=l.expandObjectPaths(l.extendDeepNoArrays({},r)),d=/^[xy]axis[0-9]*$/;for(var g in p)d.test(g)&&delete p[g].range;y.extendLayout(t.layout,p),delete t.calcdata,y.supplyDefaults(t),y.doCalcdata(t);var m=l.expandObjectPaths(r);if(m){var v=t._fullLayout._plots;for(var x in v){var b=v[x],_=b.xaxis,w=b.yaxis,T=_.range.slice(),k=w.range.slice(),A=null,M=null,S=null,E=null;Array.isArray(m[_._name+".range"])?A=m[_._name+".range"].slice():Array.isArray((m[_._name]||{}).range)&&(A=m[_._name].range.slice()),Array.isArray(m[w._name+".range"])?M=m[w._name+".range"].slice():Array.isArray((m[w._name]||{}).range)&&(M=m[w._name].range.slice()),T&&A&&(_.r2l(T[0])!==_.r2l(A[0])||_.r2l(T[1])!==_.r2l(A[1]))&&(S={xr0:T,xr1:A}),k&&M&&(w.r2l(k[0])!==w.r2l(M[0])||w.r2l(k[1])!==w.r2l(M[1]))&&(E={yr0:k,yr1:M}),(S||E)&&c.push(l.extendFlat({plotinfo:b},S,E))}}return Promise.resolve()},o.runFn=function(e){var n,a,o=t._fullLayout._basePlotModules,u=c.length;if(r)for(a=0;a<o.length;a++)o[a].transitionAxes&&o[a].transitionAxes(t,c,i,e);for(var h in u?((n=l.extendFlat({},i)).duration=0,delete s.cartesian):n=i,s){var f=s[h];t._fullData[f[0]]._module.basePlotModule.plot(t,f,n,e)}},L(t,i,o)},y.transitionFromReact=function(t,e,r,n){var a=t._fullLayout,i=a.transition,o={},s=[];return o.prepareFn=function(){var t=a._plots;for(var i in o.redraw=!1,"some"===e.anim&&(o.redraw=!0),"some"===r.anim&&(o.redraw=!0),t){var c=t[i],u=c.xaxis,h=c.yaxis,f=n[u._name].range.slice(),p=n[h._name].range.slice(),d=u.range.slice(),g=h.range.slice();u.setScale(),h.setScale();var m=null,v=null;u.r2l(f[0])===u.r2l(d[0])&&u.r2l(f[1])===u.r2l(d[1])||(m={xr0:f,xr1:d}),h.r2l(p[0])===h.r2l(g[0])&&h.r2l(p[1])===h.r2l(g[1])||(v={yr0:p,yr1:g}),(m||v)&&s.push(l.extendFlat({plotinfo:c},m,v))}return Promise.resolve()},o.runFn=function(r){for(var n,a,o,c=t._fullData,u=t._fullLayout._basePlotModules,h=[],f=0;f<c.length;f++)h.push(f);function p(){for(var e=0;e<u.length;e++)u[e].transitionAxes&&u[e].transitionAxes(t,s,n,r)}function d(){for(var e=0;e<u.length;e++)u[e].plot(t,o,a,r)}s.length&&e.anim?"traces first"===i.ordering?(n=l.extendFlat({},i,{duration:0}),o=h,a=i,setTimeout(p,i.duration),d()):(n=i,o=null,a=l.extendFlat({},i,{duration:0}),setTimeout(d,n.duration),p()):s.length?(n=i,p()):e.anim&&(o=h,a=i,d())},L(t,i,o)},y.doCalcdata=function(t,e){var r,n,a,s,c=h.list(t),f=t._fullData,p=t._fullLayout,d=new Array(f.length),g=(t.calcdata||[]).slice();for(t.calcdata=d,p._numBoxes=0,p._numViolins=0,p._violinScaleGroupStats={},t._hmpixcount=0,t._hmlumcount=0,p._piecolormap={},p._sunburstcolormap={},p._treemapcolormap={},p._funnelareacolormap={},a=0;a<f.length;a++)Array.isArray(e)&&-1===e.indexOf(a)&&(d[a]=g[a]);for(a=0;a<f.length;a++)(r=f[a])._arrayAttrs=o.findArrayAttributes(r),r._extremes={};var m=p._subplots.polar||[];for(a=0;a<m.length;a++)c.push(p[m[a]].radialaxis,p[m[a]].angularaxis);for(var v in p._colorAxes){var y=p[v];!1!==y.cauto&&(delete y.cmin,delete y.cmax)}var b=!1;function _(e){if(r=f[e],n=r._module,!0===r.visible&&r.transforms){if(n&&n.calc){var a=n.calc(t,r);a[0]&&a[0].t&&a[0].t._scene&&delete a[0].t._scene.dirty}for(s=0;s<r.transforms.length;s++){var i=r.transforms[s];(n=x[i.type])&&n.calcTransform&&(r._hasCalcTransform=!0,b=!0,n.calcTransform(t,r,i))}}}function w(e,a){if(r=f[e],!!(n=r._module).isContainer===a){var i=[];if(!0===r.visible&&0!==r._length){delete r._indexToPoints;var o=r.transforms||[];for(s=o.length-1;s>=0;s--)if(o[s].enabled){r._indexToPoints=o[s]._indexToPoints;break}n&&n.calc&&(i=n.calc(t,r))}Array.isArray(i)&&i[0]||(i=[{x:u,y:u}]),i[0].t||(i[0].t={}),i[0].trace=r,d[e]=i}}for(I(c,f,p),a=0;a<f.length;a++)w(a,!0);for(a=0;a<f.length;a++)_(a);for(b&&I(c,f,p),a=0;a<f.length;a++)w(a,!0);for(a=0;a<f.length;a++)w(a,!1);z(t);var T=function(t,e){var r,n,a,o,s,c=[];function u(t,r,n){var a=r._id.charAt(0);if("histogram2dcontour"===t){var i=r._counterAxes[0],o=h.getFromId(e,i),s="x"===a||"x"===i&&"category"===o.type,l="y"===a||"y"===i&&"category"===o.type;return function(t,e){return 0===t||0===e||s&&t===n[e].length-1||l&&e===n.length-1?-1:("y"===a?e:t)-1}}return function(t,e){return"y"===a?e:t}}var f={min:function(t){return l.aggNums(Math.min,null,t)},max:function(t){return l.aggNums(Math.max,null,t)},sum:function(t){return l.aggNums((function(t,e){return t+e}),null,t)},total:function(t){return l.aggNums((function(t,e){return t+e}),null,t)},mean:function(t){return l.mean(t)},median:function(t){return l.median(t)}};for(r=0;r<t.length;r++){var p=t[r];if("category"===p.type){var d=p.categoryorder.match(P);if(d){var g=d[1],m=d[2],v=[];for(n=0;n<p._categories.length;n++)v.push([p._categories[n],[]]);for(n=0;n<p._traceIndices.length;n++){var y=p._traceIndices[n],x=e._fullData[y],b=p._id.charAt(0);if(!0===x.visible){var _=x.type;i.traceIs(x,"histogram")&&(delete x._xautoBinFinished,delete x._yautoBinFinished);var w=e.calcdata[y];for(a=0;a<w.length;a++){var T,k,A,M=w[a];if("splom"===_){var S=x._axesDim[p._id];if("y"===b){var E=x._diag[S][0];E&&(p=e._fullLayout[h.id2name(E)])}var C=M.trace.dimensions[S].values;for(o=0;o<C.length;o++)for(T=C[o],k=p._categoriesMap[T],s=0;s<M.trace.dimensions.length;s++)if(s!==S){var L=M.trace.dimensions[s];v[k][1].push(L.values[o])}}else if("scattergl"===_){for(o=0;o<M.t.x.length;o++)"x"===b&&(T=M.t.x[o],k=T,A=M.t.y[o]),"y"===b&&(T=M.t.y[o],k=T,A=M.t.x[o]),v[k][1].push(A);M.t&&M.t._scene&&delete M.t._scene.dirty}else if(M.hasOwnProperty("z")){A=M.z;var I=u(x.type,p,A);for(o=0;o<A.length;o++)for(s=0;s<A[o].length;s++)(k=I(s,o))+1&&v[k][1].push(A[o][s])}else for("x"===b?(T=M.p+1?M.p:M.x,A=M.s||M.v||M.y):"y"===b&&(T=M.p+1?M.p:M.y,A=M.s||M.v||M.x),Array.isArray(A)||(A=[A]),o=0;o<A.length;o++)v[T][1].push(A[o])}}}p._categoriesValue=v;var z=[];for(n=0;n<v.length;n++)z.push([v[n][0],f[g](v[n][1])]);z.sort((function(t,e){return t[1]-e[1]})),p._categoriesAggregatedValue=z,p._initialCategories=z.map((function(t){return t[0]})),"descending"===m&&p._initialCategories.reverse(),c=c.concat(p.sortByInitialCategories())}}}return c}(c,t);if(T.length){for(p._numBoxes=0,p._numViolins=0,a=0;a<T.length;a++)w(T[a],!0);for(a=0;a<T.length;a++)w(T[a],!1);z(t)}i.getComponentMethod("fx","calc")(t),i.getComponentMethod("errorbars","calc")(t)};var P=/(total|sum|min|max|mean|median) (ascending|descending)/;function I(t,e,r){var n,a,i,o={};for(n=0;n<t.length;n++)i=(a=t[n])._id,a.clearCalc(),"multicategory"===a.type&&a.setupMultiCategory(e),o[a._id]=1;var s=r._axisMatchGroups||[];for(n=0;n<s.length;n++)for(i in s[n])o[i]||(a=r[h.id2name(i)]).clearCalc()}function z(t){var e,r,n,a=t._fullLayout,i=a._visibleModules,o={};for(r=0;r<i.length;r++){var s=i[r],c=s.crossTraceCalc;if(c){var u=s.basePlotModule.name;o[u]?l.pushUnique(o[u],c):o[u]=[c]}}for(n in o){var h=o[n],f=a._subplots[n];if(Array.isArray(f))for(e=0;e<f.length;e++){var p=f[e],d="cartesian"===n?a._plots[p]:a[p];for(r=0;r<h.length;r++)h[r](t,d,p)}else for(r=0;r<h.length;r++)h[r](t)}}y.rehover=function(t){t._fullLayout._rehover&&t._fullLayout._rehover()},y.redrag=function(t){t._fullLayout._redrag&&t._fullLayout._redrag()},y.generalUpdatePerTraceModule=function(t,e,r,n){var a,i=e.traceHash,o={};for(a=0;a<r.length;a++){var s=r[a],c=s[0].trace;c.visible&&(o[c.type]=o[c.type]||[],o[c.type].push(s))}for(var u in i)if(!o[u]){var h=i[u][0];h[0].trace.visible=!1,o[u]=[h]}for(var f in o){var p=o[f];p[0][0].trace._module.plot(t,e,l.filterVisible(p),n)}e.traceHash=o},y.plotBasePlot=function(t,e,r,n,a){var o=i.getModule(t),s=g(e.calcdata,o)[0];o.plot(e,s,n,a)},y.cleanBasePlot=function(t,e,r,n,a){var i=a._has&&a._has(t),o=r._has&&r._has(t);i&&!o&&a["_"+t+"layer"].selectAll("g.trace").remove()}},{"../components/color":595,"../constants/numerical":704,"../lib":728,"../plot_api/plot_schema":765,"../plot_api/plot_template":766,"../plots/get_data":813,"../registry":859,"./animation_attributes":771,"./attributes":773,"./cartesian/axis_ids":779,"./cartesian/handle_outline":786,"./command":802,"./font_attributes":804,"./frame_attributes":805,"./layout_attributes":830,d3:164,"fast-isnumeric":236}],840:[function(t,e,r){"use strict";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}},{}],841:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../lib/polygon").tester,i=n.findIndexOfMin,o=n.isAngleInsideSector,s=n.angleDelta,l=n.angleDist;function c(t,e,r,n){var a,i,o=n[0],s=n[1],l=h(Math.sin(e)-Math.sin(t)),c=h(Math.cos(e)-Math.cos(t)),u=Math.tan(r),f=h(1/u),p=l/c,d=s-p*o;return f?l&&c?i=u*(a=d/(u-p)):c?(a=s*f,i=s):(a=o,i=o*u):l&&c?(a=0,i=d):c?(a=0,i=s):a=i=NaN,[a,i]}function u(t,e,r,a){return n.isFullCircle([e,r])?function(t,e){var r,n=e.length,a=new Array(n+1);for(r=0;r<n;r++){var i=e[r];a[r]=[t*Math.cos(i),t*Math.sin(i)]}return a[r]=a[0].slice(),a}(t,a):function(t,e,r,a){var s,u,h=a.length,f=[];function p(e){return[t*Math.cos(e),t*Math.sin(e)]}function d(t,e,r){return c(t,e,r,p(t))}function g(t){return n.mod(t,h)}function m(t){return o(t,[e,r])}var v=i(a,(function(t){return m(t)?l(t,e):1/0})),y=d(a[v],a[g(v-1)],e);for(f.push(y),s=v,u=0;u<h;s++,u++){var x=a[g(s)];if(!m(x))break;f.push(p(x))}var b=i(a,(function(t){return m(t)?l(t,r):1/0})),_=d(a[b],a[g(b+1)],r);return f.push(_),f.push([0,0]),f.push(f[0].slice()),f}(t,e,r,a)}function h(t){return Math.abs(t)>1e-10?t:0}function f(t,e,r){e=e||0,r=r||0;for(var n=t.length,a=new Array(n),i=0;i<n;i++){var o=t[i];a[i]=[e+o[0],r-o[1]]}return a}e.exports={isPtInsidePolygon:function(t,e,r,n,i){if(!o(e,n))return!1;var s,l;r[0]<r[1]?(s=r[0],l=r[1]):(s=r[1],l=r[0]);var c=a(u(s,n[0],n[1],i)),h=a(u(l,n[0],n[1],i)),f=[t*Math.cos(e),t*Math.sin(e)];return h.contains(f)&&!c.contains(f)},findPolygonOffset:function(t,e,r,n){for(var a=1/0,i=1/0,o=u(t,e,r,n),s=0;s<o.length;s++){var l=o[s];a=Math.min(a,l[0]),i=Math.min(i,-l[1])}return[a,i]},findEnclosingVertexAngles:function(t,e){var r=i(e,(function(e){var r=s(e,t);return r>0?r:1/0})),a=n.mod(r+1,e.length);return[e[r],e[a]]},findIntersectionXY:c,findXYatLength:function(t,e,r,n){var a=-e*r,i=e*e+1,o=2*(e*a-r),s=a*a+r*r-t*t,l=Math.sqrt(o*o-4*i*s),c=(-o+l)/(2*i),u=(-o-l)/(2*i);return[[c,e*c+a+n],[u,e*u+a+n]]},clampTiny:h,pathPolygon:function(t,e,r,n,a,i){return"M"+f(u(t,e,r,n),a,i).join("L")},pathPolygonAnnulus:function(t,e,r,n,a,i,o){var s,l;t<e?(s=t,l=e):(s=e,l=t);var c=f(u(s,r,n,a),i,o);return"M"+f(u(l,r,n,a),i,o).reverse().join("L")+"M"+c.join("L")}}},{"../../lib":728,"../../lib/polygon":740}],842:[function(t,e,r){"use strict";var n=t("../get_data").getSubplotCalcData,a=t("../../lib").counterRegex,i=t("./polar"),o=t("./constants"),s=o.attr,l=o.name,c=a(l),u={};u[s]={valType:"subplotid",dflt:l,editType:"calc"},e.exports={attr:s,name:l,idRoot:l,idRegex:c,attrRegex:c,attributes:u,layoutAttributes:t("./layout_attributes"),supplyLayoutDefaults:t("./layout_defaults"),plot:function(t){for(var e=t._fullLayout,r=t.calcdata,a=e._subplots[l],o=0;o<a.length;o++){var s=a[o],c=n(r,l,s),u=e[s]._subplot;u||(u=i(t,s),e[s]._subplot=u),u.plot(c,e,t._promises)}},clean:function(t,e,r,n){for(var a=n._subplots[l]||[],i=n._has&&n._has("gl"),o=e._has&&e._has("gl"),s=i&&!o,c=0;c<a.length;c++){var u=a[c],h=n[u]._subplot;if(!e[u]&&h)for(var f in h.framework.remove(),h.layers["radial-axis-title"].remove(),h.clipPaths)h.clipPaths[f].remove();s&&h._scene&&(h._scene.destroy(),h._scene=null)}},toSVG:t("../cartesian").toSVG}},{"../../lib":728,"../cartesian":789,"../get_data":813,"./constants":840,"./layout_attributes":843,"./layout_defaults":844,"./polar":851}],843:[function(t,e,r){"use strict";var n=t("../../components/color/attributes"),a=t("../cartesian/layout_attributes"),i=t("../domain").attributes,o=t("../../lib").extendFlat,s=t("../../plot_api/edit_types").overrideAll,l=s({color:a.color,showline:o({},a.showline,{dflt:!0}),linecolor:a.linecolor,linewidth:a.linewidth,showgrid:o({},a.showgrid,{dflt:!0}),gridcolor:a.gridcolor,gridwidth:a.gridwidth},"plot","from-root"),c=s({tickmode:a.tickmode,nticks:a.nticks,tick0:a.tick0,dtick:a.dtick,tickvals:a.tickvals,ticktext:a.ticktext,ticks:a.ticks,ticklen:a.ticklen,tickwidth:a.tickwidth,tickcolor:a.tickcolor,showticklabels:a.showticklabels,showtickprefix:a.showtickprefix,tickprefix:a.tickprefix,showticksuffix:a.showticksuffix,ticksuffix:a.ticksuffix,showexponent:a.showexponent,exponentformat:a.exponentformat,separatethousands:a.separatethousands,tickfont:a.tickfont,tickangle:a.tickangle,tickformat:a.tickformat,tickformatstops:a.tickformatstops,layer:a.layer},"plot","from-root"),u={visible:o({},a.visible,{dflt:!0}),type:o({},a.type,{values:["-","linear","log","date","category"]}),autorange:o({},a.autorange,{editType:"plot"}),rangemode:{valType:"enumerated",values:["tozero","nonnegative","normal"],dflt:"tozero",editType:"calc"},range:o({},a.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],editType:"plot"}),categoryorder:a.categoryorder,categoryarray:a.categoryarray,angle:{valType:"angle",editType:"plot"},side:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"clockwise",editType:"plot"},title:{text:o({},a.title.text,{editType:"plot",dflt:""}),font:o({},a.title.font,{editType:"plot"}),editType:"plot"},hoverformat:a.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc",_deprecated:{title:a._deprecated.title,titlefont:a._deprecated.titlefont}};o(u,l,c);var h={visible:o({},a.visible,{dflt:!0}),type:{valType:"enumerated",values:["-","linear","category"],dflt:"-",editType:"calc",_noTemplating:!0},categoryorder:a.categoryorder,categoryarray:a.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:a.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc"};o(h,l,c),e.exports={domain:i({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:n.background},radialaxis:u,angularaxis:h,gridshape:{valType:"enumerated",values:["circular","linear"],dflt:"circular",editType:"plot"},uirevision:{valType:"any",editType:"none"},editType:"calc"}},{"../../components/color/attributes":594,"../../lib":728,"../../plot_api/edit_types":759,"../cartesian/layout_attributes":790,"../domain":803}],844:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../components/color"),i=t("../../plot_api/plot_template"),o=t("../subplot_defaults"),s=t("../get_data").getSubplotData,l=t("../cartesian/tick_value_defaults"),c=t("../cartesian/tick_mark_defaults"),u=t("../cartesian/tick_label_defaults"),h=t("../cartesian/category_order_defaults"),f=t("../cartesian/line_grid_defaults"),p=t("../cartesian/axis_autotype"),d=t("./layout_attributes"),g=t("./set_convert"),m=t("./constants"),v=m.axisNames;function y(t,e,r,o){var p=r("bgcolor");o.bgColor=a.combine(p,o.paper_bgcolor);var y=r("sector");r("hole");var b,_=s(o.fullData,m.name,o.id),w=o.layoutOut;function T(t,e){return r(b+"."+t,e)}for(var k=0;k<v.length;k++){b=v[k],n.isPlainObject(t[b])||(t[b]={});var A=t[b],M=i.newContainer(e,b);M._id=M._name=b,M._attr=o.id+"."+b,M._traceIndices=_.map((function(t){return t._expandedIndex}));var S=m.axisName2dataArray[b],E=x(A,M,T,_,S);h(A,M,T,{axData:_,dataAttr:S});var C,L,P=T("visible");switch(g(M,e,w),T("uirevision",e.uirevision),P&&(L=(C=T("color"))===A.color?C:o.font.color),M._m=1,b){case"radialaxis":var I=T("autorange",!M.isValidRange(A.range));A.autorange=I,!I||"linear"!==E&&"-"!==E||T("rangemode"),"reversed"===I&&(M._m=-1),T("range"),M.cleanRange("range",{dfltRange:[0,1]}),P&&(T("side"),T("angle",y[0]),T("title.text"),n.coerceFont(T,"title.font",{family:o.font.family,size:Math.round(1.2*o.font.size),color:L}));break;case"angularaxis":if("date"===E){n.log("Polar plots do not support date angular axes yet.");for(var z=0;z<_.length;z++)_[z].visible=!1;E=A.type=M.type="linear"}T("linear"===E?"thetaunit":"period");var O=T("direction");T("rotation",{counterclockwise:0,clockwise:90}[O])}if(P)l(A,M,T,M.type),u(A,M,T,M.type,{tickSuffixDflt:"degrees"===M.thetaunit?"\xb0":void 0}),c(A,M,T,{outerTicks:!0}),T("showticklabels")&&(n.coerceFont(T,"tickfont",{family:o.font.family,size:o.font.size,color:L}),T("tickangle"),T("tickformat")),f(A,M,T,{dfltColor:C,bgColor:o.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:d[b]}),T("layer");"category"!==E&&T("hoverformat"),M._input=A}"category"===e.angularaxis.type&&r("gridshape")}function x(t,e,r,n,a){if("-"===r("type")){for(var i,o=0;o<n.length;o++)if(n[o].visible){i=n[o];break}i&&i[a]&&(e.type=p(i[a],"gregorian")),"-"===e.type?e.type="linear":t.type=e.type}return e.type}e.exports=function(t,e,r){o(t,e,r,{type:m.name,attributes:d,handleDefaults:y,font:e.font,paper_bgcolor:e.paper_bgcolor,fullData:r,layoutOut:e})}},{"../../components/color":595,"../../lib":728,"../../plot_api/plot_template":766,"../cartesian/axis_autotype":777,"../cartesian/category_order_defaults":780,"../cartesian/line_grid_defaults":792,"../cartesian/tick_label_defaults":797,"../cartesian/tick_mark_defaults":798,"../cartesian/tick_value_defaults":799,"../get_data":813,"../subplot_defaults":853,"./constants":840,"./layout_attributes":843,"./set_convert":852}],845:[function(t,e,r){"use strict";var n=t("../../../traces/scatter/attributes"),a=n.marker,i=t("../../../lib/extend").extendFlat;["Area traces are deprecated!","Please switch to the *barpolar* trace type."].join(" ");e.exports={r:i({},n.r,{}),t:i({},n.t,{}),marker:{color:i({},a.color,{}),size:i({},a.size,{}),symbol:i({},a.symbol,{}),opacity:i({},a.opacity,{}),editType:"calc"}}},{"../../../lib/extend":719,"../../../traces/scatter/attributes":1134}],846:[function(t,e,r){"use strict";var n=t("../../cartesian/layout_attributes"),a=t("../../../lib/extend").extendFlat,i=t("../../../plot_api/edit_types").overrideAll,o=["Legacy polar charts are deprecated!","Please switch to *polar* subplots."].join(" "),s=a({},n.domain,{});function l(t,e){return a({},e,{showline:{valType:"boolean"},showticklabels:{valType:"boolean"},tickorientation:{valType:"enumerated",values:["horizontal","vertical"]},ticklen:{valType:"number",min:0},tickcolor:{valType:"color"},ticksuffix:{valType:"string"},endpadding:{valType:"number",description:o},visible:{valType:"boolean"}})}e.exports=i({radialaxis:l(0,{range:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},domain:s,orientation:{valType:"number"}}),angularaxis:l(0,{range:{valType:"info_array",items:[{valType:"number",dflt:0},{valType:"number",dflt:360}]},domain:s}),layout:{direction:{valType:"enumerated",values:["clockwise","counterclockwise"]},orientation:{valType:"angle"}}},"plot","nested")},{"../../../lib/extend":719,"../../../plot_api/edit_types":759,"../../cartesian/layout_attributes":790}],847:[function(t,e,r){"use strict";(e.exports=t("./micropolar")).manager=t("./micropolar_manager")},{"./micropolar":848,"./micropolar_manager":849}],848:[function(t,e,r){var n=t("d3"),a=t("../../../lib").extendDeepAll,i=t("../../../constants/alignment").MID_SHIFT,o=e.exports={version:"0.2.2"};o.Axis=function(){var t,e,r,s,l={data:[],layout:{}},c={},u={},h=n.dispatch("hover"),f={};return f.render=function(c){return function(c){e=c||e;var h=l.data,f=l.layout;("string"==typeof e||e.nodeName)&&(e=n.select(e)),e.datum(h).each((function(e,l){var c=e.slice();u={data:o.util.cloneJson(c),layout:o.util.cloneJson(f)};var h=0;c.forEach((function(t,e){t.color||(t.color=f.defaultColorRange[h],h=(h+1)%f.defaultColorRange.length),t.strokeColor||(t.strokeColor="LinePlot"===t.geometry?t.color:n.rgb(t.color).darker().toString()),u.data[e].color=t.color,u.data[e].strokeColor=t.strokeColor,u.data[e].strokeDash=t.strokeDash,u.data[e].strokeSize=t.strokeSize}));var p=c.filter((function(t,e){var r=t.visible;return"undefined"==typeof r||!0===r})),d=!1,g=p.map((function(t,e){return d=d||"undefined"!=typeof t.groupId,t}));if(d){var m=n.nest().key((function(t,e){return"undefined"!=typeof t.groupId?t.groupId:"unstacked"})).entries(g),v=[],y=m.map((function(t,e){if("unstacked"===t.key)return t.values;var r=t.values[0].r.map((function(t,e){return 0}));return t.values.forEach((function(t,e,n){t.yStack=[r],v.push(r),r=o.util.sumArrays(t.r,r)})),t.values}));p=n.merge(y)}p.forEach((function(t,e){t.t=Array.isArray(t.t[0])?t.t:[t.t],t.r=Array.isArray(t.r[0])?t.r:[t.r]}));var x=Math.min(f.width-f.margin.left-f.margin.right,f.height-f.margin.top-f.margin.bottom)/2;x=Math.max(10,x);var b,_=[f.margin.left+x,f.margin.top+x];d?b=[0,n.max(o.util.sumArrays(o.util.arrayLast(p).r[0],o.util.arrayLast(v)))]:b=n.extent(o.util.flattenArray(p.map((function(t,e){return t.r}))));f.radialAxis.domain!=o.DATAEXTENT&&(b[0]=0),r=n.scale.linear().domain(f.radialAxis.domain!=o.DATAEXTENT&&f.radialAxis.domain?f.radialAxis.domain:b).range([0,x]),u.layout.radialAxis.domain=r.domain();var w,T=o.util.flattenArray(p.map((function(t,e){return t.t}))),k="string"==typeof T[0];k&&(T=o.util.deduplicate(T),w=T.slice(),T=n.range(T.length),p=p.map((function(t,e){var r=t;return t.t=[T],d&&(r.yStack=t.yStack),r})));var A=p.filter((function(t,e){return"LinePlot"===t.geometry||"DotPlot"===t.geometry})).length===p.length,M=null===f.needsEndSpacing?k||!A:f.needsEndSpacing,S=f.angularAxis.domain&&f.angularAxis.domain!=o.DATAEXTENT&&!k&&f.angularAxis.domain[0]>=0?f.angularAxis.domain:n.extent(T),E=Math.abs(T[1]-T[0]);A&&!k&&(E=0);var C=S.slice();M&&k&&(C[1]+=E);var L=f.angularAxis.ticksCount||4;L>8&&(L=L/(L/8)+L%8),f.angularAxis.ticksStep&&(L=(C[1]-C[0])/L);var P=f.angularAxis.ticksStep||(C[1]-C[0])/(L*(f.minorTicks+1));w&&(P=Math.max(Math.round(P),1)),C[2]||(C[2]=P);var I=n.range.apply(this,C);if(I=I.map((function(t,e){return parseFloat(t.toPrecision(12))})),s=n.scale.linear().domain(C.slice(0,2)).range("clockwise"===f.direction?[0,360]:[360,0]),u.layout.angularAxis.domain=s.domain(),u.layout.angularAxis.endPadding=M?E:0,"undefined"==typeof(t=n.select(this).select("svg.chart-root"))||t.empty()){var z=(new DOMParser).parseFromString("<svg xmlns='http://www.w3.org/2000/svg' class='chart-root'>' + '<g class='outer-group'>' + '<g class='chart-group'>' + '<circle class='background-circle'></circle>' + '<g class='geometry-group'></g>' + '<g class='radial axis-group'>' + '<circle class='outside-circle'></circle>' + '</g>' + '<g class='angular axis-group'></g>' + '<g class='guides-group'><line></line><circle r='0'></circle></g>' + '</g>' + '<g class='legend-group'></g>' + '<g class='tooltips-group'></g>' + '<g class='title-group'><text></text></g>' + '</g>' + '</svg>","application/xml"),O=this.appendChild(this.ownerDocument.importNode(z.documentElement,!0));t=n.select(O)}t.select(".guides-group").style({"pointer-events":"none"}),t.select(".angular.axis-group").style({"pointer-events":"none"}),t.select(".radial.axis-group").style({"pointer-events":"none"});var D,R=t.select(".chart-group"),F={fill:"none",stroke:f.tickColor},B={"font-size":f.font.size,"font-family":f.font.family,fill:f.font.color,"text-shadow":["-1px 0px","1px -1px","-1px 1px","1px 1px"].map((function(t,e){return" "+t+" 0 "+f.font.outlineColor})).join(",")};if(f.showLegend){D=t.select(".legend-group").attr({transform:"translate("+[x,f.margin.top]+")"}).style({display:"block"});var N=p.map((function(t,e){var r=o.util.cloneJson(t);return r.symbol="DotPlot"===t.geometry?t.dotType||"circle":"LinePlot"!=t.geometry?"square":"line",r.visibleInLegend="undefined"==typeof t.visibleInLegend||t.visibleInLegend,r.color="LinePlot"===t.geometry?t.strokeColor:t.color,r}));o.Legend().config({data:p.map((function(t,e){return t.name||"Element"+e})),legendConfig:a({},o.Legend.defaultConfig().legendConfig,{container:D,elements:N,reverseOrder:f.legend.reverseOrder})})();var j=D.node().getBBox();x=Math.min(f.width-j.width-f.margin.left-f.margin.right,f.height-f.margin.top-f.margin.bottom)/2,x=Math.max(10,x),_=[f.margin.left+x,f.margin.top+x],r.range([0,x]),u.layout.radialAxis.domain=r.domain(),D.attr("transform","translate("+[_[0]+x,_[1]-x]+")")}else D=t.select(".legend-group").style({display:"none"});t.attr({width:f.width,height:f.height}).style({opacity:f.opacity}),R.attr("transform","translate("+_+")").style({cursor:"crosshair"});var V=[(f.width-(f.margin.left+f.margin.right+2*x+(j?j.width:0)))/2,(f.height-(f.margin.top+f.margin.bottom+2*x))/2];if(V[0]=Math.max(0,V[0]),V[1]=Math.max(0,V[1]),t.select(".outer-group").attr("transform","translate("+V+")"),f.title&&f.title.text){var U=t.select("g.title-group text").style(B).text(f.title.text),q=U.node().getBBox();U.attr({x:_[0]-q.width/2,y:_[1]-x-20})}var H=t.select(".radial.axis-group");if(f.radialAxis.gridLinesVisible){var G=H.selectAll("circle.grid-circle").data(r.ticks(5));G.enter().append("circle").attr({class:"grid-circle"}).style(F),G.attr("r",r),G.exit().remove()}H.select("circle.outside-circle").attr({r:x}).style(F);var Y=t.select("circle.background-circle").attr({r:x}).style({fill:f.backgroundColor,stroke:f.stroke});function W(t,e){return s(t)%360+f.orientation}if(f.radialAxis.visible){var Z=n.svg.axis().scale(r).ticks(5).tickSize(5);H.call(Z).attr({transform:"rotate("+f.radialAxis.orientation+")"}),H.selectAll(".domain").style(F),H.selectAll("g>text").text((function(t,e){return this.textContent+f.radialAxis.ticksSuffix})).style(B).style({"text-anchor":"start"}).attr({x:0,y:0,dx:0,dy:0,transform:function(t,e){return"horizontal"===f.radialAxis.tickOrientation?"rotate("+-f.radialAxis.orientation+") translate("+[0,B["font-size"]]+")":"translate("+[0,B["font-size"]]+")"}}),H.selectAll("g>line").style({stroke:"black"})}var X=t.select(".angular.axis-group").selectAll("g.angular-tick").data(I),J=X.enter().append("g").classed("angular-tick",!0);X.attr({transform:function(t,e){return"rotate("+W(t)+")"}}).style({display:f.angularAxis.visible?"block":"none"}),X.exit().remove(),J.append("line").classed("grid-line",!0).classed("major",(function(t,e){return e%(f.minorTicks+1)==0})).classed("minor",(function(t,e){return!(e%(f.minorTicks+1)==0)})).style(F),J.selectAll(".minor").style({stroke:f.minorTickColor}),X.select("line.grid-line").attr({x1:f.tickLength?x-f.tickLength:0,x2:x}).style({display:f.angularAxis.gridLinesVisible?"block":"none"}),J.append("text").classed("axis-text",!0).style(B);var K=X.select("text.axis-text").attr({x:x+f.labelOffset,dy:i+"em",transform:function(t,e){var r=W(t),n=x+f.labelOffset,a=f.angularAxis.tickOrientation;return"horizontal"==a?"rotate("+-r+" "+n+" 0)":"radial"==a?r<270&&r>90?"rotate(180 "+n+" 0)":null:"rotate("+(r<=180&&r>0?-90:90)+" "+n+" 0)"}}).style({"text-anchor":"middle",display:f.angularAxis.labelsVisible?"block":"none"}).text((function(t,e){return e%(f.minorTicks+1)!=0?"":w?w[t]+f.angularAxis.ticksSuffix:t+f.angularAxis.ticksSuffix})).style(B);f.angularAxis.rewriteTicks&&K.text((function(t,e){return e%(f.minorTicks+1)!=0?"":f.angularAxis.rewriteTicks(this.textContent,e)}));var Q=n.max(R.selectAll(".angular-tick text")[0].map((function(t,e){return t.getCTM().e+t.getBBox().width})));D.attr({transform:"translate("+[x+Q,f.margin.top]+")"});var $=t.select("g.geometry-group").selectAll("g").size()>0,tt=t.select("g.geometry-group").selectAll("g.geometry").data(p);if(tt.enter().append("g").attr({class:function(t,e){return"geometry geometry"+e}}),tt.exit().remove(),p[0]||$){var et=[];p.forEach((function(t,e){var n={};n.radialScale=r,n.angularScale=s,n.container=tt.filter((function(t,r){return r==e})),n.geometry=t.geometry,n.orientation=f.orientation,n.direction=f.direction,n.index=e,et.push({data:t,geometryConfig:n})}));var rt=n.nest().key((function(t,e){return"undefined"!=typeof t.data.groupId||"unstacked"})).entries(et),nt=[];rt.forEach((function(t,e){"unstacked"===t.key?nt=nt.concat(t.values.map((function(t,e){return[t]}))):nt.push(t.values)})),nt.forEach((function(t,e){var r;r=Array.isArray(t)?t[0].geometryConfig.geometry:t.geometryConfig.geometry;var n=t.map((function(t,e){return a(o[r].defaultConfig(),t)}));o[r]().config(n)()}))}var at,it,ot=t.select(".guides-group"),st=t.select(".tooltips-group"),lt=o.tooltipPanel().config({container:st,fontSize:8})(),ct=o.tooltipPanel().config({container:st,fontSize:8})(),ut=o.tooltipPanel().config({container:st,hasTick:!0})();if(!k){var ht=ot.select("line").attr({x1:0,y1:0,y2:0}).style({stroke:"grey","pointer-events":"none"});R.on("mousemove.angular-guide",(function(t,e){var r=o.util.getMousePos(Y).angle;ht.attr({x2:-x,transform:"rotate("+r+")"}).style({opacity:.5});var n=(r+180+360-f.orientation)%360;at=s.invert(n);var a=o.util.convertToCartesian(x+12,r+180);lt.text(o.util.round(at)).move([a[0]+_[0],a[1]+_[1]])})).on("mouseout.angular-guide",(function(t,e){ot.select("line").style({opacity:0})}))}var ft=ot.select("circle").style({stroke:"grey",fill:"none"});R.on("mousemove.radial-guide",(function(t,e){var n=o.util.getMousePos(Y).radius;ft.attr({r:n}).style({opacity:.5}),it=r.invert(o.util.getMousePos(Y).radius);var a=o.util.convertToCartesian(n,f.radialAxis.orientation);ct.text(o.util.round(it)).move([a[0]+_[0],a[1]+_[1]])})).on("mouseout.radial-guide",(function(t,e){ft.style({opacity:0}),ut.hide(),lt.hide(),ct.hide()})),t.selectAll(".geometry-group .mark").on("mouseover.tooltip",(function(e,r){var a=n.select(this),i=this.style.fill,s="black",l=this.style.opacity||1;if(a.attr({"data-opacity":l}),i&&"none"!==i){a.attr({"data-fill":i}),s=n.hsl(i).darker().toString(),a.style({fill:s,opacity:1});var c={t:o.util.round(e[0]),r:o.util.round(e[1])};k&&(c.t=w[e[0]]);var u="t: "+c.t+", r: "+c.r,h=this.getBoundingClientRect(),f=t.node().getBoundingClientRect(),p=[h.left+h.width/2-V[0]-f.left,h.top+h.height/2-V[1]-f.top];ut.config({color:s}).text(u),ut.move(p)}else i=this.style.stroke||"black",a.attr({"data-stroke":i}),s=n.hsl(i).darker().toString(),a.style({stroke:s,opacity:1})})).on("mousemove.tooltip",(function(t,e){if(0!=n.event.which)return!1;n.select(this).attr("data-fill")&&ut.show()})).on("mouseout.tooltip",(function(t,e){ut.hide();var r=n.select(this),a=r.attr("data-fill");a?r.style({fill:a,opacity:r.attr("data-opacity")}):r.style({stroke:r.attr("data-stroke"),opacity:r.attr("data-opacity")})}))}))}(c),this},f.config=function(t){if(!arguments.length)return l;var e=o.util.cloneJson(t);return e.data.forEach((function(t,e){l.data[e]||(l.data[e]={}),a(l.data[e],o.Axis.defaultConfig().data[0]),a(l.data[e],t)})),a(l.layout,o.Axis.defaultConfig().layout),a(l.layout,e.layout),this},f.getLiveConfig=function(){return u},f.getinputConfig=function(){return c},f.radialScale=function(t){return r},f.angularScale=function(t){return s},f.svg=function(){return t},n.rebind(f,h,"on"),f},o.Axis.defaultConfig=function(t,e){return{data:[{t:[1,2,3,4],r:[10,11,12,13],name:"Line1",geometry:"LinePlot",color:null,strokeDash:"solid",strokeColor:null,strokeSize:"1",visibleInLegend:!0,opacity:1}],layout:{defaultColorRange:n.scale.category10().range(),title:null,height:450,width:500,margin:{top:40,right:40,bottom:40,left:40},font:{size:12,color:"gray",outlineColor:"white",family:"Tahoma, sans-serif"},direction:"clockwise",orientation:0,labelOffset:10,radialAxis:{domain:null,orientation:-45,ticksSuffix:"",visible:!0,gridLinesVisible:!0,tickOrientation:"horizontal",rewriteTicks:null},angularAxis:{domain:[0,360],ticksSuffix:"",visible:!0,gridLinesVisible:!0,labelsVisible:!0,tickOrientation:"horizontal",rewriteTicks:null,ticksCount:null,ticksStep:null},minorTicks:0,tickLength:null,tickColor:"silver",minorTickColor:"#eee",backgroundColor:"none",needsEndSpacing:null,showLegend:!0,legend:{reverseOrder:!1},opacity:1}}},o.util={},o.DATAEXTENT="dataExtent",o.AREA="AreaChart",o.LINE="LinePlot",o.DOT="DotPlot",o.BAR="BarChart",o.util._override=function(t,e){for(var r in t)r in e&&(e[r]=t[r])},o.util._extend=function(t,e){for(var r in t)e[r]=t[r]},o.util._rndSnd=function(){return 2*Math.random()-1+(2*Math.random()-1)+(2*Math.random()-1)},o.util.dataFromEquation2=function(t,e){var r=e||6;return n.range(0,360+r,r).map((function(e,r){var n=e*Math.PI/180;return[e,t(n)]}))},o.util.dataFromEquation=function(t,e,r){var a=e||6,i=[],o=[];n.range(0,360+a,a).forEach((function(e,r){var n=e*Math.PI/180,a=t(n);i.push(e),o.push(a)}));var s={t:i,r:o};return r&&(s.name=r),s},o.util.ensureArray=function(t,e){if("undefined"==typeof t)return null;var r=[].concat(t);return n.range(e).map((function(t,e){return r[e]||r[0]}))},o.util.fillArrays=function(t,e,r){return e.forEach((function(e,n){t[e]=o.util.ensureArray(t[e],r)})),t},o.util.cloneJson=function(t){return JSON.parse(JSON.stringify(t))},o.util.validateKeys=function(t,e){"string"==typeof e&&(e=e.split("."));var r=e.shift();return t[r]&&(!e.length||objHasKeys(t[r],e))},o.util.sumArrays=function(t,e){return n.zip(t,e).map((function(t,e){return n.sum(t)}))},o.util.arrayLast=function(t){return t[t.length-1]},o.util.arrayEqual=function(t,e){for(var r=Math.max(t.length,e.length,1);r-- >=0&&t[r]===e[r];);return-2===r},o.util.flattenArray=function(t){for(var e=[];!o.util.arrayEqual(e,t);)e=t,t=[].concat.apply([],t);return t},o.util.deduplicate=function(t){return t.filter((function(t,e,r){return r.indexOf(t)==e}))},o.util.convertToCartesian=function(t,e){var r=e*Math.PI/180;return[t*Math.cos(r),t*Math.sin(r)]},o.util.round=function(t,e){var r=e||2,n=Math.pow(10,r);return Math.round(t*n)/n},o.util.getMousePos=function(t){var e=n.mouse(t.node()),r=e[0],a=e[1],i={};return i.x=r,i.y=a,i.pos=e,i.angle=180*(Math.atan2(a,r)+Math.PI)/Math.PI,i.radius=Math.sqrt(r*r+a*a),i},o.util.duplicatesCount=function(t){for(var e,r={},n={},a=0,i=t.length;a<i;a++)(e=t[a])in r?(r[e]++,n[e]=r[e]):r[e]=1;return n},o.util.duplicates=function(t){return Object.keys(o.util.duplicatesCount(t))},o.util.translator=function(t,e,r,n){if(n){var a=r.slice();r=e,e=a}var i=e.reduce((function(t,e){if("undefined"!=typeof t)return t[e]}),t);"undefined"!=typeof i&&(e.reduce((function(t,r,n){if("undefined"!=typeof t)return n===e.length-1&&delete t[r],t[r]}),t),r.reduce((function(t,e,n){return"undefined"==typeof t[e]&&(t[e]={}),n===r.length-1&&(t[e]=i),t[e]}),t))},o.PolyChart=function(){var t=[o.PolyChart.defaultConfig()],e=n.dispatch("hover"),r={solid:"none",dash:[5,2],dot:[2,5]};function i(){var e=t[0].geometryConfig,a=e.container;"string"==typeof a&&(a=n.select(a)),a.datum(t).each((function(t,a){var i=!!t[0].data.yStack,o=t.map((function(t,e){return i?n.zip(t.data.t[0],t.data.r[0],t.data.yStack[0]):n.zip(t.data.t[0],t.data.r[0])})),s=e.angularScale,l=e.radialScale.domain()[0],c={bar:function(r,a,i){var o=t[i].data,l=e.radialScale(r[1])-e.radialScale(0),c=e.radialScale(r[2]||0),u=o.barWidth;n.select(this).attr({class:"mark bar",d:"M"+[[l+c,-u/2],[l+c,u/2],[c,u/2],[c,-u/2]].join("L")+"Z",transform:function(t,r){return"rotate("+(e.orientation+s(t[0]))+")"}})}};c.dot=function(r,a,i){var o=r[2]?[r[0],r[1]+r[2]]:r,s=n.svg.symbol().size(t[i].data.dotSize).type(t[i].data.dotType)(r,a);n.select(this).attr({class:"mark dot",d:s,transform:function(t,r){var n,a,i,s=(n=function(t,r){var n=e.radialScale(t[1]),a=(e.angularScale(t[0])+e.orientation)*Math.PI/180;return{r:n,t:a}}(o),a=n.r*Math.cos(n.t),i=n.r*Math.sin(n.t),{x:a,y:i});return"translate("+[s.x,s.y]+")"}})};var u=n.svg.line.radial().interpolate(t[0].data.lineInterpolation).radius((function(t){return e.radialScale(t[1])})).angle((function(t){return e.angularScale(t[0])*Math.PI/180}));c.line=function(r,a,i){var s=r[2]?o[i].map((function(t,e){return[t[0],t[1]+t[2]]})):o[i];if(n.select(this).each(c.dot).style({opacity:function(e,r){return+t[i].data.dotVisible},fill:d.stroke(r,a,i)}).attr({class:"mark dot"}),!(a>0)){var l=n.select(this.parentNode).selectAll("path.line").data([0]);l.enter().insert("path"),l.attr({class:"line",d:u(s),transform:function(t,r){return"rotate("+(e.orientation+90)+")"},"pointer-events":"none"}).style({fill:function(t,e){return d.fill(r,a,i)},"fill-opacity":0,stroke:function(t,e){return d.stroke(r,a,i)},"stroke-width":function(t,e){return d["stroke-width"](r,a,i)},"stroke-dasharray":function(t,e){return d["stroke-dasharray"](r,a,i)},opacity:function(t,e){return d.opacity(r,a,i)},display:function(t,e){return d.display(r,a,i)}})}};var h=e.angularScale.range(),f=Math.abs(h[1]-h[0])/o[0].length*Math.PI/180,p=n.svg.arc().startAngle((function(t){return-f/2})).endAngle((function(t){return f/2})).innerRadius((function(t){return e.radialScale(l+(t[2]||0))})).outerRadius((function(t){return e.radialScale(l+(t[2]||0))+e.radialScale(t[1])}));c.arc=function(t,r,a){n.select(this).attr({class:"mark arc",d:p,transform:function(t,r){return"rotate("+(e.orientation+s(t[0])+90)+")"}})};var d={fill:function(e,r,n){return t[n].data.color},stroke:function(e,r,n){return t[n].data.strokeColor},"stroke-width":function(e,r,n){return t[n].data.strokeSize+"px"},"stroke-dasharray":function(e,n,a){return r[t[a].data.strokeDash]},opacity:function(e,r,n){return t[n].data.opacity},display:function(e,r,n){return"undefined"==typeof t[n].data.visible||t[n].data.visible?"block":"none"}},g=n.select(this).selectAll("g.layer").data(o);g.enter().append("g").attr({class:"layer"});var m=g.selectAll("path.mark").data((function(t,e){return t}));m.enter().append("path").attr({class:"mark"}),m.style(d).each(c[e.geometryType]),m.exit().remove(),g.exit().remove()}))}return i.config=function(e){return arguments.length?(e.forEach((function(e,r){t[r]||(t[r]={}),a(t[r],o.PolyChart.defaultConfig()),a(t[r],e)})),this):t},i.getColorScale=function(){},n.rebind(i,e,"on"),i},o.PolyChart.defaultConfig=function(){return{data:{name:"geom1",t:[[1,2,3,4]],r:[[1,2,3,4]],dotType:"circle",dotSize:64,dotVisible:!1,barWidth:20,color:"#ffa500",strokeSize:1,strokeColor:"silver",strokeDash:"solid",opacity:1,index:0,visible:!0,visibleInLegend:!0},geometryConfig:{geometry:"LinePlot",geometryType:"arc",direction:"clockwise",orientation:0,container:"body",radialScale:null,angularScale:null,colorScale:n.scale.category20()}}},o.BarChart=function(){return o.PolyChart()},o.BarChart.defaultConfig=function(){return{geometryConfig:{geometryType:"bar"}}},o.AreaChart=function(){return o.PolyChart()},o.AreaChart.defaultConfig=function(){return{geometryConfig:{geometryType:"arc"}}},o.DotPlot=function(){return o.PolyChart()},o.DotPlot.defaultConfig=function(){return{geometryConfig:{geometryType:"dot",dotType:"circle"}}},o.LinePlot=function(){return o.PolyChart()},o.LinePlot.defaultConfig=function(){return{geometryConfig:{geometryType:"line"}}},o.Legend=function(){var t=o.Legend.defaultConfig(),e=n.dispatch("hover");function r(){var e=t.legendConfig,i=t.data.map((function(t,r){return[].concat(t).map((function(t,n){var i=a({},e.elements[r]);return i.name=t,i.color=[].concat(e.elements[r].color)[n],i}))})),o=n.merge(i);o=o.filter((function(t,r){return e.elements[r]&&(e.elements[r].visibleInLegend||"undefined"==typeof e.elements[r].visibleInLegend)})),e.reverseOrder&&(o=o.reverse());var s=e.container;("string"==typeof s||s.nodeName)&&(s=n.select(s));var l=o.map((function(t,e){return t.color})),c=e.fontSize,u=null==e.isContinuous?"number"==typeof o[0]:e.isContinuous,h=u?e.height:c*o.length,f=s.classed("legend-group",!0).selectAll("svg").data([0]),p=f.enter().append("svg").attr({width:300,height:h+c,xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",version:"1.1"});p.append("g").classed("legend-axis",!0),p.append("g").classed("legend-marks",!0);var d=n.range(o.length),g=n.scale[u?"linear":"ordinal"]().domain(d).range(l),m=n.scale[u?"linear":"ordinal"]().domain(d)[u?"range":"rangePoints"]([0,h]);if(u){var v=f.select(".legend-marks").append("defs").append("linearGradient").attr({id:"grad1",x1:"0%",y1:"0%",x2:"0%",y2:"100%"}).selectAll("stop").data(l);v.enter().append("stop"),v.attr({offset:function(t,e){return e/(l.length-1)*100+"%"}}).style({"stop-color":function(t,e){return t}}),f.append("rect").classed("legend-mark",!0).attr({height:e.height,width:e.colorBandWidth,fill:"url(#grad1)"})}else{var y=f.select(".legend-marks").selectAll("path.legend-mark").data(o);y.enter().append("path").classed("legend-mark",!0),y.attr({transform:function(t,e){return"translate("+[c/2,m(e)+c/2]+")"},d:function(t,e){var r,a,i,o=t.symbol;return i=3*(a=c),"line"===(r=o)?"M"+[[-a/2,-a/12],[a/2,-a/12],[a/2,a/12],[-a/2,a/12]]+"Z":-1!=n.svg.symbolTypes.indexOf(r)?n.svg.symbol().type(r).size(i)():n.svg.symbol().type("square").size(i)()},fill:function(t,e){return g(e)}}),y.exit().remove()}var x=n.svg.axis().scale(m).orient("right"),b=f.select("g.legend-axis").attr({transform:"translate("+[u?e.colorBandWidth:c,c/2]+")"}).call(x);return b.selectAll(".domain").style({fill:"none",stroke:"none"}),b.selectAll("line").style({fill:"none",stroke:u?e.textColor:"none"}),b.selectAll("text").style({fill:e.textColor,"font-size":e.fontSize}).text((function(t,e){return o[e].name})),r}return r.config=function(e){return arguments.length?(a(t,e),this):t},n.rebind(r,e,"on"),r},o.Legend.defaultConfig=function(t,e){return{data:["a","b","c"],legendConfig:{elements:[{symbol:"line",color:"red"},{symbol:"square",color:"yellow"},{symbol:"diamond",color:"limegreen"}],height:150,colorBandWidth:30,fontSize:12,container:"body",isContinuous:null,textColor:"grey",reverseOrder:!1}}},o.tooltipPanel=function(){var t,e,r,i={container:null,hasTick:!1,fontSize:12,color:"white",padding:5},s="tooltip-"+o.tooltipPanel.uid++,l=10,c=function(){var n=(t=i.container.selectAll("g."+s).data([0])).enter().append("g").classed(s,!0).style({"pointer-events":"none",display:"none"});return r=n.append("path").style({fill:"white","fill-opacity":.9}).attr({d:"M0 0"}),e=n.append("text").attr({dx:i.padding+l,dy:.3*+i.fontSize}),c};return c.text=function(a){var o=n.hsl(i.color).l,s=o>=.5?"#aaa":"white",u=o>=.5?"black":"white",h=a||"";e.style({fill:u,"font-size":i.fontSize+"px"}).text(h);var f=i.padding,p=e.node().getBBox(),d={fill:i.color,stroke:s,"stroke-width":"2px"},g=p.width+2*f+l,m=p.height+2*f;return r.attr({d:"M"+[[l,-m/2],[l,-m/4],[i.hasTick?0:l,0],[l,m/4],[l,m/2],[g,m/2],[g,-m/2]].join("L")+"Z"}).style(d),t.attr({transform:"translate("+[l,-m/2+2*f]+")"}),t.style({display:"block"}),c},c.move=function(e){if(t)return t.attr({transform:"translate("+[e[0],e[1]]+")"}).style({display:"block"}),c},c.hide=function(){if(t)return t.style({display:"none"}),c},c.show=function(){if(t)return t.style({display:"block"}),c},c.config=function(t){return a(i,t),c},c},o.tooltipPanel.uid=1,o.adapter={},o.adapter.plotly=function(){var t={convert:function(t,e){var r={};if(t.data&&(r.data=t.data.map((function(t,r){var n=a({},t);return[[n,["marker","color"],["color"]],[n,["marker","opacity"],["opacity"]],[n,["marker","line","color"],["strokeColor"]],[n,["marker","line","dash"],["strokeDash"]],[n,["marker","line","width"],["strokeSize"]],[n,["marker","symbol"],["dotType"]],[n,["marker","size"],["dotSize"]],[n,["marker","barWidth"],["barWidth"]],[n,["line","interpolation"],["lineInterpolation"]],[n,["showlegend"],["visibleInLegend"]]].forEach((function(t,r){o.util.translator.apply(null,t.concat(e))})),e||delete n.marker,e&&delete n.groupId,e?("LinePlot"===n.geometry?(n.type="scatter",!0===n.dotVisible?(delete n.dotVisible,n.mode="lines+markers"):n.mode="lines"):"DotPlot"===n.geometry?(n.type="scatter",n.mode="markers"):"AreaChart"===n.geometry?n.type="area":"BarChart"===n.geometry&&(n.type="bar"),delete n.geometry):("scatter"===n.type?"lines"===n.mode?n.geometry="LinePlot":"markers"===n.mode?n.geometry="DotPlot":"lines+markers"===n.mode&&(n.geometry="LinePlot",n.dotVisible=!0):"area"===n.type?n.geometry="AreaChart":"bar"===n.type&&(n.geometry="BarChart"),delete n.mode,delete n.type),n})),!e&&t.layout&&"stack"===t.layout.barmode)){var i=o.util.duplicates(r.data.map((function(t,e){return t.geometry})));r.data.forEach((function(t,e){var n=i.indexOf(t.geometry);-1!=n&&(r.data[e].groupId=n)}))}if(t.layout){var s=a({},t.layout);if([[s,["plot_bgcolor"],["backgroundColor"]],[s,["showlegend"],["showLegend"]],[s,["radialaxis"],["radialAxis"]],[s,["angularaxis"],["angularAxis"]],[s.angularaxis,["showline"],["gridLinesVisible"]],[s.angularaxis,["showticklabels"],["labelsVisible"]],[s.angularaxis,["nticks"],["ticksCount"]],[s.angularaxis,["tickorientation"],["tickOrientation"]],[s.angularaxis,["ticksuffix"],["ticksSuffix"]],[s.angularaxis,["range"],["domain"]],[s.angularaxis,["endpadding"],["endPadding"]],[s.radialaxis,["showline"],["gridLinesVisible"]],[s.radialaxis,["tickorientation"],["tickOrientation"]],[s.radialaxis,["ticksuffix"],["ticksSuffix"]],[s.radialaxis,["range"],["domain"]],[s.angularAxis,["showline"],["gridLinesVisible"]],[s.angularAxis,["showticklabels"],["labelsVisible"]],[s.angularAxis,["nticks"],["ticksCount"]],[s.angularAxis,["tickorientation"],["tickOrientation"]],[s.angularAxis,["ticksuffix"],["ticksSuffix"]],[s.angularAxis,["range"],["domain"]],[s.angularAxis,["endpadding"],["endPadding"]],[s.radialAxis,["showline"],["gridLinesVisible"]],[s.radialAxis,["tickorientation"],["tickOrientation"]],[s.radialAxis,["ticksuffix"],["ticksSuffix"]],[s.radialAxis,["range"],["domain"]],[s.font,["outlinecolor"],["outlineColor"]],[s.legend,["traceorder"],["reverseOrder"]],[s,["labeloffset"],["labelOffset"]],[s,["defaultcolorrange"],["defaultColorRange"]]].forEach((function(t,r){o.util.translator.apply(null,t.concat(e))})),e?("undefined"!=typeof s.tickLength&&(s.angularaxis.ticklen=s.tickLength,delete s.tickLength),s.tickColor&&(s.angularaxis.tickcolor=s.tickColor,delete s.tickColor)):(s.angularAxis&&"undefined"!=typeof s.angularAxis.ticklen&&(s.tickLength=s.angularAxis.ticklen),s.angularAxis&&"undefined"!=typeof s.angularAxis.tickcolor&&(s.tickColor=s.angularAxis.tickcolor)),s.legend&&"boolean"!=typeof s.legend.reverseOrder&&(s.legend.reverseOrder="normal"!=s.legend.reverseOrder),s.legend&&"boolean"==typeof s.legend.traceorder&&(s.legend.traceorder=s.legend.traceorder?"reversed":"normal",delete s.legend.reverseOrder),s.margin&&"undefined"!=typeof s.margin.t){var l=["t","r","b","l","pad"],c=["top","right","bottom","left","pad"],u={};n.entries(s.margin).forEach((function(t,e){u[c[l.indexOf(t.key)]]=t.value})),s.margin=u}e&&(delete s.needsEndSpacing,delete s.minorTickColor,delete s.minorTicks,delete s.angularaxis.ticksCount,delete s.angularaxis.ticksCount,delete s.angularaxis.ticksStep,delete s.angularaxis.rewriteTicks,delete s.angularaxis.nticks,delete s.radialaxis.ticksCount,delete s.radialaxis.ticksCount,delete s.radialaxis.ticksStep,delete s.radialaxis.rewriteTicks,delete s.radialaxis.nticks),r.layout=s}return r}};return t}},{"../../../constants/alignment":697,"../../../lib":728,d3:164}],849:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../../lib"),i=t("../../../components/color"),o=t("./micropolar"),s=t("./undo_manager"),l=a.extendDeepAll,c=e.exports={};c.framework=function(t){var e,r,a,i,u,h=new s;function f(r,s){return s&&(u=s),n.select(n.select(u).node().parentNode).selectAll(".svg-container>*:not(.chart-root)").remove(),e=e?l(e,r):r,a||(a=o.Axis()),i=o.adapter.plotly().convert(e),a.config(i).render(u),t.data=e.data,t.layout=e.layout,c.fillLayout(t),e}return f.isPolar=!0,f.svg=function(){return a.svg()},f.getConfig=function(){return e},f.getLiveConfig=function(){return o.adapter.plotly().convert(a.getLiveConfig(),!0)},f.getLiveScales=function(){return{t:a.angularScale(),r:a.radialScale()}},f.setUndoPoint=function(){var t,n,a=this,i=o.util.cloneJson(e);t=i,n=r,h.add({undo:function(){n&&a(n)},redo:function(){a(t)}}),r=o.util.cloneJson(i)},f.undo=function(){h.undo()},f.redo=function(){h.redo()},f},c.fillLayout=function(t){var e=n.select(t).selectAll(".plot-container"),r=e.selectAll(".svg-container"),a=t.framework&&t.framework.svg&&t.framework.svg(),o={width:800,height:600,paper_bgcolor:i.background,_container:e,_paperdiv:r,_paper:a};t._fullLayout=l(o,t.layout)}},{"../../../components/color":595,"../../../lib":728,"./micropolar":848,"./undo_manager":850,d3:164}],850:[function(t,e,r){"use strict";e.exports=function(){var t,e=[],r=-1,n=!1;function a(t,e){return t?(n=!0,t[e](),n=!1,this):this}return{add:function(t){return n||(e.splice(r+1,e.length-r),e.push(t),r=e.length-1),this},setCallback:function(e){t=e},undo:function(){var n=e[r];return n?(a(n,"undo"),r-=1,t&&t(n.undo),this):this},redo:function(){var n=e[r+1];return n?(a(n,"redo"),r+=1,t&&t(n.redo),this):this},clear:function(){e=[],r=-1},hasUndo:function(){return-1!==r},hasRedo:function(){return r<e.length-1},getCommands:function(){return e},getPreviousCommand:function(){return e[r-1]},getIndex:function(){return r}}}},{}],851:[function(t,e,r){"use strict";var n=t("d3"),a=t("tinycolor2"),i=t("../../registry"),o=t("../../lib"),s=t("../../components/color"),l=t("../../components/drawing"),c=t("../plots"),u=t("../../plots/cartesian/axes"),h=t("../cartesian/set_convert"),f=t("./set_convert"),p=t("../cartesian/autorange").doAutoRange,d=t("../cartesian/dragbox"),g=t("../../components/dragelement"),m=t("../../components/fx"),v=t("../../components/titles"),y=t("../cartesian/select").prepSelect,x=t("../cartesian/select").selectOnClick,b=t("../cartesian/select").clearSelect,_=t("../../lib/setcursor"),w=t("../../lib/clear_gl_canvases"),T=t("../../plot_api/subroutines").redrawReglTraces,k=t("../../constants/alignment").MID_SHIFT,A=t("./constants"),M=t("./helpers"),S=o._,E=o.mod,C=o.deg2rad,L=o.rad2deg;function P(t,e){this.id=e,this.gd=t,this._hasClipOnAxisFalse=null,this.vangles=null,this.radialAxisAngle=null,this.traceHash={},this.layers={},this.clipPaths={},this.clipIds={},this.viewInitial={};var r=t._fullLayout,n="clip"+r._uid+e;this.clipIds.forTraces=n+"-for-traces",this.clipPaths.forTraces=r._clips.append("clipPath").attr("id",this.clipIds.forTraces),this.clipPaths.forTraces.append("path"),this.framework=r._polarlayer.append("g").attr("class",e),this.radialTickLayout=null,this.angularTickLayout=null}var I=P.prototype;function z(t){var e=t.ticks+String(t.ticklen)+String(t.showticklabels);return"side"in t&&(e+=t.side),e}function O(t,e){return e[o.findIndexOfMin(e,(function(e){return o.angleDist(t,e)}))]}function D(t,e,r){return e?(t.attr("display",null),t.attr(r)):t&&t.attr("display","none"),t}function R(t,e){return"translate("+t+","+e+")"}function F(t){return"rotate("+t+")"}e.exports=function(t,e){return new P(t,e)},I.plot=function(t,e){var r=e[this.id];this._hasClipOnAxisFalse=!1;for(var n=0;n<t.length;n++){if(!1===t[n][0].trace.cliponaxis){this._hasClipOnAxisFalse=!0;break}}this.updateLayers(e,r),this.updateLayout(e,r),c.generalUpdatePerTraceModule(this.gd,this,t,r),this.updateFx(e,r)},I.updateLayers=function(t,e){var r=this.layers,a=e.radialaxis,i=e.angularaxis,o=A.layerNames,s=o.indexOf("frontplot"),l=o.slice(0,s),c="below traces"===i.layer,u="below traces"===a.layer;c&&l.push("angular-line"),u&&l.push("radial-line"),c&&l.push("angular-axis"),u&&l.push("radial-axis"),l.push("frontplot"),c||l.push("angular-line"),u||l.push("radial-line"),c||l.push("angular-axis"),u||l.push("radial-axis");var h=this.framework.selectAll(".polarsublayer").data(l,String);h.enter().append("g").attr("class",(function(t){return"polarsublayer "+t})).each((function(t){var e=r[t]=n.select(this);switch(t){case"frontplot":e.append("g").classed("barlayer",!0),e.append("g").classed("scatterlayer",!0);break;case"backplot":e.append("g").classed("maplayer",!0);break;case"plotbg":r.bg=e.append("path");break;case"radial-grid":case"angular-grid":e.style("fill","none");break;case"radial-line":e.append("line").style("fill","none");break;case"angular-line":e.append("path").style("fill","none")}})),h.order()},I.updateLayout=function(t,e){var r=this.layers,n=t._size,a=e.radialaxis,i=e.angularaxis,o=e.domain.x,c=e.domain.y;this.xOffset=n.l+n.w*o[0],this.yOffset=n.t+n.h*(1-c[1]);var u=this.xLength=n.w*(o[1]-o[0]),h=this.yLength=n.h*(c[1]-c[0]),f=e.sector;this.sectorInRad=f.map(C);var p,d,g,m,v,y=this.sectorBBox=function(t){var e,r,n,a,i=t[0],o=t[1]-i,s=E(i,360),l=s+o,c=Math.cos(C(s)),u=Math.sin(C(s)),h=Math.cos(C(l)),f=Math.sin(C(l));a=s<=90&&l>=90||s>90&&l>=450?1:u<=0&&f<=0?0:Math.max(u,f);e=s<=180&&l>=180||s>180&&l>=540?-1:c>=0&&h>=0?0:Math.min(c,h);r=s<=270&&l>=270||s>270&&l>=630?-1:u>=0&&f>=0?0:Math.min(u,f);n=l>=360?1:c<=0&&h<=0?0:Math.max(c,h);return[e,r,n,a]}(f),x=y[2]-y[0],b=y[3]-y[1],_=h/u,w=Math.abs(b/x);_>w?(p=u,v=(h-(d=u*w))/n.h/2,g=[o[0],o[1]],m=[c[0]+v,c[1]-v]):(d=h,v=(u-(p=h/w))/n.w/2,g=[o[0]+v,o[1]-v],m=[c[0],c[1]]),this.xLength2=p,this.yLength2=d,this.xDomain2=g,this.yDomain2=m;var T=this.xOffset2=n.l+n.w*g[0],k=this.yOffset2=n.t+n.h*(1-m[1]),A=this.radius=p/x,M=this.innerRadius=e.hole*A,S=this.cx=T-A*y[0],L=this.cy=k+A*y[3],P=this.cxx=S-T,I=this.cyy=L-k;this.radialAxis=this.mockAxis(t,e,a,{_id:"x",side:{counterclockwise:"top",clockwise:"bottom"}[a.side],domain:[M/n.w,A/n.w]}),this.angularAxis=this.mockAxis(t,e,i,{side:"right",domain:[0,Math.PI],autorange:!1}),this.doAutoRange(t,e),this.updateAngularAxis(t,e),this.updateRadialAxis(t,e),this.updateRadialAxisTitle(t,e),this.xaxis=this.mockCartesianAxis(t,e,{_id:"x",domain:g}),this.yaxis=this.mockCartesianAxis(t,e,{_id:"y",domain:m});var z=this.pathSubplot();this.clipPaths.forTraces.select("path").attr("d",z).attr("transform",R(P,I)),r.frontplot.attr("transform",R(T,k)).call(l.setClipUrl,this._hasClipOnAxisFalse?null:this.clipIds.forTraces,this.gd),r.bg.attr("d",z).attr("transform",R(S,L)).call(s.fill,e.bgcolor)},I.mockAxis=function(t,e,r,n){var a=o.extendFlat({},r,n);return f(a,e,t),a},I.mockCartesianAxis=function(t,e,r){var n=this,a=r._id,i=o.extendFlat({type:"linear"},r);h(i,t);var s={x:[0,2],y:[1,3]};return i.setRange=function(){var t=n.sectorBBox,r=s[a],o=n.radialAxis._rl,l=(o[1]-o[0])/(1-e.hole);i.range=[t[r[0]]*l,t[r[1]]*l]},i.isPtWithinRange="x"===a?function(t){return n.isPtInside(t)}:function(){return!0},i.setRange(),i.setScale(),i},I.doAutoRange=function(t,e){var r=this.gd,n=this.radialAxis,a=e.radialaxis;n.setScale(),p(r,n);var i=n.range;a.range=i.slice(),a._input.range=i.slice(),n._rl=[n.r2l(i[0],null,"gregorian"),n.r2l(i[1],null,"gregorian")]},I.updateRadialAxis=function(t,e){var r=this,n=r.gd,a=r.layers,i=r.radius,l=r.innerRadius,c=r.cx,h=r.cy,f=e.radialaxis,p=E(e.sector[0],360),d=r.radialAxis,g=l<i;r.fillViewInitialKey("radialaxis.angle",f.angle),r.fillViewInitialKey("radialaxis.range",d.range.slice()),d.setGeometry(),"auto"===d.tickangle&&p>90&&p<=270&&(d.tickangle=180);var m=function(t){return"translate("+(d.l2p(t.x)+l)+",0)"},v=z(f);if(r.radialTickLayout!==v&&(a["radial-axis"].selectAll(".xtick").remove(),r.radialTickLayout=v),g){d.setScale();var y=u.calcTicks(d),x=u.clipEnds(d,y),b=u.getTickSigns(d)[2];u.drawTicks(n,d,{vals:y,layer:a["radial-axis"],path:u.makeTickPath(d,0,b),transFn:m,crisp:!1}),u.drawGrid(n,d,{vals:x,layer:a["radial-grid"],path:function(t){return r.pathArc(d.r2p(t.x)+l)},transFn:o.noop,crisp:!1}),u.drawLabels(n,d,{vals:y,layer:a["radial-axis"],transFn:m,labelFns:u.makeLabelFns(d,0)})}var _=r.radialAxisAngle=r.vangles?L(O(C(f.angle),r.vangles)):f.angle,w=R(c,h),T=w+F(-_);D(a["radial-axis"],g&&(f.showticklabels||f.ticks),{transform:T}),D(a["radial-grid"],g&&f.showgrid,{transform:w}),D(a["radial-line"].select("line"),g&&f.showline,{x1:l,y1:0,x2:i,y2:0,transform:T}).attr("stroke-width",f.linewidth).call(s.stroke,f.linecolor)},I.updateRadialAxisTitle=function(t,e,r){var n=this.gd,a=this.radius,i=this.cx,o=this.cy,s=e.radialaxis,c=this.id+"title",u=void 0!==r?r:this.radialAxisAngle,h=C(u),f=Math.cos(h),p=Math.sin(h),d=0;if(s.title){var g=l.bBox(this.layers["radial-axis"].node()).height,m=s.title.font.size;d="counterclockwise"===s.side?-g-.4*m:g+.8*m}this.layers["radial-axis-title"]=v.draw(n,c,{propContainer:s,propName:this.id+".radialaxis.title",placeholder:S(n,"Click to enter radial axis title"),attributes:{x:i+a/2*f+d*p,y:o-a/2*p+d*f,"text-anchor":"middle"},transform:{rotate:-u}})},I.updateAngularAxis=function(t,e){var r=this,n=r.gd,a=r.layers,i=r.radius,l=r.innerRadius,c=r.cx,h=r.cy,f=e.angularaxis,p=r.angularAxis;r.fillViewInitialKey("angularaxis.rotation",f.rotation),p.setGeometry(),p.setScale();var d=function(t){return p.t2g(t.x)};"linear"===p.type&&"radians"===p.thetaunit&&(p.tick0=L(p.tick0),p.dtick=L(p.dtick));var g=function(t){return R(c+i*Math.cos(t),h-i*Math.sin(t))},m=u.makeLabelFns(p,0).labelStandoff,v={xFn:function(t){var e=d(t);return Math.cos(e)*m},yFn:function(t){var e=d(t),r=Math.sin(e)>0?.2:1;return-Math.sin(e)*(m+t.fontSize*r)+Math.abs(Math.cos(e))*(t.fontSize*k)},anchorFn:function(t){var e=d(t),r=Math.cos(e);return Math.abs(r)<.1?"middle":r>0?"start":"end"},heightFn:function(t,e,r){var n=d(t);return-.5*(1+Math.sin(n))*r}},y=z(f);r.angularTickLayout!==y&&(a["angular-axis"].selectAll("."+p._id+"tick").remove(),r.angularTickLayout=y);var x,b=u.calcTicks(p);if("linear"===e.gridshape?(x=b.map(d),o.angleDelta(x[0],x[1])<0&&(x=x.slice().reverse())):x=null,r.vangles=x,"category"===p.type&&(b=b.filter((function(t){return o.isAngleInsideSector(d(t),r.sectorInRad)}))),p.visible){var _="inside"===p.ticks?-1:1,w=(p.linewidth||1)/2;u.drawTicks(n,p,{vals:b,layer:a["angular-axis"],path:"M"+_*w+",0h"+_*p.ticklen,transFn:function(t){var e=d(t);return g(e)+F(-L(e))},crisp:!1}),u.drawGrid(n,p,{vals:b,layer:a["angular-grid"],path:function(t){var e=d(t),r=Math.cos(e),n=Math.sin(e);return"M"+[c+l*r,h-l*n]+"L"+[c+i*r,h-i*n]},transFn:o.noop,crisp:!1}),u.drawLabels(n,p,{vals:b,layer:a["angular-axis"],repositionOnUpdate:!0,transFn:function(t){return g(d(t))},labelFns:v})}D(a["angular-line"].select("path"),f.showline,{d:r.pathSubplot(),transform:R(c,h)}).attr("stroke-width",f.linewidth).call(s.stroke,f.linecolor)},I.updateFx=function(t,e){this.gd._context.staticPlot||(this.updateAngularDrag(t),this.updateRadialDrag(t,e,0),this.updateRadialDrag(t,e,1),this.updateMainDrag(t))},I.updateMainDrag=function(t){var e=this,r=e.gd,o=e.layers,s=t._zoomlayer,l=A.MINZOOM,c=A.OFFEDGE,u=e.radius,h=e.innerRadius,f=e.cx,p=e.cy,v=e.cxx,_=e.cyy,w=e.sectorInRad,T=e.vangles,k=e.radialAxis,S=M.clampTiny,E=M.findXYatLength,C=M.findEnclosingVertexAngles,L=A.cornerHalfWidth,P=A.cornerLen/2,I=d.makeDragger(o,"path","maindrag","crosshair");n.select(I).attr("d",e.pathSubplot()).attr("transform",R(f,p));var z,O,D,F,B,N,j,V,U,q={element:I,gd:r,subplot:e.id,plotinfo:{id:e.id,xaxis:e.xaxis,yaxis:e.yaxis},xaxes:[e.xaxis],yaxes:[e.yaxis]};function H(t,e){return Math.sqrt(t*t+e*e)}function G(t,e){return H(t-v,e-_)}function Y(t,e){return Math.atan2(_-e,t-v)}function W(t,e){return[t*Math.cos(e),t*Math.sin(-e)]}function Z(t,r){if(0===t)return e.pathSector(2*L);var n=P/t,a=r-n,i=r+n,o=Math.max(0,Math.min(t,u)),s=o-L,l=o+L;return"M"+W(s,a)+"A"+[s,s]+" 0,0,0 "+W(s,i)+"L"+W(l,i)+"A"+[l,l]+" 0,0,1 "+W(l,a)+"Z"}function X(t,r,n){if(0===t)return e.pathSector(2*L);var a,i,o=W(t,r),s=W(t,n),l=S((o[0]+s[0])/2),c=S((o[1]+s[1])/2);if(l&&c){var u=c/l,h=-1/u,f=E(L,u,l,c);a=E(P,h,f[0][0],f[0][1]),i=E(P,h,f[1][0],f[1][1])}else{var p,d;c?(p=P,d=L):(p=L,d=P),a=[[l-p,c-d],[l+p,c-d]],i=[[l-p,c+d],[l+p,c+d]]}return"M"+a.join("L")+"L"+i.reverse().join("L")+"Z"}function J(t,e){return e=Math.max(Math.min(e,u),h),t<c?t=0:u-t<c?t=u:e<c?e=0:u-e<c&&(e=u),Math.abs(e-t)>l?(t<e?(D=t,F=e):(D=e,F=t),!0):(D=null,F=null,!1)}function K(t,e){t=t||B,e=e||"M0,0Z",V.attr("d",t),U.attr("d",e),d.transitionZoombox(V,U,N,j),N=!0;var n={};rt(n),r.emit("plotly_relayouting",n)}function Q(t,r){var n,a,i=z+t,o=O+r,s=G(z,O),l=Math.min(G(i,o),u),c=Y(z,O);J(s,l)&&(n=B+e.pathSector(F),D&&(n+=e.pathSector(D)),a=Z(D,c)+Z(F,c)),K(n,a)}function $(t,e,r,n){var a=M.findIntersectionXY(r,n,r,[t-v,_-e]);return H(a[0],a[1])}function tt(t,r){var n,a,i=z+t,o=O+r,s=Y(z,O),l=Y(i,o),c=C(s,T),h=C(l,T);J($(z,O,c[0],c[1]),Math.min($(i,o,h[0],h[1]),u))&&(n=B+e.pathSector(F),D&&(n+=e.pathSector(D)),a=[X(D,c[0],c[1]),X(F,c[0],c[1])].join(" ")),K(n,a)}function et(){if(d.removeZoombox(r),null!==D&&null!==F){var t={};rt(t),d.showDoubleClickNotifier(r),i.call("_guiRelayout",r,t)}}function rt(t){var r=k._rl,n=(r[1]-r[0])/(1-h/u)/u,a=[r[0]+(D-h)*n,r[0]+(F-h)*n];t[e.id+".radialaxis.range"]=a}function nt(t,n){var a=r._fullLayout.clickmode;if(d.removeZoombox(r),2===t){var o={};for(var s in e.viewInitial)o[e.id+"."+s]=e.viewInitial[s];r.emit("plotly_doubleclick",null),i.call("_guiRelayout",r,o)}a.indexOf("select")>-1&&1===t&&x(n,r,[e.xaxis],[e.yaxis],e.id,q),a.indexOf("event")>-1&&m.click(r,n,e.id)}q.prepFn=function(t,n,i){var o=r._fullLayout.dragmode,l=I.getBoundingClientRect();if(z=n-l.left,O=i-l.top,T){var c=M.findPolygonOffset(u,w[0],w[1],T);z+=v+c[0],O+=_+c[1]}switch(o){case"zoom":q.moveFn=T?tt:Q,q.clickFn=nt,q.doneFn=et,function(){D=null,F=null,B=e.pathSubplot(),N=!1;var t=r._fullLayout[e.id];j=a(t.bgcolor).getLuminance(),(V=d.makeZoombox(s,j,f,p,B)).attr("fill-rule","evenodd"),U=d.makeCorners(s,f,p),b(r)}();break;case"select":case"lasso":y(t,n,i,q,o)}},I.onmousemove=function(t){m.hover(r,t,e.id),r._fullLayout._lasthover=I,r._fullLayout._hoversubplot=e.id},I.onmouseout=function(t){r._dragging||g.unhover(r,t)},g.init(q)},I.updateRadialDrag=function(t,e,r){var a=this,s=a.gd,l=a.layers,c=a.radius,u=a.innerRadius,h=a.cx,f=a.cy,p=a.radialAxis,m=A.radialDragBoxSize,v=m/2;if(p.visible){var y,x,_,k=C(a.radialAxisAngle),M=p._rl,S=M[0],E=M[1],P=M[r],I=.75*(M[1]-M[0])/(1-e.hole)/c;r?(y=h+(c+v)*Math.cos(k),x=f-(c+v)*Math.sin(k),_="radialdrag"):(y=h+(u-v)*Math.cos(k),x=f-(u-v)*Math.sin(k),_="radialdrag-inner");var z,B,N,j=d.makeRectDragger(l,_,"crosshair",-v,-v,m,m),V={element:j,gd:s};D(n.select(j),p.visible&&u<c,{transform:R(y,x)}),V.prepFn=function(){z=null,B=null,N=null,V.moveFn=U,V.doneFn=q,b(s)},V.clampFn=function(t,e){return Math.sqrt(t*t+e*e)<A.MINDRAG&&(t=0,e=0),[t,e]},g.init(V)}function U(t,e){if(z)z(t,e);else{var n=[t,-e],i=[Math.cos(k),Math.sin(k)],l=Math.abs(o.dot(n,i)/Math.sqrt(o.dot(n,n)));isNaN(l)||(z=l<.5?H:G)}var c={};!function(t){null!==B?t[a.id+".radialaxis.angle"]=B:null!==N&&(t[a.id+".radialaxis.range["+r+"]"]=N)}(c),s.emit("plotly_relayouting",c)}function q(){null!==B?i.call("_guiRelayout",s,a.id+".radialaxis.angle",B):null!==N&&i.call("_guiRelayout",s,a.id+".radialaxis.range["+r+"]",N)}function H(t,e){if(0!==r){var n=y+t,i=x+e;B=Math.atan2(f-i,n-h),a.vangles&&(B=O(B,a.vangles)),B=L(B);var o=R(h,f)+F(-B);l["radial-axis"].attr("transform",o),l["radial-line"].select("line").attr("transform",o);var s=a.gd._fullLayout,c=s[a.id];a.updateRadialAxisTitle(s,c,B)}}function G(t,e){var n=o.dot([t,-e],[Math.cos(k),Math.sin(k)]);if(N=P-I*n,I>0==(r?N>S:N<E)){var l=s._fullLayout,c=l[a.id];p.range[r]=N,p._rl[r]=N,a.updateRadialAxis(l,c),a.xaxis.setRange(),a.xaxis.setScale(),a.yaxis.setRange(),a.yaxis.setScale();var u=!1;for(var h in a.traceHash){var f=a.traceHash[h],d=o.filterVisible(f);f[0][0].trace._module.plot(s,a,d,c),i.traceIs(h,"gl")&&d.length&&(u=!0)}u&&(w(s),T(s))}else N=null}},I.updateAngularDrag=function(t){var e=this,r=e.gd,a=e.layers,s=e.radius,c=e.angularAxis,u=e.cx,h=e.cy,f=e.cxx,p=e.cyy,m=A.angularDragBoxSize,v=d.makeDragger(a,"path","angulardrag","move"),y={element:v,gd:r};function x(t,e){return Math.atan2(p+m-e,t-f-m)}n.select(v).attr("d",e.pathAnnulus(s,s+m)).attr("transform",R(u,h)).call(_,"move");var k,M,S,E,C,P,I=a.frontplot.select(".scatterlayer").selectAll(".trace"),z=I.selectAll(".point"),O=I.selectAll(".textpoint");function D(t,s){var d=e.gd._fullLayout,g=d[e.id],m=x(k+t,M+s),v=L(m-P);if(E=S+v,a.frontplot.attr("transform",R(e.xOffset2,e.yOffset2)+F([-v,f,p])),e.vangles){C=e.radialAxisAngle+v;var y=R(u,h)+F(-v),b=R(u,h)+F(-C);a.bg.attr("transform",y),a["radial-grid"].attr("transform",y),a["radial-axis"].attr("transform",b),a["radial-line"].select("line").attr("transform",b),e.updateRadialAxisTitle(d,g,C)}else e.clipPaths.forTraces.select("path").attr("transform",R(f,p)+F(v));z.each((function(){var t=n.select(this),e=l.getTranslate(t);t.attr("transform",R(e.x,e.y)+F([v]))})),O.each((function(){var t=n.select(this),e=t.select("text"),r=l.getTranslate(t);t.attr("transform",F([v,e.attr("x"),e.attr("y")])+R(r.x,r.y))})),c.rotation=o.modHalf(E,360),e.updateAngularAxis(d,g),e._hasClipOnAxisFalse&&!o.isFullCircle(e.sectorInRad)&&I.call(l.hideOutsideRangePoints,e);var _=!1;for(var A in e.traceHash)if(i.traceIs(A,"gl")){var D=e.traceHash[A],N=o.filterVisible(D);D[0][0].trace._module.plot(r,e,N,g),N.length&&(_=!0)}_&&(w(r),T(r));var j={};B(j),r.emit("plotly_relayouting",j)}function B(t){t[e.id+".angularaxis.rotation"]=E,e.vangles&&(t[e.id+".radialaxis.angle"]=C)}function N(){O.select("text").attr("transform",null);var t={};B(t),i.call("_guiRelayout",r,t)}y.prepFn=function(n,a,i){var o=t[e.id];S=o.angularaxis.rotation;var s=v.getBoundingClientRect();k=a-s.left,M=i-s.top,P=x(k,M),y.moveFn=D,y.doneFn=N,b(r)},e.vangles&&!o.isFullCircle(e.sectorInRad)&&(y.prepFn=o.noop,_(n.select(v),null)),g.init(y)},I.isPtInside=function(t){var e=this.sectorInRad,r=this.vangles,n=this.angularAxis.c2g(t.theta),a=this.radialAxis,i=a.c2l(t.r),s=a._rl;return(r?M.isPtInsidePolygon:o.isPtInsideSector)(i,n,s,e,r)},I.pathArc=function(t){var e=this.sectorInRad,r=this.vangles;return(r?M.pathPolygon:o.pathArc)(t,e[0],e[1],r)},I.pathSector=function(t){var e=this.sectorInRad,r=this.vangles;return(r?M.pathPolygon:o.pathSector)(t,e[0],e[1],r)},I.pathAnnulus=function(t,e){var r=this.sectorInRad,n=this.vangles;return(n?M.pathPolygonAnnulus:o.pathAnnulus)(t,e,r[0],r[1],n)},I.pathSubplot=function(){var t=this.innerRadius,e=this.radius;return t?this.pathAnnulus(t,e):this.pathSector(e)},I.fillViewInitialKey=function(t,e){t in this.viewInitial||(this.viewInitial[t]=e)}},{"../../components/color":595,"../../components/dragelement":614,"../../components/drawing":617,"../../components/fx":635,"../../components/titles":690,"../../constants/alignment":697,"../../lib":728,"../../lib/clear_gl_canvases":713,"../../lib/setcursor":748,"../../plot_api/subroutines":767,"../../plots/cartesian/axes":776,"../../registry":859,"../cartesian/autorange":775,"../cartesian/dragbox":784,"../cartesian/select":795,"../cartesian/set_convert":796,"../plots":839,"./constants":840,"./helpers":841,"./set_convert":852,d3:164,tinycolor2:528}],852:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../cartesian/set_convert"),i=n.deg2rad,o=n.rad2deg;e.exports=function(t,e,r){switch(a(t,r),t._id){case"x":case"radialaxis":!function(t,e){var r=e._subplot;t.setGeometry=function(){var e=t._rl[0],n=t._rl[1],a=r.innerRadius,i=(r.radius-a)/(n-e),o=a/i,s=e>n?function(t){return t<=0}:function(t){return t>=0};t.c2g=function(r){var n=t.c2l(r)-e;return(s(n)?n:0)+o},t.g2c=function(r){return t.l2c(r+e-o)},t.g2p=function(t){return t*i},t.c2p=function(e){return t.g2p(t.c2g(e))}}}(t,e);break;case"angularaxis":!function(t,e){var r=t.type;if("linear"===r){var a=t.d2c,s=t.c2d;t.d2c=function(t,e){return function(t,e){return"degrees"===e?i(t):t}(a(t),e)},t.c2d=function(t,e){return s(function(t,e){return"degrees"===e?o(t):t}(t,e))}}t.makeCalcdata=function(e,a){var i,o,s=e[a],l=e._length,c=function(r){return t.d2c(r,e.thetaunit)};if(s){if(n.isTypedArray(s)&&"linear"===r){if(l===s.length)return s;if(s.subarray)return s.subarray(0,l)}for(i=new Array(l),o=0;o<l;o++)i[o]=c(s[o])}else{var u=a+"0",h="d"+a,f=u in e?c(e[u]):0,p=e[h]?c(e[h]):(t.period||2*Math.PI)/l;for(i=new Array(l),o=0;o<l;o++)i[o]=f+o*p}return i},t.setGeometry=function(){var a,s,l,c,u=e.sector,h=u.map(i),f={clockwise:-1,counterclockwise:1}[t.direction],p=i(t.rotation),d=function(t){return f*t+p},g=function(t){return(t-p)/f};switch(r){case"linear":s=a=n.identity,c=i,l=o,t.range=n.isFullCircle(h)?[u[0],u[0]+360]:h.map(g).map(o);break;case"category":var m=t._categories.length,v=t.period?Math.max(t.period,m):m;0===v&&(v=1),s=c=function(t){return 2*t*Math.PI/v},a=l=function(t){return t*v/Math.PI/2},t.range=[0,v]}t.c2g=function(t){return d(s(t))},t.g2c=function(t){return a(g(t))},t.t2g=function(t){return d(c(t))},t.g2t=function(t){return l(g(t))}}}(t,e)}}},{"../../lib":728,"../cartesian/set_convert":796}],853:[function(t,e,r){"use strict";var n=t("../lib"),a=t("../plot_api/plot_template"),i=t("./domain").defaults;e.exports=function(t,e,r,o){var s,l,c=o.type,u=o.attributes,h=o.handleDefaults,f=o.partition||"x",p=e._subplots[c],d=p.length,g=d&&p[0].replace(/\d+$/,"");function m(t,e){return n.coerce(s,l,u,t,e)}for(var v=0;v<d;v++){var y=p[v];s=t[y]?t[y]:t[y]={},l=a.newContainer(e,y,g),m("uirevision",e.uirevision);var x={};x[f]=[v/d,(v+1)/d],i(l,e,m,x),o.id=y,h(s,l,m,o)}}},{"../lib":728,"../plot_api/plot_template":766,"./domain":803}],854:[function(t,e,r){"use strict";['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}".',t("../constants/docs").FORMAT_LINK,"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}".',t("../constants/docs").DATE_FORMAT_LINK,"for details on the date formatting syntax."].join(" ");function n(t){var e=t.description?" "+t.description:"",r=t.keys||[];if(r.length>0){for(var n=[],a=0;a<r.length;a++)n[a]="”+r[a]+”";e+="Finally, the template string has access to ",e=1===r.length?"variable "+n[0]:"variables "+n.slice(0,-1).join(", ")+" and "+n.slice(-1)+"."}return e}r.hovertemplateAttrs=function(t,e){t=t||{};n(e=e||{});var r={valType:"string",dflt:"",editType:t.editType||"none"};return!1!==t.arrayOk&&(r.arrayOk=!0),r},r.texttemplateAttrs=function(t,e){t=t||{};n(e=e||{});var r={valType:"string",dflt:"",editType:t.editType||"calc"};return!1!==t.arrayOk&&(r.arrayOk=!0),r}},{"../constants/docs":699}],855:[function(t,e,r){"use strict";var n=t("./ternary"),a=t("../../plots/get_data").getSubplotCalcData,i=t("../../lib").counterRegex;r.name="ternary";var o=r.attr="subplot";r.idRoot="ternary",r.idRegex=r.attrRegex=i("ternary"),(r.attributes={})[o]={valType:"subplotid",dflt:"ternary",editType:"calc"},r.layoutAttributes=t("./layout_attributes"),r.supplyLayoutDefaults=t("./layout_defaults"),r.plot=function(t){for(var e=t._fullLayout,r=t.calcdata,i=e._subplots.ternary,o=0;o<i.length;o++){var s=i[o],l=a(r,"ternary",s),c=e[s]._subplot;c||(c=new n({id:s,graphDiv:t,container:e._ternarylayer.node()},e),e[s]._subplot=c),c.plot(l,e,t._promises)}},r.clean=function(t,e,r,n){for(var a=n._subplots.ternary||[],i=0;i<a.length;i++){var o=a[i],s=n[o]._subplot;!e[o]&&s&&(s.plotContainer.remove(),s.clipDef.remove(),s.clipDefRelative.remove(),s.layers["a-title"].remove(),s.layers["b-title"].remove(),s.layers["c-title"].remove())}}},{"../../lib":728,"../../plots/get_data":813,"./layout_attributes":856,"./layout_defaults":857,"./ternary":858}],856:[function(t,e,r){"use strict";var n=t("../../components/color/attributes"),a=t("../domain").attributes,i=t("../cartesian/layout_attributes"),o=t("../../plot_api/edit_types").overrideAll,s=t("../../lib/extend").extendFlat,l={title:{text:i.title.text,font:i.title.font},color:i.color,tickmode:i.tickmode,nticks:s({},i.nticks,{dflt:6,min:1}),tick0:i.tick0,dtick:i.dtick,tickvals:i.tickvals,ticktext:i.ticktext,ticks:i.ticks,ticklen:i.ticklen,tickwidth:i.tickwidth,tickcolor:i.tickcolor,showticklabels:i.showticklabels,showtickprefix:i.showtickprefix,tickprefix:i.tickprefix,showticksuffix:i.showticksuffix,ticksuffix:i.ticksuffix,showexponent:i.showexponent,exponentformat:i.exponentformat,separatethousands:i.separatethousands,tickfont:i.tickfont,tickangle:i.tickangle,tickformat:i.tickformat,tickformatstops:i.tickformatstops,hoverformat:i.hoverformat,showline:s({},i.showline,{dflt:!0}),linecolor:i.linecolor,linewidth:i.linewidth,showgrid:s({},i.showgrid,{dflt:!0}),gridcolor:i.gridcolor,gridwidth:i.gridwidth,layer:i.layer,min:{valType:"number",dflt:0,min:0},_deprecated:{title:i._deprecated.title,titlefont:i._deprecated.titlefont}},c=e.exports=o({domain:a({name:"ternary"}),bgcolor:{valType:"color",dflt:n.background},sum:{valType:"number",dflt:1,min:0},aaxis:l,baxis:l,caxis:l},"plot","from-root");c.uirevision={valType:"any",editType:"none"},c.aaxis.uirevision=c.baxis.uirevision=c.caxis.uirevision={valType:"any",editType:"none"}},{"../../components/color/attributes":594,"../../lib/extend":719,"../../plot_api/edit_types":759,"../cartesian/layout_attributes":790,"../domain":803}],857:[function(t,e,r){"use strict";var n=t("../../components/color"),a=t("../../plot_api/plot_template"),i=t("../../lib"),o=t("../subplot_defaults"),s=t("../cartesian/tick_label_defaults"),l=t("../cartesian/tick_mark_defaults"),c=t("../cartesian/tick_value_defaults"),u=t("../cartesian/line_grid_defaults"),h=t("./layout_attributes"),f=["aaxis","baxis","caxis"];function p(t,e,r,i){var o,s,l,c=r("bgcolor"),u=r("sum");i.bgColor=n.combine(c,i.paper_bgcolor);for(var h=0;h<f.length;h++)s=t[o=f[h]]||{},(l=a.newContainer(e,o))._name=o,d(s,l,i,e);var p=e.aaxis,g=e.baxis,m=e.caxis;p.min+g.min+m.min>=u&&(p.min=0,g.min=0,m.min=0,t.aaxis&&delete t.aaxis.min,t.baxis&&delete t.baxis.min,t.caxis&&delete t.caxis.min)}function d(t,e,r,n){var a=h[e._name];function o(r,n){return i.coerce(t,e,a,r,n)}o("uirevision",n.uirevision),e.type="linear";var f=o("color"),p=f!==a.color.dflt?f:r.font.color,d=e._name.charAt(0).toUpperCase(),g="Component "+d,m=o("title.text",g);e._hovertitle=m===g?m:d,i.coerceFont(o,"title.font",{family:r.font.family,size:Math.round(1.2*r.font.size),color:p}),o("min"),c(t,e,o,"linear"),s(t,e,o,"linear",{}),l(t,e,o,{outerTicks:!0}),o("showticklabels")&&(i.coerceFont(o,"tickfont",{family:r.font.family,size:r.font.size,color:p}),o("tickangle"),o("tickformat")),u(t,e,o,{dfltColor:f,bgColor:r.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:a}),o("hoverformat"),o("layer")}e.exports=function(t,e,r){o(t,e,r,{type:"ternary",attributes:h,handleDefaults:p,font:e.font,paper_bgcolor:e.paper_bgcolor})}},{"../../components/color":595,"../../lib":728,"../../plot_api/plot_template":766,"../cartesian/line_grid_defaults":792,"../cartesian/tick_label_defaults":797,"../cartesian/tick_mark_defaults":798,"../cartesian/tick_value_defaults":799,"../subplot_defaults":853,"./layout_attributes":856}],858:[function(t,e,r){"use strict";var n=t("d3"),a=t("tinycolor2"),i=t("../../registry"),o=t("../../lib"),s=o._,l=t("../../components/color"),c=t("../../components/drawing"),u=t("../cartesian/set_convert"),h=t("../../lib/extend").extendFlat,f=t("../plots"),p=t("../cartesian/axes"),d=t("../../components/dragelement"),g=t("../../components/fx"),m=t("../../components/dragelement/helpers"),v=m.freeMode,y=m.rectMode,x=t("../../components/titles"),b=t("../cartesian/select").prepSelect,_=t("../cartesian/select").selectOnClick,w=t("../cartesian/select").clearSelect,T=t("../cartesian/select").clearSelectionsCache,k=t("../cartesian/constants");function A(t,e){this.id=t.id,this.graphDiv=t.graphDiv,this.init(e),this.makeFramework(e),this.aTickLayout=null,this.bTickLayout=null,this.cTickLayout=null}e.exports=A;var M=A.prototype;M.init=function(t){this.container=t._ternarylayer,this.defs=t._defs,this.layoutId=t._uid,this.traceHash={},this.layers={}},M.plot=function(t,e){var r=e[this.id],n=e._size;this._hasClipOnAxisFalse=!1;for(var a=0;a<t.length;a++){if(!1===t[a][0].trace.cliponaxis){this._hasClipOnAxisFalse=!0;break}}this.updateLayers(r),this.adjustLayout(r,n),f.generalUpdatePerTraceModule(this.graphDiv,this,t,r),this.layers.plotbg.select("path").call(l.fill,r.bgcolor)},M.makeFramework=function(t){var e=this.graphDiv,r=t[this.id],n=this.clipId="clip"+this.layoutId+this.id,a=this.clipIdRelative="clip-relative"+this.layoutId+this.id;this.clipDef=o.ensureSingleById(t._clips,"clipPath",n,(function(t){t.append("path").attr("d","M0,0Z")})),this.clipDefRelative=o.ensureSingleById(t._clips,"clipPath",a,(function(t){t.append("path").attr("d","M0,0Z")})),this.plotContainer=o.ensureSingle(this.container,"g",this.id),this.updateLayers(r),c.setClipUrl(this.layers.backplot,n,e),c.setClipUrl(this.layers.grids,n,e)},M.updateLayers=function(t){var e=this.layers,r=["draglayer","plotbg","backplot","grids"];"below traces"===t.aaxis.layer&&r.push("aaxis","aline"),"below traces"===t.baxis.layer&&r.push("baxis","bline"),"below traces"===t.caxis.layer&&r.push("caxis","cline"),r.push("frontplot"),"above traces"===t.aaxis.layer&&r.push("aaxis","aline"),"above traces"===t.baxis.layer&&r.push("baxis","bline"),"above traces"===t.caxis.layer&&r.push("caxis","cline");var a=this.plotContainer.selectAll("g.toplevel").data(r,String),i=["agrid","bgrid","cgrid"];a.enter().append("g").attr("class",(function(t){return"toplevel "+t})).each((function(t){var r=n.select(this);e[t]=r,"frontplot"===t?r.append("g").classed("scatterlayer",!0):"backplot"===t?r.append("g").classed("maplayer",!0):"plotbg"===t?r.append("path").attr("d","M0,0Z"):"aline"===t||"bline"===t||"cline"===t?r.append("path"):"grids"===t&&i.forEach((function(t){e[t]=r.append("g").classed("grid "+t,!0)}))})),a.order()};var S=Math.sqrt(4/3);M.adjustLayout=function(t,e){var r,n,a,i,o,s,f=this,p=t.domain,d=(p.x[0]+p.x[1])/2,g=(p.y[0]+p.y[1])/2,m=p.x[1]-p.x[0],v=p.y[1]-p.y[0],y=m*e.w,x=v*e.h,b=t.sum,_=t.aaxis.min,w=t.baxis.min,T=t.caxis.min;y>S*x?a=(i=x)*S:i=(a=y)/S,o=m*a/y,s=v*i/x,r=e.l+e.w*d-a/2,n=e.t+e.h*(1-g)-i/2,f.x0=r,f.y0=n,f.w=a,f.h=i,f.sum=b,f.xaxis={type:"linear",range:[_+2*T-b,b-_-2*w],domain:[d-o/2,d+o/2],_id:"x"},u(f.xaxis,f.graphDiv._fullLayout),f.xaxis.setScale(),f.xaxis.isPtWithinRange=function(t){return t.a>=f.aaxis.range[0]&&t.a<=f.aaxis.range[1]&&t.b>=f.baxis.range[1]&&t.b<=f.baxis.range[0]&&t.c>=f.caxis.range[1]&&t.c<=f.caxis.range[0]},f.yaxis={type:"linear",range:[_,b-w-T],domain:[g-s/2,g+s/2],_id:"y"},u(f.yaxis,f.graphDiv._fullLayout),f.yaxis.setScale(),f.yaxis.isPtWithinRange=function(){return!0};var k=f.yaxis.domain[0],A=f.aaxis=h({},t.aaxis,{range:[_,b-w-T],side:"left",tickangle:(+t.aaxis.tickangle||0)-30,domain:[k,k+s*S],anchor:"free",position:0,_id:"y",_length:a});u(A,f.graphDiv._fullLayout),A.setScale();var M=f.baxis=h({},t.baxis,{range:[b-_-T,w],side:"bottom",domain:f.xaxis.domain,anchor:"free",position:0,_id:"x",_length:a});u(M,f.graphDiv._fullLayout),M.setScale();var E=f.caxis=h({},t.caxis,{range:[b-_-w,T],side:"right",tickangle:(+t.caxis.tickangle||0)+30,domain:[k,k+s*S],anchor:"free",position:0,_id:"y",_length:a});u(E,f.graphDiv._fullLayout),E.setScale();var C="M"+r+","+(n+i)+"h"+a+"l-"+a/2+",-"+i+"Z";f.clipDef.select("path").attr("d",C),f.layers.plotbg.select("path").attr("d",C);var L="M0,"+i+"h"+a+"l-"+a/2+",-"+i+"Z";f.clipDefRelative.select("path").attr("d",L);var P="translate("+r+","+n+")";f.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",P),f.clipDefRelative.select("path").attr("transform",null);var I="translate("+(r-M._offset)+","+(n+i)+")";f.layers.baxis.attr("transform",I),f.layers.bgrid.attr("transform",I);var z="translate("+(r+a/2)+","+n+")rotate(30)translate(0,"+-A._offset+")";f.layers.aaxis.attr("transform",z),f.layers.agrid.attr("transform",z);var O="translate("+(r+a/2)+","+n+")rotate(-30)translate(0,"+-E._offset+")";f.layers.caxis.attr("transform",O),f.layers.cgrid.attr("transform",O),f.drawAxes(!0),f.layers.aline.select("path").attr("d",A.showline?"M"+r+","+(n+i)+"l"+a/2+",-"+i:"M0,0").call(l.stroke,A.linecolor||"#000").style("stroke-width",(A.linewidth||0)+"px"),f.layers.bline.select("path").attr("d",M.showline?"M"+r+","+(n+i)+"h"+a:"M0,0").call(l.stroke,M.linecolor||"#000").style("stroke-width",(M.linewidth||0)+"px"),f.layers.cline.select("path").attr("d",E.showline?"M"+(r+a/2)+","+n+"l"+a/2+","+i:"M0,0").call(l.stroke,E.linecolor||"#000").style("stroke-width",(E.linewidth||0)+"px"),f.graphDiv._context.staticPlot||f.initInteractions(),c.setClipUrl(f.layers.frontplot,f._hasClipOnAxisFalse?null:f.clipId,f.graphDiv)},M.drawAxes=function(t){var e=this.graphDiv,r=this.id.substr(7)+"title",n=this.layers,a=this.aaxis,i=this.baxis,o=this.caxis;if(this.drawAx(a),this.drawAx(i),this.drawAx(o),t){var l=Math.max(a.showticklabels?a.tickfont.size/2:0,(o.showticklabels?.75*o.tickfont.size:0)+("outside"===o.ticks?.87*o.ticklen:0)),c=(i.showticklabels?i.tickfont.size:0)+("outside"===i.ticks?i.ticklen:0)+3;n["a-title"]=x.draw(e,"a"+r,{propContainer:a,propName:this.id+".aaxis.title",placeholder:s(e,"Click to enter Component A title"),attributes:{x:this.x0+this.w/2,y:this.y0-a.title.font.size/3-l,"text-anchor":"middle"}}),n["b-title"]=x.draw(e,"b"+r,{propContainer:i,propName:this.id+".baxis.title",placeholder:s(e,"Click to enter Component B title"),attributes:{x:this.x0-c,y:this.y0+this.h+.83*i.title.font.size+c,"text-anchor":"middle"}}),n["c-title"]=x.draw(e,"c"+r,{propContainer:o,propName:this.id+".caxis.title",placeholder:s(e,"Click to enter Component C title"),attributes:{x:this.x0+this.w+c,y:this.y0+this.h+.83*o.title.font.size+c,"text-anchor":"middle"}})}},M.drawAx=function(t){var e,r=this.graphDiv,n=t._name,a=n.charAt(0),i=t._id,s=this.layers[n],l=a+"tickLayout",c=(e=t).ticks+String(e.ticklen)+String(e.showticklabels);this[l]!==c&&(s.selectAll("."+i+"tick").remove(),this[l]=c),t.setScale();var u=p.calcTicks(t),h=p.clipEnds(t,u),f=p.makeTransFn(t),d=p.getTickSigns(t)[2],g=o.deg2rad(30),m=d*(t.linewidth||1)/2,v=d*t.ticklen,y=this.w,x=this.h,b="b"===a?"M0,"+m+"l"+Math.sin(g)*v+","+Math.cos(g)*v:"M"+m+",0l"+Math.cos(g)*v+","+-Math.sin(g)*v,_={a:"M0,0l"+x+",-"+y/2,b:"M0,0l-"+y/2+",-"+x,c:"M0,0l-"+x+","+y/2}[a];p.drawTicks(r,t,{vals:"inside"===t.ticks?h:u,layer:s,path:b,transFn:f,crisp:!1}),p.drawGrid(r,t,{vals:h,layer:this.layers[a+"grid"],path:_,transFn:f,crisp:!1}),p.drawLabels(r,t,{vals:u,layer:s,transFn:f,labelFns:p.makeLabelFns(t,0,30)})};var E=k.MINZOOM/2+.87,C="m-0.87,.5h"+E+"v3h-"+(E+5.2)+"l"+(E/2+2.6)+",-"+(.87*E+4.5)+"l2.6,1.5l-"+E/2+","+.87*E+"Z",L="m0.87,.5h-"+E+"v3h"+(E+5.2)+"l-"+(E/2+2.6)+",-"+(.87*E+4.5)+"l-2.6,1.5l"+E/2+","+.87*E+"Z",P="m0,1l"+E/2+","+.87*E+"l2.6,-1.5l-"+(E/2+2.6)+",-"+(.87*E+4.5)+"l-"+(E/2+2.6)+","+(.87*E+4.5)+"l2.6,1.5l"+E/2+",-"+.87*E+"Z",I=!0;function z(t){n.select(t).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}M.clearSelect=function(){T(this.dragOptions),w(this.dragOptions.gd)},M.initInteractions=function(){var t,e,r,n,u,h,f,p,m,x,w=this,T=w.layers.plotbg.select("path").node(),A=w.graphDiv,M=A._fullLayout._zoomlayer;function E(t){var e={};return e[w.id+".aaxis.min"]=t.a,e[w.id+".baxis.min"]=t.b,e[w.id+".caxis.min"]=t.c,e}function O(t,e){var r=A._fullLayout.clickmode;z(A),2===t&&(A.emit("plotly_doubleclick",null),i.call("_guiRelayout",A,E({a:0,b:0,c:0}))),r.indexOf("select")>-1&&1===t&&_(e,A,[w.xaxis],[w.yaxis],w.id,w.dragOptions),r.indexOf("event")>-1&&g.click(A,e,w.id)}function D(t,e){return 1-e/w.h}function R(t,e){return 1-(t+(w.h-e)/Math.sqrt(3))/w.w}function F(t,e){return(t-(w.h-e)/Math.sqrt(3))/w.w}function B(a,i){var o=t+a,s=e+i,l=Math.max(0,Math.min(1,D(0,e),D(0,s))),c=Math.max(0,Math.min(1,R(t,e),R(o,s))),d=Math.max(0,Math.min(1,F(t,e),F(o,s))),g=(l/2+d)*w.w,v=(1-l/2-c)*w.w,y=(g+v)/2,b=v-g,_=(1-l)*w.h,T=_-b/S;b<k.MINZOOM?(u=r,m.attr("d",f),x.attr("d","M0,0Z")):(u={a:r.a+l*n,b:r.b+c*n,c:r.c+d*n},m.attr("d",f+"M"+g+","+_+"H"+v+"L"+y+","+T+"L"+g+","+_+"Z"),x.attr("d","M"+t+","+e+"m0.5,0.5h5v-2h-5v-5h-2v5h-5v2h5v5h2ZM"+g+","+_+C+"M"+v+","+_+L+"M"+y+","+T+P)),p||(m.transition().style("fill",h>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),x.transition().style("opacity",1).duration(200),p=!0),A.emit("plotly_relayouting",E(u))}function N(){z(A),u!==r&&(i.call("_guiRelayout",A,E(u)),I&&A.data&&A._context.showTips&&(o.notifier(s(A,"Double-click to zoom back out"),"long"),I=!1))}function j(t,e){var n=t/w.xaxis._m,a=e/w.yaxis._m,i=[(u={a:r.a-a,b:r.b+(n+a)/2,c:r.c-(n-a)/2}).a,u.b,u.c].sort(o.sorterAsc),s=i.indexOf(u.a),l=i.indexOf(u.b),h=i.indexOf(u.c);i[0]<0&&(i[1]+i[0]/2<0?(i[2]+=i[0]+i[1],i[0]=i[1]=0):(i[2]+=i[0]/2,i[1]+=i[0]/2,i[0]=0),u={a:i[s],b:i[l],c:i[h]},e=(r.a-u.a)*w.yaxis._m,t=(r.c-u.c-r.b+u.b)*w.xaxis._m);var f="translate("+(w.x0+t)+","+(w.y0+e)+")";w.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",f);var p="translate("+-t+","+-e+")";w.clipDefRelative.select("path").attr("transform",p),w.aaxis.range=[u.a,w.sum-u.b-u.c],w.baxis.range=[w.sum-u.a-u.c,u.b],w.caxis.range=[w.sum-u.a-u.b,u.c],w.drawAxes(!1),w._hasClipOnAxisFalse&&w.plotContainer.select(".scatterlayer").selectAll(".trace").call(c.hideOutsideRangePoints,w),A.emit("plotly_relayouting",E(u))}function V(){i.call("_guiRelayout",A,E(u))}this.dragOptions={element:T,gd:A,plotinfo:{id:w.id,domain:A._fullLayout[w.id].domain,xaxis:w.xaxis,yaxis:w.yaxis},subplot:w.id,prepFn:function(i,o,s){w.dragOptions.xaxes=[w.xaxis],w.dragOptions.yaxes=[w.yaxis];var c=w.dragOptions.dragmode=A._fullLayout.dragmode;v(c)?w.dragOptions.minDrag=1:w.dragOptions.minDrag=void 0,"zoom"===c?(w.dragOptions.moveFn=B,w.dragOptions.clickFn=O,w.dragOptions.doneFn=N,function(i,o,s){var c=T.getBoundingClientRect();t=o-c.left,e=s-c.top,r={a:w.aaxis.range[0],b:w.baxis.range[1],c:w.caxis.range[1]},u=r,n=w.aaxis.range[1]-r.a,h=a(w.graphDiv._fullLayout[w.id].bgcolor).getLuminance(),f="M0,"+w.h+"L"+w.w/2+", 0L"+w.w+","+w.h+"Z",p=!1,m=M.append("path").attr("class","zoombox").attr("transform","translate("+w.x0+", "+w.y0+")").style({fill:h>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("d",f),x=M.append("path").attr("class","zoombox-corners").attr("transform","translate("+w.x0+", "+w.y0+")").style({fill:l.background,stroke:l.defaultLine,"stroke-width":1,opacity:0}).attr("d","M0,0Z"),w.clearSelect(A)}(0,o,s)):"pan"===c?(w.dragOptions.moveFn=j,w.dragOptions.clickFn=O,w.dragOptions.doneFn=V,r={a:w.aaxis.range[0],b:w.baxis.range[1],c:w.caxis.range[1]},u=r,w.clearSelect(A)):(y(c)||v(c))&&b(i,o,s,w.dragOptions,c)}},T.onmousemove=function(t){g.hover(A,t,w.id),A._fullLayout._lasthover=T,A._fullLayout._hoversubplot=w.id},T.onmouseout=function(t){A._dragging||d.unhover(A,t)},d.init(this.dragOptions)}},{"../../components/color":595,"../../components/dragelement":614,"../../components/dragelement/helpers":613,"../../components/drawing":617,"../../components/fx":635,"../../components/titles":690,"../../lib":728,"../../lib/extend":719,"../../registry":859,"../cartesian/axes":776,"../cartesian/constants":782,"../cartesian/select":795,"../cartesian/set_convert":796,"../plots":839,d3:164,tinycolor2:528}],859:[function(t,e,r){"use strict";var n=t("./lib/loggers"),a=t("./lib/noop"),i=t("./lib/push_unique"),o=t("./lib/is_plain_object"),s=t("./lib/dom").addStyleRule,l=t("./lib/extend"),c=t("./plots/attributes"),u=t("./plots/layout_attributes"),h=l.extendFlat,f=l.extendDeepAll;function p(t){var e=t.name,a=t.categories,i=t.meta;if(r.modules[e])n.log("Type "+e+" already registered");else{r.subplotsRegistry[t.basePlotModule.name]||function(t){var e=t.name;if(r.subplotsRegistry[e])return void n.log("Plot type "+e+" already registered.");for(var a in v(t),r.subplotsRegistry[e]=t,r.componentsRegistry)b(a,t.name)}(t.basePlotModule);for(var o={},l=0;l<a.length;l++)o[a[l]]=!0,r.allCategories[a[l]]=!0;for(var c in r.modules[e]={_module:t,categories:o},i&&Object.keys(i).length&&(r.modules[e].meta=i),r.allTypes.push(e),r.componentsRegistry)y(c,e);t.layoutAttributes&&h(r.traceLayoutAttributes,t.layoutAttributes);var u=t.basePlotModule,f=u.name;if("mapbox"===f){var p=u.constants.styleRules;for(var d in p)s(".js-plotly-plot .plotly .mapboxgl-"+d,p[d])}"geo"!==f&&"mapbox"!==f||void 0===typeof window||void 0!==window.PlotlyGeoAssets||(window.PlotlyGeoAssets={topojson:{}})}}function d(t){if("string"!=typeof t.name)throw new Error("Component module *name* must be a string.");var e=t.name;for(var n in r.componentsRegistry[e]=t,t.layoutAttributes&&(t.layoutAttributes._isLinkedToArray&&i(r.layoutArrayContainers,e),v(t)),r.modules)y(e,n);for(var a in r.subplotsRegistry)b(e,a);for(var o in r.transformsRegistry)x(e,o);t.schema&&t.schema.layout&&f(u,t.schema.layout)}function g(t){if("string"!=typeof t.name)throw new Error("Transform module *name* must be a string.");var e="Transform module "+t.name,a="function"==typeof t.transform,i="function"==typeof t.calcTransform;if(!a&&!i)throw new Error(e+" is missing a *transform* or *calcTransform* method.");for(var s in a&&i&&n.log([e+" has both a *transform* and *calcTransform* methods.","Please note that all *transform* methods are executed","before all *calcTransform* methods."].join(" ")),o(t.attributes)||n.log(e+" registered without an *attributes* object."),"function"!=typeof t.supplyDefaults&&n.log(e+" registered without a *supplyDefaults* method."),r.transformsRegistry[t.name]=t,r.componentsRegistry)x(s,t.name)}function m(t){var e=t.name,n=e.split("-")[0],a=t.dictionary,i=t.format,o=a&&Object.keys(a).length,s=i&&Object.keys(i).length,l=r.localeRegistry,c=l[e];if(c||(l[e]=c={}),n!==e){var u=l[n];u||(l[n]=u={}),o&&u.dictionary===c.dictionary&&(u.dictionary=a),s&&u.format===c.format&&(u.format=i)}o&&(c.dictionary=a),s&&(c.format=i)}function v(t){if(t.layoutAttributes){var e=t.layoutAttributes._arrayAttrRegexps;if(e)for(var n=0;n<e.length;n++)i(r.layoutArrayRegexes,e[n])}}function y(t,e){var n=r.componentsRegistry[t].schema;if(n&&n.traces){var a=n.traces[e];a&&f(r.modules[e]._module.attributes,a)}}function x(t,e){var n=r.componentsRegistry[t].schema;if(n&&n.transforms){var a=n.transforms[e];a&&f(r.transformsRegistry[e].attributes,a)}}function b(t,e){var n=r.componentsRegistry[t].schema;if(n&&n.subplots){var a=r.subplotsRegistry[e],i=a.layoutAttributes,o="subplot"===a.attr?a.name:a.attr;Array.isArray(o)&&(o=o[0]);var s=n.subplots[o];i&&s&&f(i,s)}}function _(t){return"object"==typeof t&&(t=t.type),t}r.modules={},r.allCategories={},r.allTypes=[],r.subplotsRegistry={},r.transformsRegistry={},r.componentsRegistry={},r.layoutArrayContainers=[],r.layoutArrayRegexes=[],r.traceLayoutAttributes={},r.localeRegistry={},r.apiMethodRegistry={},r.collectableSubplotTypes=null,r.register=function(t){if(r.collectableSubplotTypes=null,!t)throw new Error("No argument passed to Plotly.register.");t&&!Array.isArray(t)&&(t=[t]);for(var e=0;e<t.length;e++){var n=t[e];if(!n)throw new Error("Invalid module was attempted to be registered!");switch(n.moduleType){case"trace":p(n);break;case"transform":g(n);break;case"component":d(n);break;case"locale":m(n);break;case"apiMethod":var a=n.name;r.apiMethodRegistry[a]=n.fn;break;default:throw new Error("Invalid module was attempted to be registered!")}}},r.getModule=function(t){var e=r.modules[_(t)];return!!e&&e._module},r.traceIs=function(t,e){if("various"===(t=_(t)))return!1;var a=r.modules[t];return a||(t&&"area"!==t&&n.log("Unrecognized trace type "+t+"."),a=r.modules[c.type.dflt]),!!a.categories[e]},r.getTransformIndices=function(t,e){for(var r=[],n=t.transforms||[],a=0;a<n.length;a++)n[a].type===e&&r.push(a);return r},r.hasTransform=function(t,e){for(var r=t.transforms||[],n=0;n<r.length;n++)if(r[n].type===e)return!0;return!1},r.getComponentMethod=function(t,e){var n=r.componentsRegistry[t];return n&&n[e]||a},r.call=function(){var t=arguments[0],e=[].slice.call(arguments,1);return r.apiMethodRegistry[t].apply(null,e)}},{"./lib/dom":717,"./lib/extend":719,"./lib/is_plain_object":729,"./lib/loggers":732,"./lib/noop":737,"./lib/push_unique":742,"./plots/attributes":773,"./plots/layout_attributes":830}],860:[function(t,e,r){"use strict";var n=t("../registry"),a=t("../lib"),i=a.extendFlat,o=a.extendDeep;function s(t){var e;switch(t){case"themes__thumb":e={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":e={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:e={}}return e}e.exports=function(t,e){var r;t.framework&&t.framework.isPolar&&(t=t.framework.getConfig());var a,l=t.data,c=t.layout,u=o([],l),h=o({},c,s(e.tileClass)),f=t._context||{};if(e.width&&(h.width=e.width),e.height&&(h.height=e.height),"thumbnail"===e.tileClass||"themes__thumb"===e.tileClass){h.annotations=[];var p=Object.keys(h);for(r=0;r<p.length;r++)a=p[r],["xaxis","yaxis","zaxis"].indexOf(a.slice(0,5))>-1&&(h[p[r]].title={text:""});for(r=0;r<u.length;r++){var d=u[r];d.showscale=!1,d.marker&&(d.marker.showscale=!1),n.traceIs(d,"pie-like")&&(d.textposition="none")}}if(Array.isArray(e.annotations))for(r=0;r<e.annotations.length;r++)h.annotations.push(e.annotations[r]);var g=Object.keys(h).filter((function(t){return t.match(/^scene\d*$/)}));if(g.length){var m={};for("thumbnail"===e.tileClass&&(m={title:{text:""},showaxeslabels:!1,showticklabels:!1,linetickenable:!1}),r=0;r<g.length;r++){var v=h[g[r]];v.xaxis||(v.xaxis={}),v.yaxis||(v.yaxis={}),v.zaxis||(v.zaxis={}),i(v.xaxis,m),i(v.yaxis,m),i(v.zaxis,m),v._scene=null}}var y=document.createElement("div");e.tileClass&&(y.className=e.tileClass);var x={gd:y,td:y,layout:h,data:u,config:{staticPlot:void 0===e.staticPlot||e.staticPlot,plotGlPixelRatio:void 0===e.plotGlPixelRatio?2:e.plotGlPixelRatio,displaylogo:e.displaylogo||!1,showLink:e.showLink||!1,showTips:e.showTips||!1,mapboxAccessToken:f.mapboxAccessToken}};return"transparent"!==e.setBackground&&(x.config.setBackground=e.setBackground||"opaque"),x.gd.defaultLayout=s(e.tileClass),x}},{"../lib":728,"../registry":859}],861:[function(t,e,r){"use strict";var n=t("../lib"),a=t("../plot_api/to_image"),i=t("./filesaver"),o=t("./helpers");e.exports=function(t,e){var r;return n.isPlainObject(t)||(r=n.getGraphDiv(t)),(e=e||{}).format=e.format||"png",e.imageDataOnly=!0,new Promise((function(s,l){r&&r._snapshotInProgress&&l(new Error("Snapshotting already in progress.")),n.isIE()&&"svg"!==e.format&&l(new Error(o.MSG_IE_BAD_FORMAT)),r&&(r._snapshotInProgress=!0);var c=a(t,e),u=e.filename||t.fn||"newplot";u+="."+e.format.replace("-","."),c.then((function(t){return r&&(r._snapshotInProgress=!1),i(t,u,e.format)})).then((function(t){s(t)})).catch((function(t){r&&(r._snapshotInProgress=!1),l(t)}))}))}},{"../lib":728,"../plot_api/to_image":769,"./filesaver":862,"./helpers":863}],862:[function(t,e,r){"use strict";var n=t("../lib"),a=t("./helpers");e.exports=function(t,e,r){var i=document.createElement("a"),o="download"in i;return new Promise((function(s,l){var c,u;if(n.isIE9orBelow()&&l(new Error("IE < 10 unsupported")),n.isSafari()){var h="svg"===r?",":";base64,";return a.octetStream(h+encodeURIComponent(t)),s(e)}return n.isIE()?(c=a.createBlob(t,"svg"),window.navigator.msSaveBlob(c,e),c=null,s(e)):o?(c=a.createBlob(t,r),u=a.createObjectURL(c),i.href=u,i.download=e,document.body.appendChild(i),i.click(),document.body.removeChild(i),a.revokeObjectURL(u),c=null,s(e)):void l(new Error("download error"))}))}},{"../lib":728,"./helpers":863}],863:[function(t,e,r){"use strict";var n=t("../registry");r.getDelay=function(t){return t._has&&(t._has("gl3d")||t._has("gl2d")||t._has("mapbox"))?500:0},r.getRedrawFunc=function(t){return function(){var e=t._fullLayout||{};!(e._has&&e._has("polar"))&&t.data&&t.data[0]&&t.data[0].r||n.getComponentMethod("colorbar","draw")(t)}},r.encodeSVG=function(t){return"data:image/svg+xml,"+encodeURIComponent(t)},r.encodeJSON=function(t){return"data:application/json,"+encodeURIComponent(t)};var a=window.URL||window.webkitURL;r.createObjectURL=function(t){return a.createObjectURL(t)},r.revokeObjectURL=function(t){return a.revokeObjectURL(t)},r.createBlob=function(t,e){if("svg"===e)return new window.Blob([t],{type:"image/svg+xml;charset=utf-8"});if("full-json"===e)return new window.Blob([t],{type:"application/json;charset=utf-8"});var r=function(t){for(var e=t.length,r=new ArrayBuffer(e),n=new Uint8Array(r),a=0;a<e;a++)n[a]=t.charCodeAt(a);return r}(window.atob(t));return new window.Blob([r],{type:"image/"+e})},r.octetStream=function(t){document.location.href="data:application/octet-stream"+t},r.IMAGE_URL_PREFIX=/^data:image\/\w+;base64,/,r.MSG_IE_BAD_FORMAT="Sorry IE does not support downloading from canvas. Try {format:'svg'} instead."},{"../registry":859}],864:[function(t,e,r){"use strict";var n=t("./helpers"),a={getDelay:n.getDelay,getRedrawFunc:n.getRedrawFunc,clone:t("./cloneplot"),toSVG:t("./tosvg"),svgToImg:t("./svgtoimg"),toImage:t("./toimage"),downloadImage:t("./download")};e.exports=a},{"./cloneplot":860,"./download":861,"./helpers":863,"./svgtoimg":865,"./toimage":866,"./tosvg":867}],865:[function(t,e,r){"use strict";var n=t("../lib"),a=t("events").EventEmitter,i=t("./helpers");e.exports=function(t){var e=t.emitter||new a,r=new Promise((function(a,o){var s=window.Image,l=t.svg,c=t.format||"png";if(n.isIE()&&"svg"!==c){var u=new Error(i.MSG_IE_BAD_FORMAT);return o(u),t.promise?r:e.emit("error",u)}var h,f,p=t.canvas,d=t.scale||1,g=t.width||300,m=t.height||150,v=d*g,y=d*m,x=p.getContext("2d"),b=new s;"svg"===c||n.isIE9orBelow()||n.isSafari()?f=i.encodeSVG(l):(h=i.createBlob(l,"svg"),f=i.createObjectURL(h)),p.width=v,p.height=y,b.onload=function(){var r;switch(h=null,i.revokeObjectURL(f),"svg"!==c&&x.drawImage(b,0,0,v,y),c){case"jpeg":r=p.toDataURL("image/jpeg");break;case"png":r=p.toDataURL("image/png");break;case"webp":r=p.toDataURL("image/webp");break;case"svg":r=f;break;default:var n="Image format is not jpeg, png, svg or webp.";if(o(new Error(n)),!t.promise)return e.emit("error",n)}a(r),t.promise||e.emit("success",r)},b.onerror=function(r){if(h=null,i.revokeObjectURL(f),o(r),!t.promise)return e.emit("error",r)},b.src=f}));return t.promise?r:e}},{"../lib":728,"./helpers":863,events:107}],866:[function(t,e,r){"use strict";var n=t("events").EventEmitter,a=t("../registry"),i=t("../lib"),o=t("./helpers"),s=t("./cloneplot"),l=t("./tosvg"),c=t("./svgtoimg");e.exports=function(t,e){var r=new n,u=s(t,{format:"png"}),h=u.gd;h.style.position="absolute",h.style.left="-5000px",document.body.appendChild(h);var f=o.getRedrawFunc(h);return a.call("plot",h,u.data,u.layout,u.config).then(f).then((function(){var t=o.getDelay(h._fullLayout);setTimeout((function(){var t=l(h),n=document.createElement("canvas");n.id=i.randstr(),(r=c({format:e.format,width:h._fullLayout.width,height:h._fullLayout.height,canvas:n,emitter:r,svg:t})).clean=function(){h&&document.body.removeChild(h)}}),t)})).catch((function(t){r.emit("error",t)})),r}},{"../lib":728,"../registry":859,"./cloneplot":860,"./helpers":863,"./svgtoimg":865,"./tosvg":867,events:107}],867:[function(t,e,r){"use strict";var n=t("d3"),a=t("../lib"),i=t("../components/drawing"),o=t("../components/color"),s=t("../constants/xmlns_namespaces"),l=/"/g,c=new RegExp('("TOBESTRIPPED)|(TOBESTRIPPED")',"g");e.exports=function(t,e,r){var u,h=t._fullLayout,f=h._paper,p=h._toppaper,d=h.width,g=h.height;f.insert("rect",":first-child").call(i.setRect,0,0,d,g).call(o.fill,h.paper_bgcolor);var m=h._basePlotModules||[];for(u=0;u<m.length;u++){var v=m[u];v.toSVG&&v.toSVG(t)}if(p){var y=p.node().childNodes,x=Array.prototype.slice.call(y);for(u=0;u<x.length;u++){var b=x[u];b.childNodes.length&&f.node().appendChild(b)}}if(h._draggers&&h._draggers.remove(),f.node().style.background="",f.selectAll("text").attr({"data-unformatted":null,"data-math":null}).each((function(){var t=n.select(this);if("hidden"!==this.style.visibility&&"none"!==this.style.display){t.style({visibility:null,display:null});var e=this.style.fontFamily;e&&-1!==e.indexOf('"')&&t.style("font-family",e.replace(l,"TOBESTRIPPED"))}else t.remove()})),h._gradientUrlQueryParts){var _=[];for(var w in h._gradientUrlQueryParts)_.push(w);_.length&&f.selectAll(_.join(",")).each((function(){var t=n.select(this),e=this.style.fill;e&&-1!==e.indexOf("url(")&&t.style("fill",e.replace(l,"TOBESTRIPPED"));var r=this.style.stroke;r&&-1!==r.indexOf("url(")&&t.style("stroke",r.replace(l,"TOBESTRIPPED"))}))}"pdf"!==e&&"eps"!==e||f.selectAll("#MathJax_SVG_glyphs path").attr("stroke-width",0),f.node().setAttributeNS(s.xmlns,"xmlns",s.svg),f.node().setAttributeNS(s.xmlns,"xmlns:xlink",s.xlink),"svg"===e&&r&&(f.attr("width",r*d),f.attr("height",r*g),f.attr("viewBox","0 0 "+d+" "+g));var T=(new window.XMLSerializer).serializeToString(f.node());return T=function(t){var e=n.select("body").append("div").style({display:"none"}).html(""),r=t.replace(/(&[^;]*;)/gi,(function(t){return"&lt;"===t?"&#60;":"&rt;"===t?"&#62;":-1!==t.indexOf("<")||-1!==t.indexOf(">")?"":e.html(t).text()}));return e.remove(),r}(T),T=(T=T.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&amp;")).replace(c,"'"),a.isIE()&&(T=(T=(T=T.replace(/"/gi,"'")).replace(/(\('#)([^']*)('\))/gi,'("#$2")')).replace(/(\\')/gi,'"')),T}},{"../components/color":595,"../components/drawing":617,"../constants/xmlns_namespaces":705,"../lib":728,d3:164}],868:[function(t,e,r){"use strict";var n=t("../../lib");e.exports=function(t,e){for(var r=0;r<t.length;r++)t[r].i=r;n.mergeArray(e.text,t,"tx"),n.mergeArray(e.hovertext,t,"htx");var a=e.marker;if(a){n.mergeArray(a.opacity,t,"mo",!0),n.mergeArray(a.color,t,"mc");var i=a.line;i&&(n.mergeArray(i.color,t,"mlc"),n.mergeArrayCastPositive(i.width,t,"mlw"))}}},{"../../lib":728}],869:[function(t,e,r){"use strict";var n=t("../scatter/attributes"),a=t("../../plots/template_attributes").hovertemplateAttrs,i=t("../../plots/template_attributes").texttemplateAttrs,o=t("../../components/colorscale/attributes"),s=t("../../plots/font_attributes"),l=t("./constants"),c=t("../../lib/extend").extendFlat,u=s({editType:"calc",arrayOk:!0,colorEditType:"style"}),h=c({},n.marker.line.width,{dflt:0}),f=c({width:h,editType:"calc"},o("marker.line")),p=c({line:f,editType:"calc"},o("marker"),{opacity:{valType:"number",arrayOk:!0,dflt:1,min:0,max:1,editType:"style"}});e.exports={x:n.x,x0:n.x0,dx:n.dx,y:n.y,y0:n.y0,dy:n.dy,text:n.text,texttemplate:i({editType:"plot"},{keys:l.eventDataKeys}),hovertext:n.hovertext,hovertemplate:a({},{keys:l.eventDataKeys}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"none",arrayOk:!0,editType:"calc"},insidetextanchor:{valType:"enumerated",values:["end","middle","start"],dflt:"end",editType:"plot"},textangle:{valType:"angle",dflt:"auto",editType:"plot"},textfont:c({},u,{}),insidetextfont:c({},u,{}),outsidetextfont:c({},u,{}),constraintext:{valType:"enumerated",values:["inside","outside","both","none"],dflt:"both",editType:"calc"},cliponaxis:c({},n.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:p,offsetgroup:{valType:"string",dflt:"",editType:"calc"},alignmentgroup:{valType:"string",dflt:"",editType:"calc"},selected:{marker:{opacity:n.selected.marker.opacity,color:n.selected.marker.color,editType:"style"},textfont:n.selected.textfont,editType:"style"},unselected:{marker:{opacity:n.unselected.marker.opacity,color:n.unselected.marker.color,editType:"style"},textfont:n.unselected.textfont,editType:"style"},r:n.r,t:n.t,_deprecated:{bardir:{valType:"enumerated",editType:"calc",values:["v","h"]}}}},{"../../components/colorscale/attributes":602,"../../lib/extend":719,"../../plots/font_attributes":804,"../../plots/template_attributes":854,"../scatter/attributes":1134,"./constants":871}],870:[function(t,e,r){"use strict";var n=t("../../plots/cartesian/axes"),a=t("../../components/colorscale/helpers").hasColorscale,i=t("../../components/colorscale/calc"),o=t("./arrays_to_calcdata"),s=t("../scatter/calc_selection");e.exports=function(t,e){var r,l,c=n.getFromId(t,e.xaxis||"x"),u=n.getFromId(t,e.yaxis||"y"),h={msUTC:!(!e.base&&0!==e.base)};"h"===e.orientation?(r=c.makeCalcdata(e,"x",h),l=u.makeCalcdata(e,"y")):(r=u.makeCalcdata(e,"y",h),l=c.makeCalcdata(e,"x"));for(var f=Math.min(l.length,r.length),p=new Array(f),d=0;d<f;d++)p[d]={p:l[d],s:r[d]},e.ids&&(p[d].id=String(e.ids[d]));return a(e,"marker")&&i(t,e,{vals:e.marker.color,containerStr:"marker",cLetter:"c"}),a(e,"marker.line")&&i(t,e,{vals:e.marker.line.color,containerStr:"marker.line",cLetter:"c"}),o(p,e),s(p,e),p}},{"../../components/colorscale/calc":603,"../../components/colorscale/helpers":606,"../../plots/cartesian/axes":776,"../scatter/calc_selection":1136,"./arrays_to_calcdata":868}],871:[function(t,e,r){"use strict";e.exports={TEXTPAD:3,eventDataKeys:["value","label"]}},{}],872:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../../lib").isArrayOrTypedArray,i=t("../../constants/numerical").BADNUM,o=t("../../registry"),s=t("../../plots/cartesian/axes"),l=t("../../plots/cartesian/axis_ids").getAxisGroup,c=t("./sieve.js");function u(t,e,r,o,u){if(o.length){var b,_,w,T;switch(function(t,e){var r,i;for(r=0;r<e.length;r++){var o,s=e[r],l=s[0].trace,c="funnel"===l.type?l._base:l.base,u="h"===l.orientation?l.xcalendar:l.ycalendar,h="category"===t.type||"multicategory"===t.type?function(){return null}:t.d2c;if(a(c)){for(i=0;i<Math.min(c.length,s.length);i++)o=h(c[i],0,u),n(o)?(s[i].b=+o,s[i].hasB=1):s[i].b=0;for(;i<s.length;i++)s[i].b=0}else{o=h(c,0,u);var f=n(o);for(o=f?o:0,i=0;i<s.length;i++)s[i].b=o,f&&(s[i].hasB=1)}}}(r,o),u.mode){case"overlay":h(e,r,o,u);break;case"group":for(b=[],_=[],w=0;w<o.length;w++)void 0===(T=o[w])[0].trace.offset?_.push(T):b.push(T);_.length&&function(t,e,r,n,a){var o=new c(n,{sepNegVal:!1,overlapNoMerge:!a.norm});(function(t,e,r,n){for(var a=t._fullLayout,i=r.positions,o=r.distinctPositions,s=r.minDiff,c=r.traces,u=c.length,h=i.length!==o.length,f=s*(1-n.gap),m=l(a,e._id)+c[0][0].trace.orientation,v=a._alignmentOpts[m]||{},y=0;y<u;y++){var x,b,_=c[y],w=_[0].trace,T=v[w.alignmentgroup]||{},k=Object.keys(T.offsetGroups||{}).length,A=(x=k?f/k:h?f/u:f)*(1-(n.groupgap||0));b=k?((2*w._offsetIndex+1-k)*x-A)/2:h?((2*y+1-u)*x-A)/2:-A/2;var M=_[0].t;M.barwidth=A,M.poffset=b,M.bargroupwidth=f,M.bardelta=s}r.binWidth=c[0][0].t.barwidth/100,p(r),d(e,r),g(e,r,h)})(t,e,o,a),function(t){for(var e=t.traces,r=0;r<e.length;r++){var n=e[r];if(void 0===n[0].trace.base)for(var a=new c([n],{sepNegVal:!0,overlapNoMerge:!0}),o=0;o<n.length;o++){var s=n[o];if(s.p!==i){var l=a.put(s.p,s.b+s.s);l&&(s.b=l)}}}}(o),a.norm?(v(o),y(r,o,a)):m(r,o)}(t,e,r,_,u),b.length&&h(e,r,b,u);break;case"stack":case"relative":for(b=[],_=[],w=0;w<o.length;w++)void 0===(T=o[w])[0].trace.base?_.push(T):b.push(T);_.length&&function(t,e,r,n,a){var o=new c(n,{sepNegVal:"relative"===a.mode,overlapNoMerge:!(a.norm||"stack"===a.mode||"relative"===a.mode)});f(e,o,a),function(t,e,r){var n,a,o,l,c,u,h=x(t),f=e.traces;for(l=0;l<f.length;l++)if(n=f[l],"funnel"===(a=n[0].trace).type)for(c=0;c<n.length;c++)(u=n[c]).s!==i&&e.put(u.p,-.5*u.s);for(l=0;l<f.length;l++){n=f[l],a=n[0].trace,o="funnel"===a.type;var p=[];for(c=0;c<n.length;c++)if((u=n[c]).s!==i){var d;d=o?u.s:u.s+u.b;var g=e.put(u.p,d),m=g+d;u.b=g,u[h]=m,r.norm||(p.push(m),u.hasB&&p.push(g))}r.norm||(a._extremes[t._id]=s.findExtremes(t,p,{tozero:!0,padded:!0}))}}(r,o,a);for(var l=0;l<n.length;l++)for(var u=n[l],h=0;h<u.length;h++){var p=u[h];if(p.s!==i)p.b+p.s===o.get(p.p,p.s)&&(p._outmost=!0)}a.norm&&y(r,o,a)}(0,e,r,_,u),b.length&&h(e,r,b,u)}!function(t,e){var r,a,i,o=x(e),s={},l=1/0,c=-1/0;for(r=0;r<t.length;r++)for(i=t[r],a=0;a<i.length;a++){var u=i[a].p;n(u)&&(l=Math.min(l,u),c=Math.max(c,u))}var h=1e4/(c-l),f=s.round=function(t){return String(Math.round(h*(t-l)))};for(r=0;r<t.length;r++){(i=t[r])[0].t.extents=s;var p=i[0].t.poffset,d=Array.isArray(p);for(a=0;a<i.length;a++){var g=i[a],m=g[o]-g.w/2;if(n(m)){var v=g[o]+g.w/2,y=f(g.p);s[y]?s[y]=[Math.min(m,s[y][0]),Math.max(v,s[y][1])]:s[y]=[m,v]}g.p0=g.p+(d?p[a]:p),g.p1=g.p0+g.w,g.s0=g.b,g.s1=g.s0+g.s}}}(o,e)}}function h(t,e,r,n){for(var a=0;a<r.length;a++){var i=r[a],o=new c([i],{sepNegVal:!1,overlapNoMerge:!n.norm});f(t,o,n),n.norm?(v(o),y(e,o,n)):m(e,o)}}function f(t,e,r){for(var n=e.minDiff,a=e.traces,i=n*(1-r.gap),o=i*(1-(r.groupgap||0)),s=-o/2,l=0;l<a.length;l++){var c=a[l][0].t;c.barwidth=o,c.poffset=s,c.bargroupwidth=i,c.bardelta=n}e.binWidth=a[0][0].t.barwidth/100,p(e),d(t,e),g(t,e)}function p(t){var e,r,i=t.traces;for(e=0;e<i.length;e++){var o,s=i[e],l=s[0],c=l.trace,u=l.t,h=c._offset||c.offset,f=u.poffset;if(a(h)){for(o=Array.prototype.slice.call(h,0,s.length),r=0;r<o.length;r++)n(o[r])||(o[r]=f);for(r=o.length;r<s.length;r++)o.push(f);u.poffset=o}else void 0!==h&&(u.poffset=h);var p=c._width||c.width,d=u.barwidth;if(a(p)){var g=Array.prototype.slice.call(p,0,s.length);for(r=0;r<g.length;r++)n(g[r])||(g[r]=d);for(r=g.length;r<s.length;r++)g.push(d);if(u.barwidth=g,void 0===h){for(o=[],r=0;r<s.length;r++)o.push(f+(d-g[r])/2);u.poffset=o}}else void 0!==p&&(u.barwidth=p,void 0===h&&(u.poffset=f+(d-p)/2))}}function d(t,e){for(var r=e.traces,n=x(t),a=0;a<r.length;a++)for(var i=r[a],o=i[0].t,s=o.poffset,l=Array.isArray(s),c=o.barwidth,u=Array.isArray(c),h=0;h<i.length;h++){var f=i[h],p=f.w=u?c[h]:c;f[n]=f.p+(l?s[h]:s)+p/2}}function g(t,e,r){var n=e.traces,a=e.minDiff/2;s.minDtick(t,e.minDiff,e.distinctPositions[0],r);for(var i=0;i<n.length;i++){var o,l,c,u,h=n[i],f=h[0],p=f.trace,d=[];for(u=0;u<h.length;u++)l=(o=h[u]).p-a,c=o.p+a,d.push(l,c);if(p.width||p.offset){var g=f.t,m=g.poffset,v=g.barwidth,y=Array.isArray(m),x=Array.isArray(v);for(u=0;u<h.length;u++){o=h[u];var b=y?m[u]:m,_=x?v[u]:v;c=(l=o.p+b)+_,d.push(l,c)}}p._extremes[t._id]=s.findExtremes(t,d,{padded:!1})}}function m(t,e){for(var r=e.traces,n=x(t),a=0;a<r.length;a++){for(var i=r[a],o=i[0].trace,l=[],c=!1,u=0;u<i.length;u++){var h=i[u],f=h.b,p=f+h.s;h[n]=p,l.push(p),h.hasB&&l.push(f),h.hasB&&h.b||(c=!0)}o._extremes[t._id]=s.findExtremes(t,l,{tozero:c,padded:!0})}}function v(t){for(var e=t.traces,r=0;r<e.length;r++)for(var n=e[r],a=0;a<n.length;a++){var o=n[a];o.s!==i&&t.put(o.p,o.b+o.s)}}function y(t,e,r){var a=e.traces,o=x(t),l="fraction"===r.norm?1:100,c=l/1e9,u=t.l2c(t.c2l(0)),h="stack"===r.mode?l:u;function f(e){return n(t.c2l(e))&&(e<u-c||e>h+c||!n(u))}for(var p=0;p<a.length;p++){for(var d=a[p],g=d[0].trace,m=[],v=!1,y=!1,b=0;b<d.length;b++){var _=d[b];if(_.s!==i){var w=Math.abs(l/e.get(_.p,_.s));_.b*=w,_.s*=w;var T=_.b,k=T+_.s;_[o]=k,m.push(k),y=y||f(k),_.hasB&&(m.push(T),y=y||f(T)),_.hasB&&_.b||(v=!0)}}g._extremes[t._id]=s.findExtremes(t,m,{tozero:v,padded:y})}}function x(t){return t._id.charAt(0)}e.exports={crossTraceCalc:function(t,e){for(var r=e.xaxis,n=e.yaxis,a=t._fullLayout,i=t._fullData,s=t.calcdata,l=[],c=[],h=0;h<i.length;h++){var f=i[h];if(!0===f.visible&&o.traceIs(f,"bar")&&f.xaxis===r._id&&f.yaxis===n._id&&("h"===f.orientation?l.push(s[h]):c.push(s[h]),f._computePh))for(var p=t.calcdata[h],d=0;d<p.length;d++)"function"==typeof p[d].ph0&&(p[d].ph0=p[d].ph0()),"function"==typeof p[d].ph1&&(p[d].ph1=p[d].ph1())}var g={mode:a.barmode,norm:a.barnorm,gap:a.bargap,groupgap:a.bargroupgap};u(t,r,n,c,g),u(t,n,r,l,g)},setGroupPositions:u}},{"../../constants/numerical":704,"../../lib":728,"../../plots/cartesian/axes":776,"../../plots/cartesian/axis_ids":779,"../../registry":859,"./sieve.js":882,"fast-isnumeric":236}],873:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../components/color"),i=t("../../registry"),o=t("../scatter/xy_defaults"),s=t("./style_defaults"),l=t("../../plots/cartesian/axis_ids").getAxisGroup,c=t("./attributes"),u=n.coerceFont;function h(t,e,r,n){var a=e.orientation,i=e[{v:"x",h:"y"}[a]+"axis"],o=l(r,i)+a,s=r._alignmentOpts||{},c=n("alignmentgroup"),u=s[o];u||(u=s[o]={});var h=u[c];h?h.traces.push(e):h=u[c]={traces:[e],alignmentIndex:Object.keys(u).length,offsetGroups:{}};var f=n("offsetgroup"),p=h.offsetGroups,d=p[f];f&&(d||(d=p[f]={offsetIndex:Object.keys(p).length}),e._offsetIndex=d.offsetIndex)}function f(t,e,r,a,i,o){var s=!(!1===(o=o||{}).moduleHasSelected),l=!(!1===o.moduleHasUnselected),c=!(!1===o.moduleHasConstrain),h=!(!1===o.moduleHasCliponaxis),f=!(!1===o.moduleHasTextangle),p=!(!1===o.moduleHasInsideanchor),d=!!o.hasPathbar,g=Array.isArray(i)||"auto"===i,m=g||"inside"===i,v=g||"outside"===i;if(m||v){var y=u(a,"textfont",r.font),x=n.extendFlat({},y),b=!(t.textfont&&t.textfont.color);if(b&&delete x.color,u(a,"insidetextfont",x),d){var _=n.extendFlat({},y);b&&delete _.color,u(a,"pathbar.textfont",_)}v&&u(a,"outsidetextfont",y),s&&a("selected.textfont.color"),l&&a("unselected.textfont.color"),c&&a("constraintext"),h&&a("cliponaxis"),f&&a("textangle"),a("texttemplate")}m&&p&&a("insidetextanchor")}e.exports={supplyDefaults:function(t,e,r,l){function u(r,a){return n.coerce(t,e,c,r,a)}if(o(t,e,l,u)){u("orientation",e.x&&!e.y?"h":"v"),u("base"),u("offset"),u("width"),u("text"),u("hovertext"),u("hovertemplate");var h=u("textposition");f(t,e,l,u,h,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),s(t,e,u,r,l);var p=(e.marker.line||{}).color,d=i.getComponentMethod("errorbars","supplyDefaults");d(t,e,p||a.defaultLine,{axis:"y"}),d(t,e,p||a.defaultLine,{axis:"x",inherit:"y"}),n.coerceSelectionMarkerOpacity(e,u)}else e.visible=!1},crossTraceDefaults:function(t,e){var r;function a(t){return n.coerce(r._input,r,c,t)}if("group"===e.barmode)for(var i=0;i<t.length;i++)"bar"===(r=t[i]).type&&(r._input,h(0,r,e,a))},handleGroupingDefaults:h,handleText:f}},{"../../components/color":595,"../../lib":728,"../../plots/cartesian/axis_ids":779,"../../registry":859,"../scatter/xy_defaults":1160,"./attributes":869,"./style_defaults":884}],874:[function(t,e,r){"use strict";e.exports=function(t,e,r){return t.x="xVal"in e?e.xVal:e.x,t.y="yVal"in e?e.yVal:e.y,e.xa&&(t.xaxis=e.xa),e.ya&&(t.yaxis=e.ya),"h"===r.orientation?(t.label=t.y,t.value=t.x):(t.label=t.x,t.value=t.y),t}},{}],875:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("tinycolor2"),i=t("../../lib").isArrayOrTypedArray;r.coerceString=function(t,e,r){if("string"==typeof e){if(e||!t.noBlank)return e}else if(("number"==typeof e||!0===e)&&!t.strict)return String(e);return void 0!==r?r:t.dflt},r.coerceNumber=function(t,e,r){if(n(e)){e=+e;var a=t.min,i=t.max;if(!(void 0!==a&&e<a||void 0!==i&&e>i))return e}return void 0!==r?r:t.dflt},r.coerceColor=function(t,e,r){return a(e).isValid()?e:void 0!==r?r:t.dflt},r.coerceEnumerated=function(t,e,r){return t.coerceNumber&&(e=+e),-1!==t.values.indexOf(e)?e:void 0!==r?r:t.dflt},r.getValue=function(t,e){var r;return Array.isArray(t)?e<t.length&&(r=t[e]):r=t,r},r.getLineWidth=function(t,e){return 0<e.mlw?e.mlw:i(t.marker.line.width)?0:t.marker.line.width}},{"../../lib":728,"fast-isnumeric":236,tinycolor2:528}],876:[function(t,e,r){"use strict";var n=t("../../components/fx"),a=t("../../registry"),i=t("../../components/color"),o=t("../../lib").fillText,s=t("./helpers").getLineWidth,l=t("../../plots/cartesian/axes").hoverLabelText,c=t("../../constants/numerical").BADNUM;function u(t,e,r,a){var i,s,u,h,f,p,d,g=t.cd,m=g[0].trace,v=g[0].t,y="closest"===a,x="waterfall"===m.type,b=t.maxHoverDistance;function _(t){return t[u]-t.w/2}function w(t){return t[u]+t.w/2}var T=y?_:function(t){return Math.min(_(t),t.p-v.bardelta/2)},k=y?w:function(t){return Math.max(w(t),t.p+v.bardelta/2)};function A(t,e){return n.inbox(t-i,e-i,b+Math.min(1,Math.abs(e-t)/d)-1)}function M(t){return A(T(t),k(t))}function S(t){var e=s,r=t.b,a=t[h];if(x){var i=Math.abs(t.rawS)||0;e>0?a+=i:e<0&&(a-=i)}return n.inbox(r-e,a-e,b+(a-e)/(a-r)-1)}"h"===m.orientation?(i=r,s=e,u="y",h="x",f=S,p=M):(i=e,s=r,u="x",h="y",p=S,f=M);var E=t[u+"a"],C=t[h+"a"];d=Math.abs(E.r2c(E.range[1])-E.r2c(E.range[0]));var L=n.getDistanceFunction(a,f,p,(function(t){return(f(t)+p(t))/2}));if(n.getClosest(g,L,t),!1!==t.index&&g[t.index].p!==c){y||(T=function(t){return Math.min(_(t),t.p-v.bargroupwidth/2)},k=function(t){return Math.max(w(t),t.p+v.bargroupwidth/2)});var P=g[t.index],I=m.base?P.b+P.s:P.s;t[h+"0"]=t[h+"1"]=C.c2p(P[h],!0),t[h+"LabelVal"]=I;var z=v.extents[v.extents.round(P.p)];return t[u+"0"]=E.c2p(y?T(P):z[0],!0),t[u+"1"]=E.c2p(y?k(P):z[1],!0),t[u+"LabelVal"]=P.p,t.labelLabel=l(E,t[u+"LabelVal"]),t.valueLabel=l(C,t[h+"LabelVal"]),t.spikeDistance=(S(P)+function(t){return A(_(t),w(t))}(P))/2-b,t[u+"Spike"]=E.c2p(P.p,!0),o(P,m,t),t.hovertemplate=m.hovertemplate,t}}function h(t,e){var r=e.mcc||t.marker.color,n=e.mlcc||t.marker.line.color,a=s(t,e);return i.opacity(r)?r:i.opacity(n)&&a?n:void 0}e.exports={hoverPoints:function(t,e,r,n){var i=u(t,e,r,n);if(i){var o=i.cd,s=o[0].trace,l=o[i.index];return i.color=h(s,l),a.getComponentMethod("errorbars","hoverInfo")(l,s,i),[i]}},hoverOnBars:u,getTraceColor:h}},{"../../components/color":595,"../../components/fx":635,"../../constants/numerical":704,"../../lib":728,"../../plots/cartesian/axes":776,"../../registry":859,"./helpers":875}],877:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),layoutAttributes:t("./layout_attributes"),supplyDefaults:t("./defaults").supplyDefaults,crossTraceDefaults:t("./defaults").crossTraceDefaults,supplyLayoutDefaults:t("./layout_defaults"),calc:t("./calc"),crossTraceCalc:t("./cross_trace_calc").crossTraceCalc,colorbar:t("../scatter/marker_colorbar"),arraysToCalcdata:t("./arrays_to_calcdata"),plot:t("./plot").plot,style:t("./style").style,styleOnSelect:t("./style").styleOnSelect,hoverPoints:t("./hover").hoverPoints,eventData:t("./event_data"),selectPoints:t("./select"),moduleType:"trace",name:"bar",basePlotModule:t("../../plots/cartesian"),categories:["bar-like","cartesian","svg","bar","oriented","errorBarsOK","showLegend","zoomScale"],animatable:!0,meta:{}}},{"../../plots/cartesian":789,"../scatter/marker_colorbar":1152,"./arrays_to_calcdata":868,"./attributes":869,"./calc":870,"./cross_trace_calc":872,"./defaults":873,"./event_data":874,"./hover":876,"./layout_attributes":878,"./layout_defaults":879,"./plot":880,"./select":881,"./style":883}],878:[function(t,e,r){"use strict";e.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"}}},{}],879:[function(t,e,r){"use strict";var n=t("../../registry"),a=t("../../plots/cartesian/axes"),i=t("../../lib"),o=t("./layout_attributes");e.exports=function(t,e,r){function s(r,n){return i.coerce(t,e,o,r,n)}for(var l=!1,c=!1,u=!1,h={},f=s("barmode"),p=0;p<r.length;p++){var d=r[p];if(n.traceIs(d,"bar")&&d.visible){if(l=!0,"group"===f){var g=d.xaxis+d.yaxis;h[g]&&(u=!0),h[g]=!0}if(d.visible&&"histogram"===d.type)"category"!==a.getFromId({_fullLayout:e},d["v"===d.orientation?"xaxis":"yaxis"]).type&&(c=!0)}}l?("overlay"!==f&&s("barnorm"),s("bargap",c&&!u?0:.2),s("bargroupgap")):delete e.barmode}},{"../../lib":728,"../../plots/cartesian/axes":776,"../../registry":859,"./layout_attributes":878}],880:[function(t,e,r){"use strict";var n=t("d3"),a=t("fast-isnumeric"),i=t("../../lib"),o=t("../../lib/svg_text_utils"),s=t("../../components/color"),l=t("../../components/drawing"),c=t("../../registry"),u=t("../../plots/cartesian/axes").tickText,h=t("./uniform_text"),f=h.recordMinTextSize,p=h.clearMinTextSize,d=t("./style"),g=t("./helpers"),m=t("./constants"),v=t("./attributes"),y=v.text,x=v.textposition,b=t("../../components/fx/helpers").appendArrayPointValue,_=m.TEXTPAD;function w(t){return t.id}function T(t){if(t.ids)return w}function k(t,e){return t<e?1:-1}function A(t,e,r,n){var a;return!e.uniformtext.mode&&M(r)?(n&&(a=n()),t.transition().duration(r.duration).ease(r.easing).each("end",(function(){a&&a()})).each("interrupt",(function(){a&&a()}))):t}function M(t){return t&&t.duration>0}function S(t){return"auto"===t?0:t}function E(t,e){var r=Math.PI/180*e,n=Math.abs(Math.sin(r)),a=Math.abs(Math.cos(r));return{x:t.width*a+t.height*n,y:t.width*n+t.height*a}}function C(t,e,r,n,a,i){var o=!!i.isHorizontal,s=!!i.constrained,l=i.angle||0,c=i.anchor||"end",u="end"===c,h="start"===c,f=((i.leftToRight||0)+1)/2,p=1-f,d=a.width,g=a.height,m=Math.abs(e-t),v=Math.abs(n-r),y=m>2*_&&v>2*_?_:0;m-=2*y,v-=2*y;var x=S(l);"auto"!==l||d<=m&&g<=v||!(d>m||g>v)||(d>v||g>m)&&d<g==m<v||(x+=90);var b=E(a,x),w=1;s&&(w=Math.min(1,m/b.x,v/b.y));var T=a.left*p+a.right*f,A=(a.top+a.bottom)/2,M=(t+_)*p+(e-_)*f,C=(r+n)/2,L=0,P=0;if(h||u){var I=(o?b.x:b.y)/2,z=o?k(t,e):k(r,n);o?h?(M=t+z*y,L=-z*I):(M=e-z*y,L=z*I):h?(C=r+z*y,P=-z*I):(C=n-z*y,P=z*I)}return{textX:T,textY:A,targetX:M,targetY:C,anchorX:L,anchorY:P,scale:w,rotate:x}}e.exports={plot:function(t,e,r,h,m,v){var w=e.xaxis,L=e.yaxis,P=t._fullLayout;m||(m={mode:P.barmode,norm:P.barmode,gap:P.bargap,groupgap:P.bargroupgap},p("bar",P));var I=i.makeTraceGroups(h,r,"trace bars").each((function(r){var c=n.select(this),h=r[0].trace,p="waterfall"===h.type,I="funnel"===h.type,z="bar"===h.type||I,O=0;p&&h.connector.visible&&"between"===h.connector.mode&&(O=h.connector.line.width/2);var D="h"===h.orientation,R=M(m),F=i.ensureSingle(c,"g","points"),B=T(h),N=F.selectAll("g.point").data(i.identity,B);N.enter().append("g").classed("point",!0),N.exit().remove(),N.each((function(c,p){var T,M,I=n.select(this),F=function(t,e,r,n){var a=[],i=[],o=n?e:r,s=n?r:e;return a[0]=o.c2p(t.s0,!0),i[0]=s.c2p(t.p0,!0),a[1]=o.c2p(t.s1,!0),i[1]=s.c2p(t.p1,!0),n?[a,i]:[i,a]}(c,w,L,D),B=F[0][0],N=F[0][1],j=F[1][0],V=F[1][1],U=0==(D?N-B:V-j);if(U&&z&&g.getLineWidth(h,c)&&(U=!1),U||(U=!(a(B)&&a(N)&&a(j)&&a(V))),c.isBlank=U,U&&(D?N=B:V=j),O&&!U&&(D?(B-=k(B,N)*O,N+=k(B,N)*O):(j-=k(j,V)*O,V+=k(j,V)*O)),"waterfall"===h.type){if(!U){var q=h[c.dir].marker;T=q.line.width,M=q.color}}else T=g.getLineWidth(h,c),M=c.mc||h.marker.color;function H(t){var e=n.round(T/2%1,2);return 0===m.gap&&0===m.groupgap?n.round(Math.round(t)-e,2):t}if(!t._context.staticPlot){var G=s.opacity(M)<1||T>.01?H:function(t,e,r){return r&&t===e?t:Math.abs(t-e)>=2?H(t):t>e?Math.ceil(t):Math.floor(t)};B=G(B,N,D),N=G(N,B,D),j=G(j,V,!D),V=G(V,j,!D)}var Y=A(i.ensureSingle(I,"path"),P,m,v);if(Y.style("vector-effect","non-scaling-stroke").attr("d",isNaN((N-B)*(V-j))?"M0,0Z":"M"+B+","+j+"V"+V+"H"+N+"V"+j+"Z").call(l.setClipUrl,e.layerClipId,t),!P.uniformtext.mode&&R){var W=l.makePointStyleFns(h);l.singlePointStyle(c,Y,h,W,t)}!function(t,e,r,n,a,s,c,h,p,m,v){var w,T=e.xaxis,M=e.yaxis,L=t._fullLayout;function P(e,r,n){return i.ensureSingle(e,"text").text(r).attr({class:"bartext bartext-"+w,"text-anchor":"middle","data-notex":1}).call(l.font,n).call(o.convertToTspans,t)}var I=n[0].trace,z="h"===I.orientation,O=function(t,e,r,n,a){var o,s=e[0].trace;o=s.texttemplate?function(t,e,r,n,a){var o=e[0].trace,s=i.castOption(o,r,"texttemplate");if(!s)return"";var l,c,h,f,p="waterfall"===o.type,d="funnel"===o.type;"h"===o.orientation?(l="y",c=a,h="x",f=n):(l="x",c=n,h="y",f=a);function g(t){return u(f,+t,!0).text}var m=e[r],v={};v.label=m.p,v.labelLabel=v[l+"Label"]=(y=m.p,u(c,y,!0).text);var y;var x=i.castOption(o,m.i,"text");(0===x||x)&&(v.text=x);v.value=m.s,v.valueLabel=v[h+"Label"]=g(m.s);var _={};b(_,o,m.i),p&&(v.delta=+m.rawS||m.s,v.deltaLabel=g(v.delta),v.final=m.v,v.finalLabel=g(v.final),v.initial=v.final-v.delta,v.initialLabel=g(v.initial));d&&(v.value=m.s,v.valueLabel=g(v.value),v.percentInitial=m.begR,v.percentInitialLabel=i.formatPercent(m.begR),v.percentPrevious=m.difR,v.percentPreviousLabel=i.formatPercent(m.difR),v.percentTotal=m.sumR,v.percenTotalLabel=i.formatPercent(m.sumR));var w=i.castOption(o,m.i,"customdata");w&&(v.customdata=w);return i.texttemplateString(s,v,t._d3locale,_,v,o._meta||{})}(t,e,r,n,a):s.textinfo?function(t,e,r,n){var a=t[0].trace,o="h"===a.orientation,s="waterfall"===a.type,l="funnel"===a.type;function c(t){return u(o?r:n,+t,!0).text}var h,f=a.textinfo,p=t[e],d=f.split("+"),g=[],m=function(t){return-1!==d.indexOf(t)};m("label")&&g.push((v=t[e].p,u(o?n:r,v,!0).text));var v;m("text")&&(0===(h=i.castOption(a,p.i,"text"))||h)&&g.push(h);if(s){var y=+p.rawS||p.s,x=p.v,b=x-y;m("initial")&&g.push(c(b)),m("delta")&&g.push(c(y)),m("final")&&g.push(c(x))}if(l){m("value")&&g.push(c(p.s));var _=0;m("percent initial")&&_++,m("percent previous")&&_++,m("percent total")&&_++;var w=_>1;m("percent initial")&&(h=i.formatPercent(p.begR),w&&(h+=" of initial"),g.push(h)),m("percent previous")&&(h=i.formatPercent(p.difR),w&&(h+=" of previous"),g.push(h)),m("percent total")&&(h=i.formatPercent(p.sumR),w&&(h+=" of total"),g.push(h))}return g.join("<br>")}(e,r,n,a):g.getValue(s.text,r);return g.coerceString(y,o)}(L,n,a,T,M);w=function(t,e){var r=g.getValue(t.textposition,e);return g.coerceEnumerated(x,r)}(I,a);var D="stack"===m.mode||"relative"===m.mode,R=n[a],F=!D||R._outmost;if(!O||"none"===w||(R.isBlank||s===c||h===p)&&("auto"===w||"inside"===w))return void r.select("text").remove();var B=L.font,N=d.getBarColor(n[a],I),j=d.getInsideTextFont(I,a,B,N),V=d.getOutsideTextFont(I,a,B),U=r.datum();z?"log"===T.type&&U.s0<=0&&(s=T.range[0]<T.range[1]?0:T._length):"log"===M.type&&U.s0<=0&&(h=M.range[0]<M.range[1]?M._length:0);var q,H,G,Y,W,Z=Math.abs(c-s)-2*_,X=Math.abs(p-h)-2*_;"outside"===w&&(F||R.hasB||(w="inside"));if("auto"===w)if(F){w="inside",W=i.ensureUniformFontSize(t,j),q=P(r,O,W),H=l.bBox(q.node()),G=H.width,Y=H.height;var J=G<=Z&&Y<=X,K=G<=X&&Y<=Z,Q=z?Z>=G*(X/Y):X>=Y*(Z/G);G>0&&Y>0&&(J||K||Q)?w="inside":(w="outside",q.remove(),q=null)}else w="inside";if(!q){W=i.ensureUniformFontSize(t,"outside"===w?V:j);var $=(q=P(r,O,W)).attr("transform");if(q.attr("transform",""),H=l.bBox(q.node()),G=H.width,Y=H.height,q.attr("transform",$),G<=0||Y<=0)return void q.remove()}var tt,et,rt=I.textangle;"outside"===w?(et="both"===I.constraintext||"outside"===I.constraintext,tt=function(t,e,r,n,a,i){var o,s=!!i.isHorizontal,l=!!i.constrained,c=i.angle||0,u=a.width,h=a.height,f=Math.abs(e-t),p=Math.abs(n-r);o=s?p>2*_?_:0:f>2*_?_:0;var d=1;l&&(d=s?Math.min(1,p/h):Math.min(1,f/u));var g=S(c),m=E(a,g),v=(s?m.x:m.y)/2,y=(a.left+a.right)/2,x=(a.top+a.bottom)/2,b=(t+e)/2,w=(r+n)/2,T=0,A=0,M=s?k(e,t):k(r,n);s?(b=e-M*o,T=M*v):(w=n+M*o,A=-M*v);return{textX:y,textY:x,targetX:b,targetY:w,anchorX:T,anchorY:A,scale:d,rotate:g}}(s,c,h,p,H,{isHorizontal:z,constrained:et,angle:rt})):(et="both"===I.constraintext||"inside"===I.constraintext,tt=C(s,c,h,p,H,{isHorizontal:z,constrained:et,angle:rt,anchor:I.insidetextanchor}));tt.fontSize=W.size,f(I.type,tt,L),R.transform=tt,A(q,L,m,v).attr("transform",i.getTextTransform(tt))}(t,e,I,r,p,B,N,j,V,m,v),e.layerClipId&&l.hideOutsideRangePoint(c,I.select("text"),w,L,h.xcalendar,h.ycalendar)}));var j=!1===h.cliponaxis;l.setClipUrl(c,j?null:e.layerClipId,t)}));c.getComponentMethod("errorbars","plot")(t,I,e,m)},toMoveInsideBar:C}},{"../../components/color":595,"../../components/drawing":617,"../../components/fx/helpers":631,"../../lib":728,"../../lib/svg_text_utils":752,"../../plots/cartesian/axes":776,"../../registry":859,"./attributes":869,"./constants":871,"./helpers":875,"./style":883,"./uniform_text":885,d3:164,"fast-isnumeric":236}],881:[function(t,e,r){"use strict";function n(t,e,r,n,a){var i=e.c2p(n?t.s0:t.p0,!0),o=e.c2p(n?t.s1:t.p1,!0),s=r.c2p(n?t.p0:t.s0,!0),l=r.c2p(n?t.p1:t.s1,!0);return a?[(i+o)/2,(s+l)/2]:n?[o,(s+l)/2]:[(i+o)/2,l]}e.exports=function(t,e){var r,a=t.cd,i=t.xaxis,o=t.yaxis,s=a[0].trace,l="funnel"===s.type,c="h"===s.orientation,u=[];if(!1===e)for(r=0;r<a.length;r++)a[r].selected=0;else for(r=0;r<a.length;r++){var h=a[r],f="ct"in h?h.ct:n(h,i,o,c,l);e.contains(f,!1,r,t)?(u.push({pointNumber:r,x:i.c2d(h.x),y:o.c2d(h.y)}),h.selected=1):h.selected=0}return u}},{}],882:[function(t,e,r){"use strict";e.exports=i;var n=t("../../lib").distinctVals,a=t("../../constants/numerical").BADNUM;function i(t,e){this.traces=t,this.sepNegVal=e.sepNegVal,this.overlapNoMerge=e.overlapNoMerge;for(var r=1/0,i=[],o=0;o<t.length;o++){for(var s=t[o],l=0;l<s.length;l++){var c=s[l];c.p!==a&&i.push(c.p)}s[0]&&s[0].width1&&(r=Math.min(s[0].width1,r))}this.positions=i;var u=n(i);this.distinctPositions=u.vals,1===u.vals.length&&r!==1/0?this.minDiff=r:this.minDiff=Math.min(u.minDiff,r),this.binWidth=this.minDiff,this.bins={}}i.prototype.put=function(t,e){var r=this.getLabel(t,e),n=this.bins[r]||0;return this.bins[r]=n+e,n},i.prototype.get=function(t,e){var r=this.getLabel(t,e);return this.bins[r]||0},i.prototype.getLabel=function(t,e){return(e<0&&this.sepNegVal?"v":"^")+(this.overlapNoMerge?t:Math.round(t/this.binWidth))}},{"../../constants/numerical":704,"../../lib":728}],883:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../components/color"),i=t("../../components/drawing"),o=t("../../lib"),s=t("../../registry"),l=t("./uniform_text").resizeText,c=t("./attributes"),u=c.textfont,h=c.insidetextfont,f=c.outsidetextfont,p=t("./helpers");function d(t,e,r){i.pointStyle(t.selectAll("path"),e,r),g(t,e,r)}function g(t,e,r){t.selectAll("text").each((function(t){var a=n.select(this),s=o.ensureUniformFontSize(r,m(a,t,e,r));i.font(a,s)}))}function m(t,e,r,n){var a=n._fullLayout.font,i=r.textfont;if(t.classed("bartext-inside")){var o=_(e,r);i=y(r,e.i,a,o)}else t.classed("bartext-outside")&&(i=x(r,e.i,a));return i}function v(t,e,r){return b(u,t.textfont,e,r)}function y(t,e,r,n){var i=v(t,e,r);return(void 0===t._input.textfont||void 0===t._input.textfont.color||Array.isArray(t.textfont.color)&&void 0===t.textfont.color[e])&&(i={color:a.contrast(n),family:i.family,size:i.size}),b(h,t.insidetextfont,e,i)}function x(t,e,r){var n=v(t,e,r);return b(f,t.outsidetextfont,e,n)}function b(t,e,r,n){e=e||{};var a=p.getValue(e.family,r),i=p.getValue(e.size,r),o=p.getValue(e.color,r);return{family:p.coerceString(t.family,a,n.family),size:p.coerceNumber(t.size,i,n.size),color:p.coerceColor(t.color,o,n.color)}}function _(t,e){return"waterfall"===e.type?e[t.dir].marker.color:t.mc||e.marker.color}e.exports={style:function(t){var e=n.select(t).selectAll("g.barlayer").selectAll("g.trace");l(t,e,"bar");var r=e.size(),a=t._fullLayout;e.style("opacity",(function(t){return t[0].trace.opacity})).each((function(t){("stack"===a.barmode&&r>1||0===a.bargap&&0===a.bargroupgap&&!t[0].trace.marker.line.width)&&n.select(this).attr("shape-rendering","crispEdges")})),e.selectAll("g.points").each((function(e){d(n.select(this),e[0].trace,t)})),s.getComponentMethod("errorbars","style")(e)},styleTextPoints:g,styleOnSelect:function(t,e,r){var a=e[0].trace;a.selectedpoints?function(t,e,r){i.selectedPointStyle(t.selectAll("path"),e),function(t,e,r){t.each((function(t){var a,s=n.select(this);if(t.selected){a=o.ensureUniformFontSize(r,m(s,t,e,r));var l=e.selected.textfont&&e.selected.textfont.color;l&&(a.color=l),i.font(s,a)}else i.selectedTextStyle(s,e)}))}(t.selectAll("text"),e,r)}(r,a,t):(d(r,a,t),s.getComponentMethod("errorbars","style")(r))},getInsideTextFont:y,getOutsideTextFont:x,getBarColor:_,resizeText:l}},{"../../components/color":595,"../../components/drawing":617,"../../lib":728,"../../registry":859,"./attributes":869,"./helpers":875,"./uniform_text":885,d3:164}],884:[function(t,e,r){"use strict";var n=t("../../components/color"),a=t("../../components/colorscale/helpers").hasColorscale,i=t("../../components/colorscale/defaults");e.exports=function(t,e,r,o,s){r("marker.color",o),a(t,"marker")&&i(t,e,s,r,{prefix:"marker.",cLetter:"c"}),r("marker.line.color",n.defaultLine),a(t,"marker.line")&&i(t,e,s,r,{prefix:"marker.line.",cLetter:"c"}),r("marker.line.width"),r("marker.opacity"),r("selected.marker.color"),r("unselected.marker.color")}},{"../../components/color":595,"../../components/colorscale/defaults":605,"../../components/colorscale/helpers":606}],885:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../lib");function i(t){return"_"+t+"Text_minsize"}e.exports={recordMinTextSize:function(t,e,r){if(r.uniformtext.mode){var n=i(t),a=r.uniformtext.minsize,o=e.scale*e.fontSize;e.hide=o<a,r[n]=r[n]||1/0,e.hide||(r[n]=Math.min(r[n],Math.max(o,a)))}},clearMinTextSize:function(t,e){e[i(t)]=void 0},resizeText:function(t,e,r){var i=t._fullLayout,o=i["_"+r+"Text_minsize"];if(o){var s,l="hide"===i.uniformtext.mode;switch(r){case"funnelarea":case"pie":case"sunburst":s="g.slice";break;case"treemap":s="g.slice, g.pathbar";break;default:s="g.points > g.point"}e.selectAll(s).each((function(t){var e=t.transform;e&&(e.scale=l&&e.hide?0:o/e.fontSize,n.select(this).select("text").attr("transform",a.getTextTransform(e)))}))}}}},{"../../lib":728,d3:164}],886:[function(t,e,r){"use strict";var n=t("../../plots/template_attributes").hovertemplateAttrs,a=t("../../lib/extend").extendFlat,i=t("../scatterpolar/attributes"),o=t("../bar/attributes");e.exports={r:i.r,theta:i.theta,r0:i.r0,dr:i.dr,theta0:i.theta0,dtheta:i.dtheta,thetaunit:i.thetaunit,base:a({},o.base,{}),offset:a({},o.offset,{}),width:a({},o.width,{}),text:a({},o.text,{}),hovertext:a({},o.hovertext,{}),marker:o.marker,hoverinfo:i.hoverinfo,hovertemplate:n(),selected:o.selected,unselected:o.unselected}},{"../../lib/extend":719,"../../plots/template_attributes":854,"../bar/attributes":869,"../scatterpolar/attributes":1207}],887:[function(t,e,r){"use strict";var n=t("../../components/colorscale/helpers").hasColorscale,a=t("../../components/colorscale/calc"),i=t("../bar/arrays_to_calcdata"),o=t("../bar/cross_trace_calc").setGroupPositions,s=t("../scatter/calc_selection"),l=t("../../registry").traceIs,c=t("../../lib").extendFlat;e.exports={calc:function(t,e){for(var r=t._fullLayout,o=e.subplot,l=r[o].radialaxis,c=r[o].angularaxis,u=l.makeCalcdata(e,"r"),h=c.makeCalcdata(e,"theta"),f=e._length,p=new Array(f),d=u,g=h,m=0;m<f;m++)p[m]={p:g[m],s:d[m]};function v(t){var r=e[t];void 0!==r&&(e["_"+t]=Array.isArray(r)?c.makeCalcdata(e,t):c.d2c(r,e.thetaunit))}return"linear"===c.type&&(v("width"),v("offset")),n(e,"marker")&&a(t,e,{vals:e.marker.color,containerStr:"marker",cLetter:"c"}),n(e,"marker.line")&&a(t,e,{vals:e.marker.line.color,containerStr:"marker.line",cLetter:"c"}),i(p,e),s(p,e),p},crossTraceCalc:function(t,e,r){for(var n=t.calcdata,a=[],i=0;i<n.length;i++){var s=n[i],u=s[0].trace;!0===u.visible&&l(u,"bar")&&u.subplot===r&&a.push(s)}var h=c({},e.radialaxis,{_id:"x"}),f=e.angularaxis;o(t,f,h,a,{mode:e.barmode,norm:e.barnorm,gap:e.bargap,groupgap:e.bargroupgap})}}},{"../../components/colorscale/calc":603,"../../components/colorscale/helpers":606,"../../lib":728,"../../registry":859,"../bar/arrays_to_calcdata":868,"../bar/cross_trace_calc":872,"../scatter/calc_selection":1136}],888:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../scatterpolar/defaults").handleRThetaDefaults,i=t("../bar/style_defaults"),o=t("./attributes");e.exports=function(t,e,r,s){function l(r,a){return n.coerce(t,e,o,r,a)}a(t,e,s,l)?(l("thetaunit"),l("base"),l("offset"),l("width"),l("text"),l("hovertext"),l("hovertemplate"),i(t,e,l,r,s),n.coerceSelectionMarkerOpacity(e,l)):e.visible=!1}},{"../../lib":728,"../bar/style_defaults":884,"../scatterpolar/defaults":1209,"./attributes":886}],889:[function(t,e,r){"use strict";var n=t("../../components/fx"),a=t("../../lib"),i=t("../bar/hover").getTraceColor,o=a.fillText,s=t("../scatterpolar/hover").makeHoverPointText,l=t("../../plots/polar/helpers").isPtInsidePolygon;e.exports=function(t,e,r){var c=t.cd,u=c[0].trace,h=t.subplot,f=h.radialAxis,p=h.angularAxis,d=h.vangles,g=d?l:a.isPtInsideSector,m=t.maxHoverDistance,v=p._period||2*Math.PI,y=Math.abs(f.g2p(Math.sqrt(e*e+r*r))),x=Math.atan2(r,e);f.range[0]>f.range[1]&&(x+=Math.PI);if(n.getClosest(c,(function(t){return g(y,x,[t.rp0,t.rp1],[t.thetag0,t.thetag1],d)?m+Math.min(1,Math.abs(t.thetag1-t.thetag0)/v)-1+(t.rp1-y)/(t.rp1-t.rp0)-1:1/0}),t),!1!==t.index){var b=c[t.index];t.x0=t.x1=b.ct[0],t.y0=t.y1=b.ct[1];var _=a.extendFlat({},b,{r:b.s,theta:b.p});return o(b,u,t),s(_,u,h,t),t.hovertemplate=u.hovertemplate,t.color=i(u,b),t.xLabelVal=t.yLabelVal=void 0,b.s<0&&(t.idealAlign="left"),[t]}}},{"../../components/fx":635,"../../lib":728,"../../plots/polar/helpers":841,"../bar/hover":876,"../scatterpolar/hover":1211}],890:[function(t,e,r){"use strict";e.exports={moduleType:"trace",name:"barpolar",basePlotModule:t("../../plots/polar"),categories:["polar","bar","showLegend"],attributes:t("./attributes"),layoutAttributes:t("./layout_attributes"),supplyDefaults:t("./defaults"),supplyLayoutDefaults:t("./layout_defaults"),calc:t("./calc").calc,crossTraceCalc:t("./calc").crossTraceCalc,plot:t("./plot"),colorbar:t("../scatter/marker_colorbar"),formatLabels:t("../scatterpolar/format_labels"),style:t("../bar/style").style,styleOnSelect:t("../bar/style").styleOnSelect,hoverPoints:t("./hover"),selectPoints:t("../bar/select"),meta:{}}},{"../../plots/polar":842,"../bar/select":881,"../bar/style":883,"../scatter/marker_colorbar":1152,"../scatterpolar/format_labels":1210,"./attributes":886,"./calc":887,"./defaults":888,"./hover":889,"./layout_attributes":891,"./layout_defaults":892,"./plot":893}],891:[function(t,e,r){"use strict";e.exports={barmode:{valType:"enumerated",values:["stack","overlay"],dflt:"stack",editType:"calc"},bargap:{valType:"number",dflt:.1,min:0,max:1,editType:"calc"}}},{}],892:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./layout_attributes");e.exports=function(t,e,r){var i,o={};function s(r,o){return n.coerce(t[i]||{},e[i],a,r,o)}for(var l=0;l<r.length;l++){var c=r[l];"barpolar"===c.type&&!0===c.visible&&(o[i=c.subplot]||(s("barmode"),s("bargap"),o[i]=1))}}},{"../../lib":728,"./layout_attributes":891}],893:[function(t,e,r){"use strict";var n=t("d3"),a=t("fast-isnumeric"),i=t("../../lib"),o=t("../../components/drawing"),s=t("../../plots/polar/helpers");e.exports=function(t,e,r){var l=e.xaxis,c=e.yaxis,u=e.radialAxis,h=e.angularAxis,f=function(t){var e=t.cxx,r=t.cyy;if(t.vangles)return function(n,a,o,l){var c,u;i.angleDelta(o,l)>0?(c=o,u=l):(c=l,u=o);var h=[s.findEnclosingVertexAngles(c,t.vangles)[0],(c+u)/2,s.findEnclosingVertexAngles(u,t.vangles)[1]];return s.pathPolygonAnnulus(n,a,c,u,h,e,r)};return function(t,n,a,o){return i.pathAnnulus(t,n,a,o,e,r)}}(e),p=e.layers.frontplot.select("g.barlayer");i.makeTraceGroups(p,r,"trace bars").each((function(){var r=n.select(this),s=i.ensureSingle(r,"g","points").selectAll("g.point").data(i.identity);s.enter().append("g").style("vector-effect","non-scaling-stroke").style("stroke-miterlimit",2).classed("point",!0),s.exit().remove(),s.each((function(t){var e,r=n.select(this),o=t.rp0=u.c2p(t.s0),s=t.rp1=u.c2p(t.s1),p=t.thetag0=h.c2g(t.p0),d=t.thetag1=h.c2g(t.p1);if(a(o)&&a(s)&&a(p)&&a(d)&&o!==s&&p!==d){var g=u.c2g(t.s1),m=(p+d)/2;t.ct=[l.c2p(g*Math.cos(m)),c.c2p(g*Math.sin(m))],e=f(o,s,p,d)}else e="M0,0Z";i.ensureSingle(r,"path").attr("d",e)})),o.setClipUrl(r,e._hasClipOnAxisFalse?e.clipIds.forTraces:null,t)}))}},{"../../components/drawing":617,"../../lib":728,"../../plots/polar/helpers":841,d3:164,"fast-isnumeric":236}],894:[function(t,e,r){"use strict";var n=t("../scatter/attributes"),a=t("../bar/attributes"),i=t("../../components/color/attributes"),o=t("../../plots/template_attributes").hovertemplateAttrs,s=t("../../lib/extend").extendFlat,l=n.marker,c=l.line;e.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"},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"},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:s({},l.symbol,{arrayOk:!1,editType:"plot"}),opacity:s({},l.opacity,{arrayOk:!1,dflt:1,editType:"style"}),size:s({},l.size,{arrayOk:!1,editType:"calc"}),color:s({},l.color,{arrayOk:!1,editType:"style"}),line:{color:s({},c.color,{arrayOk:!1,dflt:i.defaultLine,editType:"style"}),width:s({},c.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:n.fillcolor,whiskerwidth:{valType:"number",min:0,max:1,dflt:.5,editType:"calc"},offsetgroup:a.offsetgroup,alignmentgroup:a.alignmentgroup,selected:{marker:n.selected.marker,editType:"style"},unselected:{marker:n.unselected.marker,editType:"style"},text:s({},n.text,{}),hovertext:s({},n.hovertext,{}),hovertemplate:o({}),hoveron:{valType:"flaglist",flags:["boxes","points"],dflt:"boxes+points",editType:"style"}}},{"../../components/color/attributes":594,"../../lib/extend":719,"../../plots/template_attributes":854,"../bar/attributes":869,"../scatter/attributes":1134}],895:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../../plots/cartesian/axes"),i=t("../../lib"),o=t("../../constants/numerical").BADNUM,s=i._;e.exports=function(t,e){var r,l,v,y,x,b,_=t._fullLayout,w=a.getFromId(t,e.xaxis||"x"),T=a.getFromId(t,e.yaxis||"y"),k=[],A="violin"===e.type?"_numViolins":"_numBoxes";"h"===e.orientation?(v=w,y="x",x=T,b="y"):(v=T,y="y",x=w,b="x");var M,S,E,C,L,P,I=function(t,e,r,a){var o,s=e+"0"in t,l="d"+e in t;if(e in t||s&&l)return r.makeCalcdata(t,e);o=s?t[e+"0"]:"name"in t&&("category"===r.type||n(t.name)&&-1!==["linear","log"].indexOf(r.type)||i.isDateTime(t.name)&&"date"===r.type)?t.name:a;for(var c="multicategory"===r.type?r.r2c_just_indices(o):r.d2c(o,0,t[e+"calendar"]),u=t._length,h=new Array(u),f=0;f<u;f++)h[f]=c;return h}(e,b,x,_[A]),z=i.distinctVals(I),O=z.vals,D=z.minDiff/2,R="all"===(e.boxpoints||e.points)?i.identity:function(t){return t.v<M.lf||t.v>M.uf};if(e._hasPreCompStats){var F=e[y],B=function(t){return v.d2c((e[t]||[])[r])},N=1/0,j=-1/0;for(r=0;r<e._length;r++){var V=I[r];if(n(V)){if((M={}).pos=M[b]=V,M.q1=B("q1"),M.med=B("median"),M.q3=B("q3"),S=[],F&&i.isArrayOrTypedArray(F[r]))for(l=0;l<F[r].length;l++)(P=v.d2c(F[r][l]))!==o&&(c(L={v:P,i:[r,l]},e,[r,l]),S.push(L));if(M.pts=S.sort(u),C=(E=M[y]=S.map(h)).length,M.med!==o&&M.q1!==o&&M.q3!==o&&M.med>=M.q1&&M.q3>=M.med){var U=B("lowerfence");M.lf=U!==o&&U<=M.q1?U:f(M,E,C);var q=B("upperfence");M.uf=q!==o&&q>=M.q3?q:p(M,E,C);var H=B("mean");M.mean=H!==o?H:C?i.mean(E,C):(M.q1+M.q3)/2;var G=B("sd");M.sd=H!==o&&G>=0?G:C?i.stdev(E,C,M.mean):M.q3-M.q1,M.lo=d(M),M.uo=g(M);var Y=B("notchspan");Y=Y!==o&&Y>0?Y:m(M,C),M.ln=M.med-Y,M.un=M.med+Y;var W=M.lf,Z=M.uf;e.boxpoints&&E.length&&(W=Math.min(W,E[0]),Z=Math.max(Z,E[C-1])),e.notched&&(W=Math.min(W,M.ln),Z=Math.max(Z,M.un)),M.min=W,M.max=Z}else{var X;i.warn(["Invalid input - make sure that q1 <= median <= q3","q1 = "+M.q1,"median = "+M.med,"q3 = "+M.q3].join("\n")),X=M.med!==o?M.med:M.q1!==o?M.q3!==o?(M.q1+M.q3)/2:M.q1:M.q3!==o?M.q3:0,M.med=X,M.q1=M.q3=X,M.lf=M.uf=X,M.mean=M.sd=X,M.ln=M.un=X,M.min=M.max=X}N=Math.min(N,M.min),j=Math.max(j,M.max),M.pts2=S.filter(R),k.push(M)}}e._extremes[v._id]=a.findExtremes(v,[N,j],{padded:!0})}else{var J=v.makeCalcdata(e,y),K=function(t,e){for(var r=t.length,n=new Array(r+1),a=0;a<r;a++)n[a]=t[a]-e;return n[r]=t[r-1]+e,n}(O,D),Q=O.length,$=function(t){for(var e=new Array(t),r=0;r<t;r++)e[r]=[];return e}(Q);for(r=0;r<e._length;r++)if(P=J[r],n(P)){var tt=i.findBin(I[r],K);tt>=0&&tt<Q&&(c(L={v:P,i:r},e,r),$[tt].push(L))}var et=1/0,rt=-1/0,nt=e.quartilemethod,at="exclusive"===nt,it="inclusive"===nt;for(r=0;r<Q;r++)if($[r].length>0){var ot,st;if((M={}).pos=M[b]=O[r],S=M.pts=$[r].sort(u),C=(E=M[y]=S.map(h)).length,M.min=E[0],M.max=E[C-1],M.mean=i.mean(E,C),M.sd=i.stdev(E,C,M.mean),M.med=i.interp(E,.5),C%2&&(at||it))at?(ot=E.slice(0,C/2),st=E.slice(C/2+1)):it&&(ot=E.slice(0,C/2+1),st=E.slice(C/2)),M.q1=i.interp(ot,.5),M.q3=i.interp(st,.5);else M.q1=i.interp(E,.25),M.q3=i.interp(E,.75);M.lf=f(M,E,C),M.uf=p(M,E,C),M.lo=d(M),M.uo=g(M);var lt=m(M,C);M.ln=M.med-lt,M.un=M.med+lt,et=Math.min(et,M.ln),rt=Math.max(rt,M.un),M.pts2=S.filter(R),k.push(M)}e._extremes[v._id]=a.findExtremes(v,e.notched?J.concat([et,rt]):J,{padded:!0})}return function(t,e){if(i.isArrayOrTypedArray(e.selectedpoints))for(var r=0;r<t.length;r++){for(var n=t[r].pts||[],a={},o=0;o<n.length;o++)a[n[o].i]=o;i.tagSelected(n,e,a)}}(k,e),k.length>0?(k[0].t={num:_[A],dPos:D,posLetter:b,valLetter:y,labels:{med:s(t,"median:"),min:s(t,"min:"),q1:s(t,"q1:"),q3:s(t,"q3:"),max:s(t,"max:"),mean:"sd"===e.boxmean?s(t,"mean \xb1 \u03c3:"):s(t,"mean:"),lf:s(t,"lower fence:"),uf:s(t,"upper fence:")}},_[A]++,k):[{t:{empty:!0}}]};var l={text:"tx",hovertext:"htx"};function c(t,e,r){for(var n in l)i.isArrayOrTypedArray(e[n])&&(Array.isArray(r)?i.isArrayOrTypedArray(e[n][r[0]])&&(t[l[n]]=e[n][r[0]][r[1]]):t[l[n]]=e[n][r])}function u(t,e){return t.v-e.v}function h(t){return t.v}function f(t,e,r){return 0===r?t.q1:Math.min(t.q1,e[Math.min(i.findBin(2.5*t.q1-1.5*t.q3,e,!0)+1,r-1)])}function p(t,e,r){return 0===r?t.q3:Math.max(t.q3,e[Math.max(i.findBin(2.5*t.q3-1.5*t.q1,e),0)])}function d(t){return 4*t.q1-3*t.q3}function g(t){return 4*t.q3-3*t.q1}function m(t,e){return 0===e?0:1.57*(t.q3-t.q1)/Math.sqrt(e)}},{"../../constants/numerical":704,"../../lib":728,"../../plots/cartesian/axes":776,"fast-isnumeric":236}],896:[function(t,e,r){"use strict";var n=t("../../plots/cartesian/axes"),a=t("../../lib"),i=t("../../plots/cartesian/axis_ids").getAxisGroup,o=["v","h"];function s(t,e,r,o){var s,l,c,u=e.calcdata,h=e._fullLayout,f=o._id,p=f.charAt(0),d=[],g=0;for(s=0;s<r.length;s++)for(c=u[r[s]],l=0;l<c.length;l++)d.push(o.c2l(c[l].pos,!0)),g+=(c[l].pts2||[]).length;if(d.length){var m=a.distinctVals(d),v=m.minDiff/2;n.minDtick(o,m.minDiff,m.vals[0],!0);var y=h["violin"===t?"_numViolins":"_numBoxes"],x="group"===h[t+"mode"]&&y>1,b=1-h[t+"gap"],_=1-h[t+"groupgap"];for(s=0;s<r.length;s++){var w,T,k,A,M,S,E=(c=u[r[s]])[0].trace,C=c[0].t,L=E.width,P=E.side;if(L)w=T=A=L/2,k=0;else if(w=v,x){var I=i(h,o._id)+E.orientation,z=(h._alignmentOpts[I]||{})[E.alignmentgroup]||{},O=Object.keys(z.offsetGroups||{}).length,D=O||y;T=w*b*_/D,k=2*w*(((O?E._offsetIndex:C.num)+.5)/D-.5)*b,A=w*b/D}else T=w*b*_,k=0,A=w;C.dPos=w,C.bPos=k,C.bdPos=T,C.wHover=A;var R,F,B,N,j,V,U=k+T,q=Boolean(L);if("positive"===P?(M=w*(L?1:.5),R=U,S=R=k):"negative"===P?(M=R=k,S=w*(L?1:.5),F=U):(M=S=w,R=F=U),(E.boxpoints||E.points)&&g>0){var H=E.pointpos,G=E.jitter,Y=E.marker.size/2,W=0;H+G>=0&&((W=U*(H+G))>M?(q=!0,j=Y,B=W):W>R&&(j=Y,B=M)),W<=M&&(B=M);var Z=0;H-G<=0&&((Z=-U*(H-G))>S?(q=!0,V=Y,N=Z):Z>F&&(V=Y,N=S)),Z<=S&&(N=S)}else B=M,N=S;var X=new Array(c.length);for(l=0;l<c.length;l++)X[l]=c[l].pos;E._extremes[f]=n.findExtremes(o,X,{padded:q,vpadminus:N,vpadplus:B,vpadLinearized:!0,ppadminus:{x:V,y:j}[p],ppadplus:{x:j,y:V}[p]})}}}e.exports={crossTraceCalc:function(t,e){for(var r=t.calcdata,n=e.xaxis,a=e.yaxis,i=0;i<o.length;i++){for(var l=o[i],c="h"===l?a:n,u=[],h=0;h<r.length;h++){var f=r[h],p=f[0].t,d=f[0].trace;!0!==d.visible||"box"!==d.type&&"candlestick"!==d.type||p.empty||(d.orientation||"v")!==l||d.xaxis!==n._id||d.yaxis!==a._id||u.push(h)}s("box",t,u,c)}},setPositionOffset:s}},{"../../lib":728,"../../plots/cartesian/axes":776,"../../plots/cartesian/axis_ids":779}],897:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../registry"),i=t("../../components/color"),o=t("../bar/defaults").handleGroupingDefaults,s=t("../../plots/cartesian/axis_autotype"),l=t("./attributes");function c(t,e,r,i){function o(t){var e=0;return t&&t.length&&(e+=1,n.isArrayOrTypedArray(t[0])&&t[0].length&&(e+=1)),e}function c(e){return n.validate(t[e],l[e])}var u,h=r("y"),f=r("x");if("box"===e.type){var p=r("q1"),d=r("median"),g=r("q3");e._hasPreCompStats=p&&p.length&&d&&d.length&&g&&g.length,u=Math.min(n.minRowLength(p),n.minRowLength(d),n.minRowLength(g))}var m,v,y=o(h),x=o(f),b=y&&n.minRowLength(h),_=x&&n.minRowLength(f);if(e._hasPreCompStats)switch(String(x)+String(y)){case"00":var w=c("x0")||c("dx");m=(c("y0")||c("dy"))&&!w?"h":"v",v=u;break;case"10":m="v",v=Math.min(u,_);break;case"20":m="h",v=Math.min(u,f.length);break;case"01":m="h",v=Math.min(u,b);break;case"02":m="v",v=Math.min(u,h.length);break;case"12":m="v",v=Math.min(u,_,h.length);break;case"21":m="h",v=Math.min(u,f.length,b);break;case"11":v=0;break;case"22":var T,k=!1;for(T=0;T<f.length;T++)if("category"===s(f[T])){k=!0;break}if(k)m="v",v=Math.min(u,_,h.length);else{for(T=0;T<h.length;T++)if("category"===s(h[T])){k=!0;break}k?(m="h",v=Math.min(u,f.length,b)):(m="v",v=Math.min(u,_,h.length))}}else y>0?(m="v",v=x>0?Math.min(_,b):Math.min(b)):x>0?(m="h",v=Math.min(_)):v=0;if(v){e._length=v;var A=r("orientation",m);e._hasPreCompStats?"v"===A&&0===x?(r("x0",0),r("dx",1)):"h"===A&&0===y&&(r("y0",0),r("dy",1)):"v"===A&&0===x?r("x0"):"h"===A&&0===y&&r("y0"),a.getComponentMethod("calendars","handleTraceDefaults")(t,e,["x","y"],i)}else e.visible=!1}function u(t,e,r,a){var i=a.prefix,o=n.coerce2(t,e,l,"marker.outliercolor"),s=r("marker.line.outliercolor"),c="outliers";e._hasPreCompStats?c="all":(o||s)&&(c="suspectedoutliers");var u=r(i+"points",c);u?(r("jitter","all"===u?.3:0),r("pointpos","all"===u?-1.5:0),r("marker.symbol"),r("marker.opacity"),r("marker.size"),r("marker.color",e.line.color),r("marker.line.color"),r("marker.line.width"),"suspectedoutliers"===u&&(r("marker.line.outliercolor",e.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 e.marker;var h=r("hoveron");"all"!==h&&-1===h.indexOf("points")||r("hovertemplate"),n.coerceSelectionMarkerOpacity(e,r)}e.exports={supplyDefaults:function(t,e,r,a){function o(r,a){return n.coerce(t,e,l,r,a)}if(c(t,e,o,a),!1!==e.visible){var s=e._hasPreCompStats;s&&(o("lowerfence"),o("upperfence")),o("line.color",(t.marker||{}).color||r),o("line.width"),o("fillcolor",i.addOpacity(e.line.color,.5));var h=!1;if(s){var f=o("mean"),p=o("sd");f&&f.length&&(h=!0,p&&p.length&&(h="sd"))}o("boxmean",h),o("whiskerwidth"),o("width"),o("quartilemethod");var d=!1;if(s){var g=o("notchspan");g&&g.length&&(d=!0)}else n.validate(t.notchwidth,l.notchwidth)&&(d=!0);o("notched",d)&&o("notchwidth"),u(t,e,o,{prefix:"box"})}},crossTraceDefaults:function(t,e){var r,a;function i(t){return n.coerce(a._input,a,l,t)}for(var s=0;s<t.length;s++){var c=(a=t[s]).type;"box"!==c&&"violin"!==c||(r=a._input,"group"===e[c+"mode"]&&o(r,a,e,i))}},handleSampleDefaults:c,handlePointsDefaults:u}},{"../../components/color":595,"../../lib":728,"../../plots/cartesian/axis_autotype":777,"../../registry":859,"../bar/defaults":873,"./attributes":894}],898:[function(t,e,r){"use strict";e.exports=function(t,e){return e.hoverOnBox&&(t.hoverOnBox=e.hoverOnBox),"xVal"in e&&(t.x=e.xVal),"yVal"in e&&(t.y=e.yVal),e.xa&&(t.xaxis=e.xa),e.ya&&(t.yaxis=e.ya),t}},{}],899:[function(t,e,r){"use strict";var n=t("../../plots/cartesian/axes"),a=t("../../lib"),i=t("../../components/fx"),o=t("../../components/color"),s=a.fillText;function l(t,e,r,s){var l,c,u,h,f,p,d,g,m,v,y,x,b,_,w=t.cd,T=t.xa,k=t.ya,A=w[0].trace,M=w[0].t,S="violin"===A.type,E=[],C=M.bdPos,L=M.wHover,P=function(t){return u.c2l(t.pos)+M.bPos-u.c2l(p)};S&&"both"!==A.side?("positive"===A.side&&(m=function(t){var e=P(t);return i.inbox(e,e+L,v)},x=C,b=0),"negative"===A.side&&(m=function(t){var e=P(t);return i.inbox(e-L,e,v)},x=0,b=C)):(m=function(t){var e=P(t);return i.inbox(e-L,e+L,v)},x=b=C),_=S?function(t){return i.inbox(t.span[0]-f,t.span[1]-f,v)}:function(t){return i.inbox(t.min-f,t.max-f,v)},"h"===A.orientation?(f=e,p=r,d=_,g=m,l="y",u=k,c="x",h=T):(f=r,p=e,d=m,g=_,l="x",u=T,c="y",h=k);var I=Math.min(1,C/Math.abs(u.r2c(u.range[1])-u.r2c(u.range[0])));function z(t){return(d(t)+g(t))/2}v=t.maxHoverDistance-I,y=t.maxSpikeDistance-I;var O=i.getDistanceFunction(s,d,g,z);if(i.getClosest(w,O,t),!1===t.index)return[];var D=w[t.index],R=A.line.color,F=(A.marker||{}).color;o.opacity(R)&&A.line.width?t.color=R:o.opacity(F)&&A.boxpoints?t.color=F:t.color=A.fillcolor,t[l+"0"]=u.c2p(D.pos+M.bPos-b,!0),t[l+"1"]=u.c2p(D.pos+M.bPos+x,!0),t[l+"LabelVal"]=D.pos;var B=l+"Spike";t.spikeDistance=z(D)*y/v,t[B]=u.c2p(D.pos,!0);var N={},j=["med","q1","q3","min","max"];(A.boxmean||(A.meanline||{}).visible)&&j.push("mean"),(A.boxpoints||A.points)&&j.push("lf","uf");for(var V=0;V<j.length;V++){var U=j[V];if(U in D&&!(D[U]in N)){N[D[U]]=!0;var q=D[U],H=h.c2p(q,!0),G=a.extendFlat({},t);G.attr=U,G[c+"0"]=G[c+"1"]=H,G[c+"LabelVal"]=q,G[c+"Label"]=(M.labels?M.labels[U]+" ":"")+n.hoverLabelText(h,q),G.hoverOnBox=!0,"mean"===U&&"sd"in D&&"sd"===A.boxmean&&(G[c+"err"]=D.sd),t.name="",t.spikeDistance=void 0,t[B]=void 0,G.hovertemplate=!1,E.push(G)}}return E}function c(t,e,r){for(var n,o,l,c=t.cd,u=t.xa,h=t.ya,f=c[0].trace,p=u.c2p(e),d=h.c2p(r),g=i.quadrature((function(t){var e=Math.max(3,t.mrc||0);return Math.max(Math.abs(u.c2p(t.x)-p)-e,1-3/e)}),(function(t){var e=Math.max(3,t.mrc||0);return Math.max(Math.abs(h.c2p(t.y)-d)-e,1-3/e)})),m=!1,v=0;v<c.length;v++){o=c[v];for(var y=0;y<(o.pts||[]).length;y++){var x=g(l=o.pts[y]);x<=t.distance&&(t.distance=x,m=[v,y])}}if(!m)return!1;l=(o=c[m[0]]).pts[m[1]];var b,_=u.c2p(l.x,!0),w=h.c2p(l.y,!0),T=l.mrc||1;return n=a.extendFlat({},t,{index:l.i,color:(f.marker||{}).color,name:f.name,x0:_-T,x1:_+T,y0:w-T,y1:w+T,spikeDistance:t.distance,hovertemplate:f.hovertemplate}),"h"===f.orientation?(b=h,n.xLabelVal=l.x,n.yLabelVal=o.pos):(b=u,n.xLabelVal=o.pos,n.yLabelVal=l.y),n[b._id.charAt(0)+"Spike"]=b.c2p(o.pos,!0),s(l,f,n),n}e.exports={hoverPoints:function(t,e,r,n){var a,i=t.cd[0].trace.hoveron,o=[];return-1!==i.indexOf("boxes")&&(o=o.concat(l(t,e,r,n))),-1!==i.indexOf("points")&&(a=c(t,e,r)),"closest"===n?a?[a]:o:a?(o.push(a),o):o},hoverOnBoxes:l,hoverOnPoints:c}},{"../../components/color":595,"../../components/fx":635,"../../lib":728,"../../plots/cartesian/axes":776}],900:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),layoutAttributes:t("./layout_attributes"),supplyDefaults:t("./defaults").supplyDefaults,crossTraceDefaults:t("./defaults").crossTraceDefaults,supplyLayoutDefaults:t("./layout_defaults").supplyLayoutDefaults,calc:t("./calc"),crossTraceCalc:t("./cross_trace_calc").crossTraceCalc,plot:t("./plot").plot,style:t("./style").style,styleOnSelect:t("./style").styleOnSelect,hoverPoints:t("./hover").hoverPoints,eventData:t("./event_data"),selectPoints:t("./select"),moduleType:"trace",name:"box",basePlotModule:t("../../plots/cartesian"),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","boxLayout","zoomScale"],meta:{}}},{"../../plots/cartesian":789,"./attributes":894,"./calc":895,"./cross_trace_calc":896,"./defaults":897,"./event_data":898,"./hover":899,"./layout_attributes":901,"./layout_defaults":902,"./plot":903,"./select":904,"./style":905}],901:[function(t,e,r){"use strict";e.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"}}},{}],902:[function(t,e,r){"use strict";var n=t("../../registry"),a=t("../../lib"),i=t("./layout_attributes");function o(t,e,r,a,i){for(var o=i+"Layout",s=!1,l=0;l<r.length;l++){var c=r[l];if(n.traceIs(c,o)){s=!0;break}}s&&(a(i+"mode"),a(i+"gap"),a(i+"groupgap"))}e.exports={supplyLayoutDefaults:function(t,e,r){o(0,0,r,(function(r,n){return a.coerce(t,e,i,r,n)}),"box")},_supply:o}},{"../../lib":728,"../../registry":859,"./layout_attributes":901}],903:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../lib"),i=t("../../components/drawing");function o(t,e,r,i){var o,s,l="h"===r.orientation,c=e.val,u=e.pos,h=!!u.rangebreaks,f=i.bPos,p=i.wdPos||0,d=i.bPosPxOffset||0,g=r.whiskerwidth||0,m=r.notched||!1,v=m?1-2*r.notchwidth:1;Array.isArray(i.bdPos)?(o=i.bdPos[0],s=i.bdPos[1]):(o=i.bdPos,s=i.bdPos);var y=t.selectAll("path.box").data("violin"!==r.type||r.box.visible?a.identity:[]);y.enter().append("path").style("vector-effect","non-scaling-stroke").attr("class","box"),y.exit().remove(),y.each((function(t){if(t.empty)return"M0,0Z";var e=u.c2l(t.pos+f,!0),i=u.l2p(e-o)+d,y=u.l2p(e+s)+d,x=h?(i+y)/2:u.l2p(e)+d,b=r.whiskerwidth,_=h?i*b+(1-b)*x:u.l2p(e-p)+d,w=h?y*b+(1-b)*x:u.l2p(e+p)+d,T=u.l2p(e-o*v)+d,k=u.l2p(e+s*v)+d,A=c.c2p(t.q1,!0),M=c.c2p(t.q3,!0),S=a.constrain(c.c2p(t.med,!0),Math.min(A,M)+1,Math.max(A,M)-1),E=void 0===t.lf||!1===r.boxpoints,C=c.c2p(E?t.min:t.lf,!0),L=c.c2p(E?t.max:t.uf,!0),P=c.c2p(t.ln,!0),I=c.c2p(t.un,!0);l?n.select(this).attr("d","M"+S+","+T+"V"+k+"M"+A+","+i+"V"+y+(m?"H"+P+"L"+S+","+k+"L"+I+","+y:"")+"H"+M+"V"+i+(m?"H"+I+"L"+S+","+T+"L"+P+","+i:"")+"ZM"+A+","+x+"H"+C+"M"+M+","+x+"H"+L+(0===g?"":"M"+C+","+_+"V"+w+"M"+L+","+_+"V"+w)):n.select(this).attr("d","M"+T+","+S+"H"+k+"M"+i+","+A+"H"+y+(m?"V"+P+"L"+k+","+S+"L"+y+","+I:"")+"V"+M+"H"+i+(m?"V"+I+"L"+T+","+S+"L"+i+","+P:"")+"ZM"+x+","+A+"V"+C+"M"+x+","+M+"V"+L+(0===g?"":"M"+_+","+C+"H"+w+"M"+_+","+L+"H"+w))}))}function s(t,e,r,n){var o=e.x,s=e.y,l=n.bdPos,c=n.bPos,u=r.boxpoints||r.points;a.seedPseudoRandom();var h=t.selectAll("g.points").data(u?function(t){return t.forEach((function(t){t.t=n,t.trace=r})),t}:[]);h.enter().append("g").attr("class","points"),h.exit().remove();var f=h.selectAll("path").data((function(t){var e,n,i=t.pts2,o=Math.max((t.max-t.min)/10,t.q3-t.q1),s=1e-9*o,h=.01*o,f=[],p=0;if(r.jitter){if(0===o)for(p=1,f=new Array(i.length),e=0;e<i.length;e++)f[e]=1;else for(e=0;e<i.length;e++){var d=Math.max(0,e-5),g=i[d].v,m=Math.min(i.length-1,e+5),v=i[m].v;"all"!==u&&(i[e].v<t.lf?v=Math.min(v,t.lf):g=Math.max(g,t.uf));var y=Math.sqrt(h*(m-d)/(v-g+s))||0;y=a.constrain(Math.abs(y),0,1),f.push(y),p=Math.max(y,p)}n=2*r.jitter/(p||1)}for(e=0;e<i.length;e++){var x=i[e],b=x.v,_=r.jitter?n*f[e]*(a.pseudoRandom()-.5):0,w=t.pos+c+l*(r.pointpos+_);"h"===r.orientation?(x.y=w,x.x=b):(x.x=w,x.y=b),"suspectedoutliers"===u&&b<t.uo&&b>t.lo&&(x.so=!0)}return i}));f.enter().append("path").classed("point",!0),f.exit().remove(),f.call(i.translatePoints,o,s)}function l(t,e,r,i){var o,s,l=e.val,c=e.pos,u=!!c.rangebreaks,h=i.bPos,f=i.bPosPxOffset||0,p=r.boxmean||(r.meanline||{}).visible;Array.isArray(i.bdPos)?(o=i.bdPos[0],s=i.bdPos[1]):(o=i.bdPos,s=i.bdPos);var d=t.selectAll("path.mean").data("box"===r.type&&r.boxmean||"violin"===r.type&&r.box.visible&&r.meanline.visible?a.identity:[]);d.enter().append("path").attr("class","mean").style({fill:"none","vector-effect":"non-scaling-stroke"}),d.exit().remove(),d.each((function(t){var e=c.c2l(t.pos+h,!0),a=c.l2p(e-o)+f,i=c.l2p(e+s)+f,d=u?(a+i)/2:c.l2p(e)+f,g=l.c2p(t.mean,!0),m=l.c2p(t.mean-t.sd,!0),v=l.c2p(t.mean+t.sd,!0);"h"===r.orientation?n.select(this).attr("d","M"+g+","+a+"V"+i+("sd"===p?"m0,0L"+m+","+d+"L"+g+","+a+"L"+v+","+d+"Z":"")):n.select(this).attr("d","M"+a+","+g+"H"+i+("sd"===p?"m0,0L"+d+","+m+"L"+a+","+g+"L"+d+","+v+"Z":""))}))}e.exports={plot:function(t,e,r,i){var c=e.xaxis,u=e.yaxis;a.makeTraceGroups(i,r,"trace boxes").each((function(t){var e,r,a=n.select(this),i=t[0],h=i.t,f=i.trace;(h.wdPos=h.bdPos*f.whiskerwidth,!0!==f.visible||h.empty)?a.remove():("h"===f.orientation?(e=u,r=c):(e=c,r=u),o(a,{pos:e,val:r},f,h),s(a,{x:c,y:u},f,h),l(a,{pos:e,val:r},f,h))}))},plotBoxAndWhiskers:o,plotPoints:s,plotBoxMean:l}},{"../../components/drawing":617,"../../lib":728,d3:164}],904:[function(t,e,r){"use strict";e.exports=function(t,e){var r,n,a=t.cd,i=t.xaxis,o=t.yaxis,s=[];if(!1===e)for(r=0;r<a.length;r++)for(n=0;n<(a[r].pts||[]).length;n++)a[r].pts[n].selected=0;else for(r=0;r<a.length;r++)for(n=0;n<(a[r].pts||[]).length;n++){var l=a[r].pts[n],c=i.c2p(l.x),u=o.c2p(l.y);e.contains([c,u],null,l.i,t)?(s.push({pointNumber:l.i,x:i.c2d(l.x),y:o.c2d(l.y)}),l.selected=1):l.selected=0}return s}},{}],905:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../components/color"),i=t("../../components/drawing");e.exports={style:function(t,e,r){var o=r||n.select(t).selectAll("g.trace.boxes");o.style("opacity",(function(t){return t[0].trace.opacity})),o.each((function(e){var r=n.select(this),o=e[0].trace,s=o.line.width;function l(t,e,r,n){t.style("stroke-width",e+"px").call(a.stroke,r).call(a.fill,n)}var c=r.selectAll("path.box");if("candlestick"===o.type)c.each((function(t){if(!t.empty){var e=n.select(this),r=o[t.dir];l(e,r.line.width,r.line.color,r.fillcolor),e.style("opacity",o.selectedpoints&&!t.selected?.3:1)}}));else{l(c,s,o.line.color,o.fillcolor),r.selectAll("path.mean").style({"stroke-width":s,"stroke-dasharray":2*s+"px,"+s+"px"}).call(a.stroke,o.line.color);var u=r.selectAll("path.point");i.pointStyle(u,o,t)}}))},styleOnSelect:function(t,e,r){var n=e[0].trace,a=r.selectAll("path.point");n.selectedpoints?i.selectedPointStyle(a,n):i.pointStyle(a,n,t)}}},{"../../components/color":595,"../../components/drawing":617,d3:164}],906:[function(t,e,r){"use strict";var n=t("../../lib").extendFlat,a=t("../ohlc/attributes"),i=t("../box/attributes");function o(t){return{line:{color:n({},i.line.color,{dflt:t}),width:i.line.width,editType:"style"},fillcolor:i.fillcolor,editType:"style"}}e.exports={x:a.x,open:a.open,high:a.high,low:a.low,close:a.close,line:{width:n({},i.line.width,{}),editType:"style"},increasing:o(a.increasing.line.color.dflt),decreasing:o(a.decreasing.line.color.dflt),text:a.text,hovertext:a.hovertext,whiskerwidth:n({},i.whiskerwidth,{dflt:0}),hoverlabel:a.hoverlabel}},{"../../lib":728,"../box/attributes":894,"../ohlc/attributes":1080}],907:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../plots/cartesian/axes"),i=t("../ohlc/calc").calcCommon;function o(t,e,r,n){return{min:r,q1:Math.min(t,n),med:n,q3:Math.max(t,n),max:e}}e.exports=function(t,e){var r=t._fullLayout,s=a.getFromId(t,e.xaxis),l=a.getFromId(t,e.yaxis),c=s.makeCalcdata(e,"x"),u=i(t,e,c,l,o);return u.length?(n.extendFlat(u[0].t,{num:r._numBoxes,dPos:n.distinctVals(c).minDiff/2,posLetter:"x",valLetter:"y"}),r._numBoxes++,u):[{t:{empty:!0}}]}},{"../../lib":728,"../../plots/cartesian/axes":776,"../ohlc/calc":1081}],908:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../components/color"),i=t("../ohlc/ohlc_defaults"),o=t("./attributes");function s(t,e,r,n){var i=r(n+".line.color");r(n+".line.width",e.line.width),r(n+".fillcolor",a.addOpacity(i,.5))}e.exports=function(t,e,r,a){function l(r,a){return n.coerce(t,e,o,r,a)}i(t,e,l,a)?(l("line.width"),s(t,e,l,"increasing"),s(t,e,l,"decreasing"),l("text"),l("hovertext"),l("whiskerwidth"),a._requestRangeslider[e.xaxis]=!0):e.visible=!1}},{"../../components/color":595,"../../lib":728,"../ohlc/ohlc_defaults":1085,"./attributes":906}],909:[function(t,e,r){"use strict";e.exports={moduleType:"trace",name:"candlestick",basePlotModule:t("../../plots/cartesian"),categories:["cartesian","svg","showLegend","candlestick","boxLayout"],meta:{},attributes:t("./attributes"),layoutAttributes:t("../box/layout_attributes"),supplyLayoutDefaults:t("../box/layout_defaults").supplyLayoutDefaults,crossTraceCalc:t("../box/cross_trace_calc").crossTraceCalc,supplyDefaults:t("./defaults"),calc:t("./calc"),plot:t("../box/plot").plot,layerName:"boxlayer",style:t("../box/style").style,hoverPoints:t("../ohlc/hover").hoverPoints,selectPoints:t("../ohlc/select")}},{"../../plots/cartesian":789,"../box/cross_trace_calc":896,"../box/layout_attributes":901,"../box/layout_defaults":902,"../box/plot":903,"../box/style":905,"../ohlc/hover":1083,"../ohlc/select":1087,"./attributes":906,"./calc":907,"./defaults":908}],910:[function(t,e,r){"use strict";var n=t("./axis_defaults"),a=t("../../plot_api/plot_template");e.exports=function(t,e,r,i,o){i("a")||(i("da"),i("a0")),i("b")||(i("db"),i("b0")),function(t,e,r,i){["aaxis","baxis"].forEach((function(o){var s=o.charAt(0),l=t[o]||{},c=a.newContainer(e,o),u={tickfont:"x",id:s+"axis",letter:s,font:e.font,name:o,data:t[s],calendar:e.calendar,dfltColor:i,bgColor:r.paper_bgcolor,fullLayout:r};n(l,c,u),c._categories=c._categories||[],t[o]||"-"===l.type||(t[o]={type:l.type})}))}(t,e,r,o)}},{"../../plot_api/plot_template":766,"./axis_defaults":915}],911:[function(t,e,r){"use strict";var n=t("../../lib").isArrayOrTypedArray;e.exports=function(t){return function t(e,r){if(!n(e)||r>=10)return null;for(var a=1/0,i=-1/0,o=e.length,s=0;s<o;s++){var l=e[s];if(n(l)){var c=t(l,r+1);c&&(a=Math.min(c[0],a),i=Math.max(c[1],i))}else a=Math.min(l,a),i=Math.max(l,i)}return[a,i]}(t,0)}},{"../../lib":728}],912:[function(t,e,r){"use strict";var n=t("../../plots/font_attributes"),a=t("./axis_attributes"),i=t("../../components/color/attributes"),o=n({editType:"calc"});o.family.dflt='"Open Sans", verdana, arial, sans-serif',o.size.dflt=12,o.color.dflt=i.defaultLine,e.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:a,baxis:a,font:o,color:{valType:"color",dflt:i.defaultLine,editType:"plot"},transforms:void 0}},{"../../components/color/attributes":594,"../../plots/font_attributes":804,"./axis_attributes":914}],913:[function(t,e,r){"use strict";var n=t("../../lib").isArrayOrTypedArray;e.exports=function(t,e,r,a){var i,o,s,l,c,u,h,f,p,d,g,m,v,y=n(r)?"a":"b",x=("a"===y?t.aaxis:t.baxis).smoothing,b="a"===y?t.a2i:t.b2j,_="a"===y?r:a,w="a"===y?a:r,T="a"===y?e.a.length:e.b.length,k="a"===y?e.b.length:e.a.length,A=Math.floor("a"===y?t.b2j(w):t.a2i(w)),M="a"===y?function(e){return t.evalxy([],e,A)}:function(e){return t.evalxy([],A,e)};x&&(s=Math.max(0,Math.min(k-2,A)),l=A-s,o="a"===y?function(e,r){return t.dxydi([],e,s,r,l)}:function(e,r){return t.dxydj([],s,e,l,r)});var S=b(_[0]),E=b(_[1]),C=S<E?1:-1,L=1e-8*(E-S),P=C>0?Math.floor:Math.ceil,I=C>0?Math.ceil:Math.floor,z=C>0?Math.min:Math.max,O=C>0?Math.max:Math.min,D=P(S+L),R=I(E-L),F=[[h=M(S)]];for(i=D;i*C<R*C;i+=C)c=[],g=O(S,i),v=(m=z(E,i+C))-g,u=Math.max(0,Math.min(T-2,Math.floor(.5*(g+m)))),f=M(m),x&&(p=o(u,g-u),d=o(u,m-u),c.push([h[0]+p[0]/3*v,h[1]+p[1]/3*v]),c.push([f[0]-d[0]/3*v,f[1]-d[1]/3*v])),c.push(f),F.push(c),h=f;return F}},{"../../lib":728}],914:[function(t,e,r){"use strict";var n=t("../../plots/font_attributes"),a=t("../../components/color/attributes"),i=t("../../plots/cartesian/layout_attributes"),o=t("../../plot_api/edit_types").overrideAll;t("../../constants/docs").FORMAT_LINK,t("../../constants/docs").TIME_FORMAT_LINK;e.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:n({editType:"calc"}),offset:{valType:"number",dflt:10,editType:"calc"},editType:"calc"},type:{valType:"enumerated",values:["-","linear","date","category"],dflt:"-",editType:"calc"},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"},tickfont:n({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"],dflt:"B",editType:"calc"},separatethousands:{valType:"boolean",dflt:!1,editType:"calc"},tickformat:{valType:"string",dflt:"",editType:"calc"},tickformatstops:o(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:a.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"},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"},minorgridcolor:{valType:"color",dflt:a.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"},_deprecated:{title:{valType:"string",editType:"calc"},titlefont:n({editType:"calc"}),titleoffset:{valType:"number",dflt:10,editType:"calc"}},editType:"calc"}},{"../../components/color/attributes":594,"../../constants/docs":699,"../../plot_api/edit_types":759,"../../plots/cartesian/layout_attributes":790,"../../plots/font_attributes":804}],915:[function(t,e,r){"use strict";var n=t("./attributes"),a=t("../../components/color").addOpacity,i=t("../../registry"),o=t("../../lib"),s=t("../../plots/cartesian/tick_value_defaults"),l=t("../../plots/cartesian/tick_label_defaults"),c=t("../../plots/cartesian/category_order_defaults"),u=t("../../plots/cartesian/set_convert"),h=t("../../plots/cartesian/axis_autotype");e.exports=function(t,e,r){var f=r.letter,p=r.font||{},d=n[f+"axis"];function g(r,n){return o.coerce(t,e,d,r,n)}function m(r,n){return o.coerce2(t,e,d,r,n)}r.name&&(e._name=r.name,e._id=r.name);var v=g("type");("-"===v&&(r.data&&function(t,e){if("-"!==t.type)return;var r=t._id.charAt(0),n=t[r+"calendar"];t.type=h(e,n)}(e,r.data),"-"===e.type?e.type="linear":v=t.type=e.type),g("smoothing"),g("cheatertype"),g("showticklabels"),g("labelprefix",f+" = "),g("labelsuffix"),g("showtickprefix"),g("showticksuffix"),g("separatethousands"),g("tickformat"),g("exponentformat"),g("showexponent"),g("categoryorder"),g("tickmode"),g("tickvals"),g("ticktext"),g("tick0"),g("dtick"),"array"===e.tickmode&&(g("arraytick0"),g("arraydtick")),g("labelpadding"),e._hovertitle=f,"date"===v)&&i.getComponentMethod("calendars","handleDefaults")(t,e,"calendar",r.calendar);u(e,r.fullLayout),e.c2p=o.identity;var y=g("color",r.dfltColor),x=y===t.color?y:p.color;g("title.text")&&(o.coerceFont(g,"title.font",{family:p.family,size:Math.round(1.2*p.size),color:x}),g("title.offset")),g("tickangle"),g("autorange",!e.isValidRange(t.range))&&g("rangemode"),g("range"),e.cleanRange(),g("fixedrange"),s(t,e,g,v),l(t,e,g,v,r),c(t,e,g,{data:r.data,dataAttr:f});var b=m("gridcolor",a(y,.3)),_=m("gridwidth"),w=g("showgrid");w||(delete e.gridcolor,delete e.gridwidth);var T=m("startlinecolor",y),k=m("startlinewidth",_);g("startline",e.showgrid||!!T||!!k)||(delete e.startlinecolor,delete e.startlinewidth);var A=m("endlinecolor",y),M=m("endlinewidth",_);return g("endline",e.showgrid||!!A||!!M)||(delete e.endlinecolor,delete e.endlinewidth),w?(g("minorgridcount"),g("minorgridwidth",_),g("minorgridcolor",a(b,.06)),e.minorgridcount||(delete e.minorgridwidth,delete e.minorgridcolor)):(delete e.gridcolor,delete e.gridWidth),"none"===e.showticklabels&&(delete e.tickfont,delete e.tickangle,delete e.showexponent,delete e.exponentformat,delete e.tickformat,delete e.showticksuffix,delete e.showtickprefix),e.showticksuffix||delete e.ticksuffix,e.showtickprefix||delete e.tickprefix,g("tickmode"),e}},{"../../components/color":595,"../../lib":728,"../../plots/cartesian/axis_autotype":777,"../../plots/cartesian/category_order_defaults":780,"../../plots/cartesian/set_convert":796,"../../plots/cartesian/tick_label_defaults":797,"../../plots/cartesian/tick_value_defaults":799,"../../registry":859,"./attributes":912}],916:[function(t,e,r){"use strict";var n=t("../../plots/cartesian/axes"),a=t("../../lib").isArray1D,i=t("./cheater_basis"),o=t("./array_minmax"),s=t("./calc_gridlines"),l=t("./calc_labels"),c=t("./calc_clippath"),u=t("../heatmap/clean_2d_array"),h=t("./smooth_fill_2d_array"),f=t("../heatmap/convert_column_xyz"),p=t("./set_convert");e.exports=function(t,e){var r=n.getFromId(t,e.xaxis),d=n.getFromId(t,e.yaxis),g=e.aaxis,m=e.baxis,v=e.x,y=e.y,x=[];v&&a(v)&&x.push("x"),y&&a(y)&&x.push("y"),x.length&&f(e,g,m,"a","b",x);var b=e._a=e._a||e.a,_=e._b=e._b||e.b;v=e._x||e.x,y=e._y||e.y;var w={};if(e._cheater){var T="index"===g.cheatertype?b.length:b,k="index"===m.cheatertype?_.length:_;v=i(T,k,e.cheaterslope)}e._x=v=u(v),e._y=y=u(y),h(v,b,_),h(y,b,_),p(e),e.setScale();var A=o(v),M=o(y),S=.5*(A[1]-A[0]),E=.5*(A[1]+A[0]),C=.5*(M[1]-M[0]),L=.5*(M[1]+M[0]);return A=[E-1.3*S,E+1.3*S],M=[L-1.3*C,L+1.3*C],e._extremes[r._id]=n.findExtremes(r,A,{padded:!0}),e._extremes[d._id]=n.findExtremes(d,M,{padded:!0}),s(e,"a","b"),s(e,"b","a"),l(e,g),l(e,m),w.clipsegments=c(e._xctrl,e._yctrl,g,m),w.x=v,w.y=y,w.a=b,w.b=_,[w]}},{"../../lib":728,"../../plots/cartesian/axes":776,"../heatmap/clean_2d_array":1015,"../heatmap/convert_column_xyz":1017,"./array_minmax":911,"./calc_clippath":917,"./calc_gridlines":918,"./calc_labels":919,"./cheater_basis":921,"./set_convert":934,"./smooth_fill_2d_array":935}],917:[function(t,e,r){"use strict";e.exports=function(t,e,r,n){var a,i,o,s=[],l=!!r.smoothing,c=!!n.smoothing,u=t[0].length-1,h=t.length-1;for(a=0,i=[],o=[];a<=u;a++)i[a]=t[0][a],o[a]=e[0][a];for(s.push({x:i,y:o,bicubic:l}),a=0,i=[],o=[];a<=h;a++)i[a]=t[a][u],o[a]=e[a][u];for(s.push({x:i,y:o,bicubic:c}),a=u,i=[],o=[];a>=0;a--)i[u-a]=t[h][a],o[u-a]=e[h][a];for(s.push({x:i,y:o,bicubic:l}),a=h,i=[],o=[];a>=0;a--)i[h-a]=t[a][0],o[h-a]=e[a][0];return s.push({x:i,y:o,bicubic:c}),s}},{}],918:[function(t,e,r){"use strict";var n=t("../../plots/cartesian/axes"),a=t("../../lib/extend").extendFlat;e.exports=function(t,e,r){var i,o,s,l,c,u,h,f,p,d,g,m,v,y,x=t["_"+e],b=t[e+"axis"],_=b._gridlines=[],w=b._minorgridlines=[],T=b._boundarylines=[],k=t["_"+r],A=t[r+"axis"];"array"===b.tickmode&&(b.tickvals=x.slice());var M=t._xctrl,S=t._yctrl,E=M[0].length,C=M.length,L=t._a.length,P=t._b.length;n.prepTicks(b),"array"===b.tickmode&&delete b.tickvals;var I=b.smoothing?3:1;function z(n){var a,i,o,s,l,c,u,h,p,d,g,m,v=[],y=[],x={};if("b"===e)for(i=t.b2j(n),o=Math.floor(Math.max(0,Math.min(P-2,i))),s=i-o,x.length=P,x.crossLength=L,x.xy=function(e){return t.evalxy([],e,i)},x.dxy=function(e,r){return t.dxydi([],e,o,r,s)},a=0;a<L;a++)c=Math.min(L-2,a),u=a-c,h=t.evalxy([],a,i),A.smoothing&&a>0&&(p=t.dxydi([],a-1,o,0,s),v.push(l[0]+p[0]/3),y.push(l[1]+p[1]/3),d=t.dxydi([],a-1,o,1,s),v.push(h[0]-d[0]/3),y.push(h[1]-d[1]/3)),v.push(h[0]),y.push(h[1]),l=h;else for(a=t.a2i(n),c=Math.floor(Math.max(0,Math.min(L-2,a))),u=a-c,x.length=L,x.crossLength=P,x.xy=function(e){return t.evalxy([],a,e)},x.dxy=function(e,r){return t.dxydj([],c,e,u,r)},i=0;i<P;i++)o=Math.min(P-2,i),s=i-o,h=t.evalxy([],a,i),A.smoothing&&i>0&&(g=t.dxydj([],c,i-1,u,0),v.push(l[0]+g[0]/3),y.push(l[1]+g[1]/3),m=t.dxydj([],c,i-1,u,1),v.push(h[0]-m[0]/3),y.push(h[1]-m[1]/3)),v.push(h[0]),y.push(h[1]),l=h;return x.axisLetter=e,x.axis=b,x.crossAxis=A,x.value=n,x.constvar=r,x.index=f,x.x=v,x.y=y,x.smoothing=A.smoothing,x}function O(n){var a,i,o,s,l,c=[],u=[],h={};if(h.length=x.length,h.crossLength=k.length,"b"===e)for(o=Math.max(0,Math.min(P-2,n)),l=Math.min(1,Math.max(0,n-o)),h.xy=function(e){return t.evalxy([],e,n)},h.dxy=function(e,r){return t.dxydi([],e,o,r,l)},a=0;a<E;a++)c[a]=M[n*I][a],u[a]=S[n*I][a];else for(i=Math.max(0,Math.min(L-2,n)),s=Math.min(1,Math.max(0,n-i)),h.xy=function(e){return t.evalxy([],n,e)},h.dxy=function(e,r){return t.dxydj([],i,e,s,r)},a=0;a<C;a++)c[a]=M[a][n*I],u[a]=S[a][n*I];return h.axisLetter=e,h.axis=b,h.crossAxis=A,h.value=x[n],h.constvar=r,h.index=n,h.x=c,h.y=u,h.smoothing=A.smoothing,h}if("array"===b.tickmode){for(l=5e-15,u=(c=[Math.floor((x.length-1-b.arraytick0)/b.arraydtick*(1+l)),Math.ceil(-b.arraytick0/b.arraydtick/(1+l))].sort((function(t,e){return t-e})))[0]-1,h=c[1]+1,f=u;f<h;f++)(o=b.arraytick0+b.arraydtick*f)<0||o>x.length-1||_.push(a(O(o),{color:b.gridcolor,width:b.gridwidth}));for(f=u;f<h;f++)if(s=b.arraytick0+b.arraydtick*f,g=Math.min(s+b.arraydtick,x.length-1),!(s<0||s>x.length-1||g<0||g>x.length-1))for(m=x[s],v=x[g],i=0;i<b.minorgridcount;i++)(y=g-s)<=0||(d=m+(v-m)*(i+1)/(b.minorgridcount+1)*(b.arraydtick/y))<x[0]||d>x[x.length-1]||w.push(a(z(d),{color:b.minorgridcolor,width:b.minorgridwidth}));b.startline&&T.push(a(O(0),{color:b.startlinecolor,width:b.startlinewidth})),b.endline&&T.push(a(O(x.length-1),{color:b.endlinecolor,width:b.endlinewidth}))}else{for(l=5e-15,u=(c=[Math.floor((x[x.length-1]-b.tick0)/b.dtick*(1+l)),Math.ceil((x[0]-b.tick0)/b.dtick/(1+l))].sort((function(t,e){return t-e})))[0],h=c[1],f=u;f<=h;f++)p=b.tick0+b.dtick*f,_.push(a(z(p),{color:b.gridcolor,width:b.gridwidth}));for(f=u-1;f<h+1;f++)for(p=b.tick0+b.dtick*f,i=0;i<b.minorgridcount;i++)(d=p+b.dtick*(i+1)/(b.minorgridcount+1))<x[0]||d>x[x.length-1]||w.push(a(z(d),{color:b.minorgridcolor,width:b.minorgridwidth}));b.startline&&T.push(a(z(x[0]),{color:b.startlinecolor,width:b.startlinewidth})),b.endline&&T.push(a(z(x[x.length-1]),{color:b.endlinecolor,width:b.endlinewidth}))}}},{"../../lib/extend":719,"../../plots/cartesian/axes":776}],919:[function(t,e,r){"use strict";var n=t("../../plots/cartesian/axes"),a=t("../../lib/extend").extendFlat;e.exports=function(t,e){var r,i,o,s=e._labels=[],l=e._gridlines;for(r=0;r<l.length;r++)o=l[r],-1!==["start","both"].indexOf(e.showticklabels)&&(i=n.tickText(e,o.value),a(i,{prefix:void 0,suffix:void 0,endAnchor:!0,xy:o.xy(0),dxy:o.dxy(0,0),axis:o.axis,length:o.crossAxis.length,font:o.axis.tickfont,isFirst:0===r,isLast:r===l.length-1}),s.push(i)),-1!==["end","both"].indexOf(e.showticklabels)&&(i=n.tickText(e,o.value),a(i,{endAnchor:!1,xy:o.xy(o.crossLength-1),dxy:o.dxy(o.crossLength-2,1),axis:o.axis,length:o.crossAxis.length,font:o.axis.tickfont,isFirst:0===r,isLast:r===l.length-1}),s.push(i))}},{"../../lib/extend":719,"../../plots/cartesian/axes":776}],920:[function(t,e,r){"use strict";e.exports=function(t,e,r,n){var a=t[0]-e[0],i=t[1]-e[1],o=r[0]-e[0],s=r[1]-e[1],l=Math.pow(a*a+i*i,.25),c=Math.pow(o*o+s*s,.25),u=(c*c*a-l*l*o)*n,h=(c*c*i-l*l*s)*n,f=c*(l+c)*3,p=l*(l+c)*3;return[[e[0]+(f&&u/f),e[1]+(f&&h/f)],[e[0]-(p&&u/p),e[1]-(p&&h/p)]]}},{}],921:[function(t,e,r){"use strict";var n=t("../../lib").isArrayOrTypedArray;e.exports=function(t,e,r){var a,i,o,s,l,c,u=[],h=n(t)?t.length:t,f=n(e)?e.length:e,p=n(t)?t:null,d=n(e)?e:null;p&&(o=(p.length-1)/(p[p.length-1]-p[0])/(h-1)),d&&(s=(d.length-1)/(d[d.length-1]-d[0])/(f-1));var g=1/0,m=-1/0;for(i=0;i<f;i++)for(u[i]=[],l=d?(d[i]-d[0])*s:i/(f-1),a=0;a<h;a++)c=(p?(p[a]-p[0])*o:a/(h-1))-l*r,g=Math.min(c,g),m=Math.max(c,m),u[i][a]=c;var v=1/(m-g),y=-g*v;for(i=0;i<f;i++)for(a=0;a<h;a++)u[i][a]=v*u[i][a]+y;return u}},{"../../lib":728}],922:[function(t,e,r){"use strict";var n=t("./catmull_rom"),a=t("../../lib").ensureArray;function i(t,e,r){var n=-.5*r[0]+1.5*e[0],a=-.5*r[1]+1.5*e[1];return[(2*n+t[0])/3,(2*a+t[1])/3]}e.exports=function(t,e,r,o,s,l){var c,u,h,f,p,d,g,m,v,y,x=r[0].length,b=r.length,_=s?3*x-2:x,w=l?3*b-2:b;for(t=a(t,w),e=a(e,w),h=0;h<w;h++)t[h]=a(t[h],_),e[h]=a(e[h],_);for(u=0,f=0;u<b;u++,f+=l?3:1)for(p=t[f],d=e[f],g=r[u],m=o[u],c=0,h=0;c<x;c++,h+=s?3:1)p[h]=g[c],d[h]=m[c];if(s)for(u=0,f=0;u<b;u++,f+=l?3:1){for(c=1,h=3;c<x-1;c++,h+=3)v=n([r[u][c-1],o[u][c-1]],[r[u][c],o[u][c]],[r[u][c+1],o[u][c+1]],s),t[f][h-1]=v[0][0],e[f][h-1]=v[0][1],t[f][h+1]=v[1][0],e[f][h+1]=v[1][1];y=i([t[f][0],e[f][0]],[t[f][2],e[f][2]],[t[f][3],e[f][3]]),t[f][1]=y[0],e[f][1]=y[1],y=i([t[f][_-1],e[f][_-1]],[t[f][_-3],e[f][_-3]],[t[f][_-4],e[f][_-4]]),t[f][_-2]=y[0],e[f][_-2]=y[1]}if(l)for(h=0;h<_;h++){for(f=3;f<w-3;f+=3)v=n([t[f-3][h],e[f-3][h]],[t[f][h],e[f][h]],[t[f+3][h],e[f+3][h]],l),t[f-1][h]=v[0][0],e[f-1][h]=v[0][1],t[f+1][h]=v[1][0],e[f+1][h]=v[1][1];y=i([t[0][h],e[0][h]],[t[2][h],e[2][h]],[t[3][h],e[3][h]]),t[1][h]=y[0],e[1][h]=y[1],y=i([t[w-1][h],e[w-1][h]],[t[w-3][h],e[w-3][h]],[t[w-4][h],e[w-4][h]]),t[w-2][h]=y[0],e[w-2][h]=y[1]}if(s&&l)for(f=1;f<w;f+=(f+1)%3==0?2:1){for(h=3;h<_-3;h+=3)v=n([t[f][h-3],e[f][h-3]],[t[f][h],e[f][h]],[t[f][h+3],e[f][h+3]],s),t[f][h-1]=.5*(t[f][h-1]+v[0][0]),e[f][h-1]=.5*(e[f][h-1]+v[0][1]),t[f][h+1]=.5*(t[f][h+1]+v[1][0]),e[f][h+1]=.5*(e[f][h+1]+v[1][1]);y=i([t[f][0],e[f][0]],[t[f][2],e[f][2]],[t[f][3],e[f][3]]),t[f][1]=.5*(t[f][1]+y[0]),e[f][1]=.5*(e[f][1]+y[1]),y=i([t[f][_-1],e[f][_-1]],[t[f][_-3],e[f][_-3]],[t[f][_-4],e[f][_-4]]),t[f][_-2]=.5*(t[f][_-2]+y[0]),e[f][_-2]=.5*(e[f][_-2]+y[1])}return[t,e]}},{"../../lib":728,"./catmull_rom":920}],923:[function(t,e,r){"use strict";e.exports={RELATIVE_CULL_TOLERANCE:1e-6}},{}],924:[function(t,e,r){"use strict";e.exports=function(t,e,r){return e&&r?function(e,r,n,a,i){var o,s,l,c,u,h;e||(e=[]),r*=3,n*=3;var f=a*a,p=1-a,d=p*p,g=p*a*2,m=-3*d,v=3*(d-g),y=3*(g-f),x=3*f,b=i*i,_=b*i,w=1-i,T=w*w,k=T*w;for(h=0;h<t.length;h++)o=m*(u=t[h])[n][r]+v*u[n][r+1]+y*u[n][r+2]+x*u[n][r+3],s=m*u[n+1][r]+v*u[n+1][r+1]+y*u[n+1][r+2]+x*u[n+1][r+3],l=m*u[n+2][r]+v*u[n+2][r+1]+y*u[n+2][r+2]+x*u[n+2][r+3],c=m*u[n+3][r]+v*u[n+3][r+1]+y*u[n+3][r+2]+x*u[n+3][r+3],e[h]=k*o+3*(T*i*s+w*b*l)+_*c;return e}:e?function(e,r,n,a,i){var o,s,l,c;e||(e=[]),r*=3;var u=a*a,h=1-a,f=h*h,p=h*a*2,d=-3*f,g=3*(f-p),m=3*(p-u),v=3*u,y=1-i;for(l=0;l<t.length;l++)o=d*(c=t[l])[n][r]+g*c[n][r+1]+m*c[n][r+2]+v*c[n][r+3],s=d*c[n+1][r]+g*c[n+1][r+1]+m*c[n+1][r+2]+v*c[n+1][r+3],e[l]=y*o+i*s;return e}:r?function(e,r,n,a,i){var o,s,l,c,u,h;e||(e=[]),n*=3;var f=i*i,p=f*i,d=1-i,g=d*d,m=g*d;for(u=0;u<t.length;u++)o=(h=t[u])[n][r+1]-h[n][r],s=h[n+1][r+1]-h[n+1][r],l=h[n+2][r+1]-h[n+2][r],c=h[n+3][r+1]-h[n+3][r],e[u]=m*o+3*(g*i*s+d*f*l)+p*c;return e}:function(e,r,n,a,i){var o,s,l,c;e||(e=[]);var u=1-i;for(l=0;l<t.length;l++)o=(c=t[l])[n][r+1]-c[n][r],s=c[n+1][r+1]-c[n+1][r],e[l]=u*o+i*s;return e}}},{}],925:[function(t,e,r){"use strict";e.exports=function(t,e,r){return e&&r?function(e,r,n,a,i){var o,s,l,c,u,h;e||(e=[]),r*=3,n*=3;var f=a*a,p=f*a,d=1-a,g=d*d,m=g*d,v=i*i,y=1-i,x=y*y,b=y*i*2,_=-3*x,w=3*(x-b),T=3*(b-v),k=3*v;for(h=0;h<t.length;h++)o=_*(u=t[h])[n][r]+w*u[n+1][r]+T*u[n+2][r]+k*u[n+3][r],s=_*u[n][r+1]+w*u[n+1][r+1]+T*u[n+2][r+1]+k*u[n+3][r+1],l=_*u[n][r+2]+w*u[n+1][r+2]+T*u[n+2][r+2]+k*u[n+3][r+2],c=_*u[n][r+3]+w*u[n+1][r+3]+T*u[n+2][r+3]+k*u[n+3][r+3],e[h]=m*o+3*(g*a*s+d*f*l)+p*c;return e}:e?function(e,r,n,a,i){var o,s,l,c,u,h;e||(e=[]),r*=3;var f=i*i,p=f*i,d=1-i,g=d*d,m=g*d;for(u=0;u<t.length;u++)o=(h=t[u])[n+1][r]-h[n][r],s=h[n+1][r+1]-h[n][r+1],l=h[n+1][r+2]-h[n][r+2],c=h[n+1][r+3]-h[n][r+3],e[u]=m*o+3*(g*i*s+d*f*l)+p*c;return e}:r?function(e,r,n,a,i){var o,s,l,c;e||(e=[]),n*=3;var u=1-a,h=i*i,f=1-i,p=f*f,d=f*i*2,g=-3*p,m=3*(p-d),v=3*(d-h),y=3*h;for(l=0;l<t.length;l++)o=g*(c=t[l])[n][r]+m*c[n+1][r]+v*c[n+2][r]+y*c[n+3][r],s=g*c[n][r+1]+m*c[n+1][r+1]+v*c[n+2][r+1]+y*c[n+3][r+1],e[l]=u*o+a*s;return e}:function(e,r,n,a,i){var o,s,l,c;e||(e=[]);var u=1-a;for(l=0;l<t.length;l++)o=(c=t[l])[n+1][r]-c[n][r],s=c[n+1][r+1]-c[n][r+1],e[l]=u*o+a*s;return e}}},{}],926:[function(t,e,r){"use strict";e.exports=function(t,e,r,n,a){var i=e-2,o=r-2;return n&&a?function(e,r,n){var a,s,l,c,u,h;e||(e=[]);var f=Math.max(0,Math.min(Math.floor(r),i)),p=Math.max(0,Math.min(Math.floor(n),o)),d=Math.max(0,Math.min(1,r-f)),g=Math.max(0,Math.min(1,n-p));f*=3,p*=3;var m=d*d,v=m*d,y=1-d,x=y*y,b=x*y,_=g*g,w=_*g,T=1-g,k=T*T,A=k*T;for(h=0;h<t.length;h++)a=b*(u=t[h])[p][f]+3*(x*d*u[p][f+1]+y*m*u[p][f+2])+v*u[p][f+3],s=b*u[p+1][f]+3*(x*d*u[p+1][f+1]+y*m*u[p+1][f+2])+v*u[p+1][f+3],l=b*u[p+2][f]+3*(x*d*u[p+2][f+1]+y*m*u[p+2][f+2])+v*u[p+2][f+3],c=b*u[p+3][f]+3*(x*d*u[p+3][f+1]+y*m*u[p+3][f+2])+v*u[p+3][f+3],e[h]=A*a+3*(k*g*s+T*_*l)+w*c;return e}:n?function(e,r,n){e||(e=[]);var a,s,l,c,u,h,f=Math.max(0,Math.min(Math.floor(r),i)),p=Math.max(0,Math.min(Math.floor(n),o)),d=Math.max(0,Math.min(1,r-f)),g=Math.max(0,Math.min(1,n-p));f*=3;var m=d*d,v=m*d,y=1-d,x=y*y,b=x*y,_=1-g;for(u=0;u<t.length;u++)a=_*(h=t[u])[p][f]+g*h[p+1][f],s=_*h[p][f+1]+g*h[p+1][f+1],l=_*h[p][f+2]+g*h[p+1][f+1],c=_*h[p][f+3]+g*h[p+1][f+1],e[u]=b*a+3*(x*d*s+y*m*l)+v*c;return e}:a?function(e,r,n){e||(e=[]);var a,s,l,c,u,h,f=Math.max(0,Math.min(Math.floor(r),i)),p=Math.max(0,Math.min(Math.floor(n),o)),d=Math.max(0,Math.min(1,r-f)),g=Math.max(0,Math.min(1,n-p));p*=3;var m=g*g,v=m*g,y=1-g,x=y*y,b=x*y,_=1-d;for(u=0;u<t.length;u++)a=_*(h=t[u])[p][f]+d*h[p][f+1],s=_*h[p+1][f]+d*h[p+1][f+1],l=_*h[p+2][f]+d*h[p+2][f+1],c=_*h[p+3][f]+d*h[p+3][f+1],e[u]=b*a+3*(x*g*s+y*m*l)+v*c;return e}:function(e,r,n){e||(e=[]);var a,s,l,c,u=Math.max(0,Math.min(Math.floor(r),i)),h=Math.max(0,Math.min(Math.floor(n),o)),f=Math.max(0,Math.min(1,r-u)),p=Math.max(0,Math.min(1,n-h)),d=1-p,g=1-f;for(l=0;l<t.length;l++)a=g*(c=t[l])[h][u]+f*c[h][u+1],s=g*c[h+1][u]+f*c[h+1][u+1],e[l]=d*a+p*s;return e}}},{}],927:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./xy_defaults"),i=t("./ab_defaults"),o=t("./attributes"),s=t("../../components/color/attributes");e.exports=function(t,e,r,l){function c(r,a){return n.coerce(t,e,o,r,a)}e._clipPathId="clip"+e.uid+"carpet";var u=c("color",s.defaultLine);(n.coerceFont(c,"font"),c("carpet"),i(t,e,l,c,u),e.a&&e.b)?(e.a.length<3&&(e.aaxis.smoothing=0),e.b.length<3&&(e.baxis.smoothing=0),a(t,e,c)||(e.visible=!1),e._cheater&&c("cheaterslope")):e.visible=!1}},{"../../components/color/attributes":594,"../../lib":728,"./ab_defaults":910,"./attributes":912,"./xy_defaults":936}],928:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),supplyDefaults:t("./defaults"),plot:t("./plot"),calc:t("./calc"),animatable:!0,isContainer:!0,moduleType:"trace",name:"carpet",basePlotModule:t("../../plots/cartesian"),categories:["cartesian","svg","carpet","carpetAxis","notLegendIsolatable","noMultiCategory","noHover","noSortingByValue"],meta:{}}},{"../../plots/cartesian":789,"./attributes":912,"./calc":916,"./defaults":927,"./plot":933}],929:[function(t,e,r){"use strict";e.exports=function(t,e){for(var r,n=t._fullData.length,a=0;a<n;a++){var i=t._fullData[a];if(i.index!==e.index&&("carpet"===i.type&&(r||(r=i),i.carpet===e.carpet)))return i}return r}},{}],930:[function(t,e,r){"use strict";e.exports=function(t,e,r){if(0===t.length)return"";var n,a=[],i=r?3:1;for(n=0;n<t.length;n+=i)a.push(t[n]+","+e[n]),r&&n<t.length-i&&(a.push("C"),a.push([t[n+1]+","+e[n+1],t[n+2]+","+e[n+2]+" "].join(" ")));return a.join(r?"":"L")}},{}],931:[function(t,e,r){"use strict";var n=t("../../lib").isArrayOrTypedArray;e.exports=function(t,e,r){var a;for(n(t)?t.length>e.length&&(t=t.slice(0,e.length)):t=[],a=0;a<e.length;a++)t[a]=r(e[a]);return t}},{"../../lib":728}],932:[function(t,e,r){"use strict";e.exports=function(t,e,r,n,a,i){var o=a[0]*t.dpdx(e),s=a[1]*t.dpdy(r),l=1,c=1;if(i){var u=Math.sqrt(a[0]*a[0]+a[1]*a[1]),h=Math.sqrt(i[0]*i[0]+i[1]*i[1]),f=(a[0]*i[0]+a[1]*i[1])/u/h;c=Math.max(0,f)}var p=180*Math.atan2(s,o)/Math.PI;return p<-90?(p+=180,l=-l):p>90&&(p-=180,l=-l),{angle:p,flip:l,p:t.c2p(n,e,r),offsetMultplier:c}}},{}],933:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../components/drawing"),i=t("./map_1d_array"),o=t("./makepath"),s=t("./orient_text"),l=t("../../lib/svg_text_utils"),c=t("../../lib"),u=t("../../constants/alignment");function h(t,e,r,a,s,l){var c="const-"+s+"-lines",u=r.selectAll("."+c).data(l);u.enter().append("path").classed(c,!0).style("vector-effect","non-scaling-stroke"),u.each((function(r){var a=r,s=a.x,l=a.y,c=i([],s,t.c2p),u=i([],l,e.c2p),h="M"+o(c,u,a.smoothing);n.select(this).attr("d",h).style("stroke-width",a.width).style("stroke",a.color).style("fill","none")})),u.exit().remove()}function f(t,e,r,i,o,c,u,h){var f=c.selectAll("text."+h).data(u);f.enter().append("text").classed(h,!0);var p=0,d={};return f.each((function(o,c){var u;if("auto"===o.axis.tickangle)u=s(i,e,r,o.xy,o.dxy);else{var h=(o.axis.tickangle+180)*Math.PI/180;u=s(i,e,r,o.xy,[Math.cos(h),Math.sin(h)])}c||(d={angle:u.angle,flip:u.flip});var f=(o.endAnchor?-1:1)*u.flip,g=n.select(this).attr({"text-anchor":f>0?"start":"end","data-notex":1}).call(a.font,o.font).text(o.text).call(l.convertToTspans,t),m=a.bBox(this);g.attr("transform","translate("+u.p[0]+","+u.p[1]+") rotate("+u.angle+")translate("+o.axis.labelpadding*f+","+.3*m.height+")"),p=Math.max(p,m.width+o.axis.labelpadding)})),f.exit().remove(),d.maxExtent=p,d}e.exports=function(t,e,r,a){var l=e.xaxis,u=e.yaxis,p=t._fullLayout._clips;c.makeTraceGroups(a,r,"trace").each((function(e){var r=n.select(this),a=e[0],d=a.trace,m=d.aaxis,v=d.baxis,y=c.ensureSingle(r,"g","minorlayer"),x=c.ensureSingle(r,"g","majorlayer"),b=c.ensureSingle(r,"g","boundarylayer"),_=c.ensureSingle(r,"g","labellayer");r.style("opacity",d.opacity),h(l,u,x,m,"a",m._gridlines),h(l,u,x,v,"b",v._gridlines),h(l,u,y,m,"a",m._minorgridlines),h(l,u,y,v,"b",v._minorgridlines),h(l,u,b,m,"a-boundary",m._boundarylines),h(l,u,b,v,"b-boundary",v._boundarylines);var w=f(t,l,u,d,a,_,m._labels,"a-label"),T=f(t,l,u,d,a,_,v._labels,"b-label");!function(t,e,r,n,a,i,o,l){var u,h,f,p,d=c.aggNums(Math.min,null,r.a),m=c.aggNums(Math.max,null,r.a),v=c.aggNums(Math.min,null,r.b),y=c.aggNums(Math.max,null,r.b);u=.5*(d+m),h=v,f=r.ab2xy(u,h,!0),p=r.dxyda_rough(u,h),void 0===o.angle&&c.extendFlat(o,s(r,a,i,f,r.dxydb_rough(u,h)));g(t,e,r,n,f,p,r.aaxis,a,i,o,"a-title"),u=d,h=.5*(v+y),f=r.ab2xy(u,h,!0),p=r.dxydb_rough(u,h),void 0===l.angle&&c.extendFlat(l,s(r,a,i,f,r.dxyda_rough(u,h)));g(t,e,r,n,f,p,r.baxis,a,i,l,"b-title")}(t,_,d,a,l,u,w,T),function(t,e,r,n,a){var s,l,u,h,f=r.select("#"+t._clipPathId);f.size()||(f=r.append("clipPath").classed("carpetclip",!0));var p=c.ensureSingle(f,"path","carpetboundary"),d=e.clipsegments,g=[];for(h=0;h<d.length;h++)s=d[h],l=i([],s.x,n.c2p),u=i([],s.y,a.c2p),g.push(o(l,u,s.bicubic));var m="M"+g.join("L")+"Z";f.attr("id",t._clipPathId),p.attr("d",m)}(d,a,p,l,u)}))};var p=u.LINE_SPACING,d=(1-u.MID_SHIFT)/p+1;function g(t,e,r,i,o,c,u,h,f,g,m){var v=[];u.title.text&&v.push(u.title.text);var y=e.selectAll("text."+m).data(v),x=g.maxExtent;y.enter().append("text").classed(m,!0),y.each((function(){var e=s(r,h,f,o,c);-1===["start","both"].indexOf(u.showticklabels)&&(x=0);var i=u.title.font.size;x+=i+u.title.offset;var m=(g.angle+(g.flip<0?180:0)-e.angle+450)%360,v=m>90&&m<270,y=n.select(this);y.text(u.title.text).call(l.convertToTspans,t),v&&(x=(-l.lineCount(y)+d)*p*i-x),y.attr("transform","translate("+e.p[0]+","+e.p[1]+") rotate("+e.angle+") translate(0,"+x+")").classed("user-select-none",!0).attr("text-anchor","middle").call(a.font,u.title.font)})),y.exit().remove()}},{"../../components/drawing":617,"../../constants/alignment":697,"../../lib":728,"../../lib/svg_text_utils":752,"./makepath":930,"./map_1d_array":931,"./orient_text":932,d3:164}],934:[function(t,e,r){"use strict";var n=t("./constants"),a=t("../../lib/search").findBin,i=t("./compute_control_points"),o=t("./create_spline_evaluator"),s=t("./create_i_derivative_evaluator"),l=t("./create_j_derivative_evaluator");e.exports=function(t){var e=t._a,r=t._b,c=e.length,u=r.length,h=t.aaxis,f=t.baxis,p=e[0],d=e[c-1],g=r[0],m=r[u-1],v=e[e.length-1]-e[0],y=r[r.length-1]-r[0],x=v*n.RELATIVE_CULL_TOLERANCE,b=y*n.RELATIVE_CULL_TOLERANCE;p-=x,d+=x,g-=b,m+=b,t.isVisible=function(t,e){return t>p&&t<d&&e>g&&e<m},t.isOccluded=function(t,e){return t<p||t>d||e<g||e>m},t.setScale=function(){var e=t._x,r=t._y,n=i(t._xctrl,t._yctrl,e,r,h.smoothing,f.smoothing);t._xctrl=n[0],t._yctrl=n[1],t.evalxy=o([t._xctrl,t._yctrl],c,u,h.smoothing,f.smoothing),t.dxydi=s([t._xctrl,t._yctrl],h.smoothing,f.smoothing),t.dxydj=l([t._xctrl,t._yctrl],h.smoothing,f.smoothing)},t.i2a=function(t){var r=Math.max(0,Math.floor(t[0]),c-2),n=t[0]-r;return(1-n)*e[r]+n*e[r+1]},t.j2b=function(t){var e=Math.max(0,Math.floor(t[1]),c-2),n=t[1]-e;return(1-n)*r[e]+n*r[e+1]},t.ij2ab=function(e){return[t.i2a(e[0]),t.j2b(e[1])]},t.a2i=function(t){var r=Math.max(0,Math.min(a(t,e),c-2)),n=e[r],i=e[r+1];return Math.max(0,Math.min(c-1,r+(t-n)/(i-n)))},t.b2j=function(t){var e=Math.max(0,Math.min(a(t,r),u-2)),n=r[e],i=r[e+1];return Math.max(0,Math.min(u-1,e+(t-n)/(i-n)))},t.ab2ij=function(e){return[t.a2i(e[0]),t.b2j(e[1])]},t.i2c=function(e,r){return t.evalxy([],e,r)},t.ab2xy=function(n,a,i){if(!i&&(n<e[0]||n>e[c-1]|a<r[0]||a>r[u-1]))return[!1,!1];var o=t.a2i(n),s=t.b2j(a),l=t.evalxy([],o,s);if(i){var h,f,p,d,g=0,m=0,v=[];n<e[0]?(h=0,f=0,g=(n-e[0])/(e[1]-e[0])):n>e[c-1]?(h=c-2,f=1,g=(n-e[c-1])/(e[c-1]-e[c-2])):f=o-(h=Math.max(0,Math.min(c-2,Math.floor(o)))),a<r[0]?(p=0,d=0,m=(a-r[0])/(r[1]-r[0])):a>r[u-1]?(p=u-2,d=1,m=(a-r[u-1])/(r[u-1]-r[u-2])):d=s-(p=Math.max(0,Math.min(u-2,Math.floor(s)))),g&&(t.dxydi(v,h,p,f,d),l[0]+=v[0]*g,l[1]+=v[1]*g),m&&(t.dxydj(v,h,p,f,d),l[0]+=v[0]*m,l[1]+=v[1]*m)}return l},t.c2p=function(t,e,r){return[e.c2p(t[0]),r.c2p(t[1])]},t.p2x=function(t,e,r){return[e.p2c(t[0]),r.p2c(t[1])]},t.dadi=function(t){var r=Math.max(0,Math.min(e.length-2,t));return e[r+1]-e[r]},t.dbdj=function(t){var e=Math.max(0,Math.min(r.length-2,t));return r[e+1]-r[e]},t.dxyda=function(e,r,n,a){var i=t.dxydi(null,e,r,n,a),o=t.dadi(e,n);return[i[0]/o,i[1]/o]},t.dxydb=function(e,r,n,a){var i=t.dxydj(null,e,r,n,a),o=t.dbdj(r,a);return[i[0]/o,i[1]/o]},t.dxyda_rough=function(e,r,n){var a=v*(n||.1),i=t.ab2xy(e+a,r,!0),o=t.ab2xy(e-a,r,!0);return[.5*(i[0]-o[0])/a,.5*(i[1]-o[1])/a]},t.dxydb_rough=function(e,r,n){var a=y*(n||.1),i=t.ab2xy(e,r+a,!0),o=t.ab2xy(e,r-a,!0);return[.5*(i[0]-o[0])/a,.5*(i[1]-o[1])/a]},t.dpdx=function(t){return t._m},t.dpdy=function(t){return t._m}}},{"../../lib/search":747,"./compute_control_points":922,"./constants":923,"./create_i_derivative_evaluator":924,"./create_j_derivative_evaluator":925,"./create_spline_evaluator":926}],935:[function(t,e,r){"use strict";var n=t("../../lib");e.exports=function(t,e,r){var a,i,o,s=[],l=[],c=t[0].length,u=t.length;function h(e,r){var n,a=0,i=0;return e>0&&void 0!==(n=t[r][e-1])&&(i++,a+=n),e<c-1&&void 0!==(n=t[r][e+1])&&(i++,a+=n),r>0&&void 0!==(n=t[r-1][e])&&(i++,a+=n),r<u-1&&void 0!==(n=t[r+1][e])&&(i++,a+=n),a/Math.max(1,i)}var f,p,d,g,m,v,y,x,b,_,w,T=0;for(a=0;a<c;a++)for(i=0;i<u;i++)void 0===t[i][a]&&(s.push(a),l.push(i),t[i][a]=h(a,i)),T=Math.max(T,Math.abs(t[i][a]));if(!s.length)return t;var k=0,A=0,M=s.length;do{for(k=0,o=0;o<M;o++){a=s[o],i=l[o];var S,E,C,L,P,I,z=0,O=0;0===a?(C=e[P=Math.min(c-1,2)],L=e[1],S=t[i][P],O+=(E=t[i][1])+(E-S)*(e[0]-L)/(L-C),z++):a===c-1&&(C=e[P=Math.max(0,c-3)],L=e[c-2],S=t[i][P],O+=(E=t[i][c-2])+(E-S)*(e[c-1]-L)/(L-C),z++),(0===a||a===c-1)&&i>0&&i<u-1&&(f=r[i+1]-r[i],O+=((p=r[i]-r[i-1])*t[i+1][a]+f*t[i-1][a])/(p+f),z++),0===i?(C=r[I=Math.min(u-1,2)],L=r[1],S=t[I][a],O+=(E=t[1][a])+(E-S)*(r[0]-L)/(L-C),z++):i===u-1&&(C=r[I=Math.max(0,u-3)],L=r[u-2],S=t[I][a],O+=(E=t[u-2][a])+(E-S)*(r[u-1]-L)/(L-C),z++),(0===i||i===u-1)&&a>0&&a<c-1&&(f=e[a+1]-e[a],O+=((p=e[a]-e[a-1])*t[i][a+1]+f*t[i][a-1])/(p+f),z++),z?O/=z:(d=e[a+1]-e[a],g=e[a]-e[a-1],x=(m=r[i+1]-r[i])*(v=r[i]-r[i-1])*(m+v),O=((y=d*g*(d+g))*(v*t[i+1][a]+m*t[i-1][a])+x*(g*t[i][a+1]+d*t[i][a-1]))/(x*(g+d)+y*(v+m))),k+=(_=(b=O-t[i][a])/T)*_,w=z?0:.85,t[i][a]+=b*(1+w)}k=Math.sqrt(k)}while(A++<100&&k>1e-5);return n.log("Smoother converged to",k,"after",A,"iterations"),t}},{"../../lib":728}],936:[function(t,e,r){"use strict";var n=t("../../lib").isArray1D;e.exports=function(t,e,r){var a=r("x"),i=a&&a.length,o=r("y"),s=o&&o.length;if(!i&&!s)return!1;if(e._cheater=!a,i&&!n(a)||s&&!n(o))e._length=null;else{var l=i?a.length:1/0;s&&(l=Math.min(l,o.length)),e.a&&e.a.length&&(l=Math.min(l,e.a.length)),e.b&&e.b.length&&(l=Math.min(l,e.b.length)),e._length=l}return!0}},{"../../lib":728}],937:[function(t,e,r){"use strict";var n=t("../../plots/template_attributes").hovertemplateAttrs,a=t("../scattergeo/attributes"),i=t("../../components/colorscale/attributes"),o=t("../../plots/attributes"),s=t("../../components/color/attributes").defaultLine,l=t("../../lib/extend").extendFlat,c=a.marker.line;e.exports=l({locations:{valType:"data_array",editType:"calc"},locationmode:a.locationmode,z:{valType:"data_array",editType:"calc"},geojson:l({},a.geojson,{}),featureidkey:a.featureidkey,text:l({},a.text,{}),hovertext:l({},a.hovertext,{}),marker:{line:{color:l({},c.color,{dflt:s}),width:l({},c.width,{dflt:1}),editType:"calc"},opacity:{valType:"number",arrayOk:!0,min:0,max:1,dflt:1,editType:"style"},editType:"calc"},selected:{marker:{opacity:a.selected.marker.opacity,editType:"plot"},editType:"plot"},unselected:{marker:{opacity:a.unselected.marker.opacity,editType:"plot"},editType:"plot"},hoverinfo:l({},o.hoverinfo,{editType:"calc",flags:["location","z","text","name"]}),hovertemplate:n(),showlegend:l({},o.showlegend,{dflt:!1})},i("",{cLetter:"z",editTypeOverride:"calc"}))},{"../../components/color/attributes":594,"../../components/colorscale/attributes":602,"../../lib/extend":719,"../../plots/attributes":773,"../../plots/template_attributes":854,"../scattergeo/attributes":1175}],938:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../../constants/numerical").BADNUM,i=t("../../components/colorscale/calc"),o=t("../scatter/arrays_to_calcdata"),s=t("../scatter/calc_selection");function l(t){return t&&"string"==typeof t}e.exports=function(t,e){var r,c=e._length,u=new Array(c);r=e.geojson?function(t){return l(t)||n(t)}:l;for(var h=0;h<c;h++){var f=u[h]={},p=e.locations[h],d=e.z[h];r(p)&&n(d)?(f.loc=p,f.z=d):(f.loc=null,f.z=a),f.index=h}return o(u,e),i(t,e,{vals:e.z,containerStr:"",cLetter:"z"}),s(u,e),u}},{"../../components/colorscale/calc":603,"../../constants/numerical":704,"../scatter/arrays_to_calcdata":1133,"../scatter/calc_selection":1136,"fast-isnumeric":236}],939:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../components/colorscale/defaults"),i=t("./attributes");e.exports=function(t,e,r,o){function s(r,a){return n.coerce(t,e,i,r,a)}var l=s("locations"),c=s("z");if(l&&l.length&&n.isArrayOrTypedArray(c)&&c.length){e._length=Math.min(l.length,c.length);var u,h=s("geojson");("string"==typeof h&&""!==h||n.isPlainObject(h))&&(u="geojson-id"),"geojson-id"===s("locationmode",u)&&s("featureidkey"),s("text"),s("hovertext"),s("hovertemplate"),s("marker.line.width")&&s("marker.line.color"),s("marker.opacity"),a(t,e,o,s,{prefix:"",cLetter:"z"}),n.coerceSelectionMarkerOpacity(e,s)}else e.visible=!1}},{"../../components/colorscale/defaults":605,"../../lib":728,"./attributes":937}],940:[function(t,e,r){"use strict";e.exports=function(t,e,r,n,a){t.location=e.location,t.z=e.z;var i=n[a];return i.fIn&&i.fIn.properties&&(t.properties=i.fIn.properties),t.ct=i.ct,t}},{}],941:[function(t,e,r){"use strict";var n=t("../../plots/cartesian/axes"),a=t("./attributes"),i=t("../../lib").fillText;e.exports=function(t,e,r){var o,s,l,c,u=t.cd,h=u[0].trace,f=t.subplot;for(s=0;s<u.length;s++)if(c=!1,(o=u[s])._polygons){for(l=0;l<o._polygons.length;l++)o._polygons[l].contains([e,r])&&(c=!c),o._polygons[l].contains([e+360,r])&&(c=!c);if(c)break}if(c&&o)return t.x0=t.x1=t.xa.c2p(o.ct),t.y0=t.y1=t.ya.c2p(o.ct),t.index=o.index,t.location=o.loc,t.z=o.z,t.zLabel=n.tickText(f.mockAxis,f.mockAxis.c2l(o.z),"hover").text,t.hovertemplate=o.hovertemplate,function(t,e,r){if(e.hovertemplate)return;var n=r.hi||e.hoverinfo,o=String(r.loc),s="all"===n?a.hoverinfo.flags:n.split("+"),l=-1!==s.indexOf("name"),c=-1!==s.indexOf("location"),u=-1!==s.indexOf("z"),h=-1!==s.indexOf("text"),f=[];!l&&c?t.nameOverride=o:(l&&(t.nameOverride=e.name),c&&f.push(o));u&&f.push(t.zLabel);h&&i(r,e,f);t.extraText=f.join("<br>")}(t,h,o,f.mockAxis),[t]}},{"../../lib":728,"../../plots/cartesian/axes":776,"./attributes":937}],942:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),supplyDefaults:t("./defaults"),colorbar:t("../heatmap/colorbar"),calc:t("./calc"),calcGeoJSON:t("./plot").calcGeoJSON,plot:t("./plot").plot,style:t("./style").style,styleOnSelect:t("./style").styleOnSelect,hoverPoints:t("./hover"),eventData:t("./event_data"),selectPoints:t("./select"),moduleType:"trace",name:"choropleth",basePlotModule:t("../../plots/geo"),categories:["geo","noOpacity","showLegend"],meta:{}}},{"../../plots/geo":808,"../heatmap/colorbar":1016,"./attributes":937,"./calc":938,"./defaults":939,"./event_data":940,"./hover":941,"./plot":943,"./select":944,"./style":945}],943:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../lib"),i=t("../../lib/geo_location_utils"),o=t("../../lib/topojson_utils").getTopojsonFeatures,s=t("../../plots/cartesian/autorange").findExtremes,l=t("./style").style;e.exports={calcGeoJSON:function(t,e){for(var r=t[0].trace,n=e[r.geo],a=n._subplot,l=r.locationmode,c=r._length,u="geojson-id"===l?i.extractTraceFeature(t):o(r,a.topojson),h=[],f=[],p=0;p<c;p++){var d=t[p],g="geojson-id"===l?d.fOut:i.locationToFeature(l,d.loc,u);if(g){d.geojson=g,d.ct=g.properties.ct,d._polygons=i.feature2polygons(g);var m=i.computeBbox(g);h.push(m[0],m[2]),f.push(m[1],m[3])}else d.geojson=null}if("geojson"===n.fitbounds&&"geojson-id"===l){var v=i.computeBbox(i.getTraceGeojson(r));h=[v[0],v[2]],f=[v[1],v[3]]}var y={padded:!0};r._extremes.lon=s(n.lonaxis._ax,h,y),r._extremes.lat=s(n.lataxis._ax,f,y)},plot:function(t,e,r){var i=e.layers.backplot.select(".choroplethlayer");a.makeTraceGroups(i,r,"trace choropleth").each((function(e){var r=n.select(this).selectAll("path.choroplethlocation").data(a.identity);r.enter().append("path").classed("choroplethlocation",!0),r.exit().remove(),l(t,e)}))}}},{"../../lib":728,"../../lib/geo_location_utils":722,"../../lib/topojson_utils":755,"../../plots/cartesian/autorange":775,"./style":945,d3:164}],944:[function(t,e,r){"use strict";e.exports=function(t,e){var r,n,a,i,o,s=t.cd,l=t.xaxis,c=t.yaxis,u=[];if(!1===e)for(r=0;r<s.length;r++)s[r].selected=0;else for(r=0;r<s.length;r++)(a=(n=s[r]).ct)&&(i=l.c2p(a),o=c.c2p(a),e.contains([i,o],null,r,t)?(u.push({pointNumber:r,lon:a[0],lat:a[1]}),n.selected=1):n.selected=0);return u}},{}],945:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../components/color"),i=t("../../components/drawing"),o=t("../../components/colorscale");function s(t,e){var r=e[0].trace,s=e[0].node3.selectAll(".choroplethlocation"),l=r.marker||{},c=l.line||{},u=o.makeColorScaleFuncFromTrace(r);s.each((function(t){n.select(this).attr("fill",u(t.z)).call(a.stroke,t.mlc||c.color).call(i.dashLine,"",t.mlw||c.width||0).style("opacity",l.opacity)})),i.selectedPointStyle(s,r,t)}e.exports={style:function(t,e){e&&s(t,e)},styleOnSelect:function(t,e){var r=e[0].node3,n=e[0].trace;n.selectedpoints?i.selectedPointStyle(r.selectAll(".choroplethlocation"),n,t):s(t,e)}}},{"../../components/color":595,"../../components/colorscale":607,"../../components/drawing":617,d3:164}],946:[function(t,e,r){"use strict";var n=t("../choropleth/attributes"),a=t("../../components/colorscale/attributes"),i=t("../../plots/template_attributes").hovertemplateAttrs,o=t("../../plots/attributes"),s=t("../../lib/extend").extendFlat;e.exports=s({locations:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},geojson:{valType:"any",editType:"calc"},featureidkey:s({},n.featureidkey,{}),below:{valType:"string",editType:"plot"},text:n.text,hovertext:n.hovertext,marker:{line:{color:s({},n.marker.line.color,{editType:"plot"}),width:s({},n.marker.line.width,{editType:"plot"}),editType:"calc"},opacity:s({},n.marker.opacity,{editType:"plot"}),editType:"calc"},selected:{marker:{opacity:s({},n.selected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},unselected:{marker:{opacity:s({},n.unselected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},hoverinfo:n.hoverinfo,hovertemplate:i({},{keys:["properties"]}),showlegend:s({},o.showlegend,{dflt:!1})},a("",{cLetter:"z",editTypeOverride:"calc"}))},{"../../components/colorscale/attributes":602,"../../lib/extend":719,"../../plots/attributes":773,"../../plots/template_attributes":854,"../choropleth/attributes":937}],947:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../../lib"),i=t("../../components/colorscale"),o=t("../../components/drawing"),s=t("../../lib/geojson_utils").makeBlank,l=t("../../lib/geo_location_utils");function c(t){var e,r=t[0].trace,n=r._opts;if(r.selectedpoints){for(var i=o.makeSelectedPointStyleFns(r),s=0;s<t.length;s++){var l=t[s];l.fOut&&(l.fOut.properties.mo2=i.selectedOpacityFn(l))}e={type:"identity",property:"mo2"}}else e=a.isArrayOrTypedArray(r.marker.opacity)?{type:"identity",property:"mo"}:r.marker.opacity;return a.extendFlat(n.fill.paint,{"fill-opacity":e}),a.extendFlat(n.line.paint,{"line-opacity":e}),n}e.exports={convert:function(t){var e=t[0].trace,r=!0===e.visible&&0!==e._length,o={layout:{visibility:"none"},paint:{}},u={layout:{visibility:"none"},paint:{}},h=e._opts={fill:o,line:u,geojson:s()};if(!r)return h;var f=l.extractTraceFeature(t);if(!f)return h;var p,d,g,m=i.makeColorScaleFuncFromTrace(e),v=e.marker,y=v.line||{};a.isArrayOrTypedArray(v.opacity)&&(p=function(t){var e=t.mo;return n(e)?+a.constrain(e,0,1):0}),a.isArrayOrTypedArray(y.color)&&(d=function(t){return t.mlc}),a.isArrayOrTypedArray(y.width)&&(g=function(t){return t.mlw});for(var x=0;x<t.length;x++){var b=t[x],_=b.fOut;if(_){var w=_.properties;w.fc=m(b.z),p&&(w.mo=p(b)),d&&(w.mlc=d(b)),g&&(w.mlw=g(b)),b.ct=w.ct,b._polygons=l.feature2polygons(_)}}var T=p?{type:"identity",property:"mo"}:v.opacity;return a.extendFlat(o.paint,{"fill-color":{type:"identity",property:"fc"},"fill-opacity":T}),a.extendFlat(u.paint,{"line-color":d?{type:"identity",property:"mlc"}:y.color,"line-width":g?{type:"identity",property:"mlw"}:y.width,"line-opacity":T}),o.layout.visibility="visible",u.layout.visibility="visible",h.geojson={type:"FeatureCollection",features:f},c(t),h},convertOnSelect:c}},{"../../components/colorscale":607,"../../components/drawing":617,"../../lib":728,"../../lib/geo_location_utils":722,"../../lib/geojson_utils":723,"fast-isnumeric":236}],948:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../components/colorscale/defaults"),i=t("./attributes");e.exports=function(t,e,r,o){function s(r,a){return n.coerce(t,e,i,r,a)}var l=s("locations"),c=s("z"),u=s("geojson");n.isArrayOrTypedArray(l)&&l.length&&n.isArrayOrTypedArray(c)&&c.length&&("string"==typeof u&&""!==u||n.isPlainObject(u))?(s("featureidkey"),e._length=Math.min(l.length,c.length),s("below"),s("text"),s("hovertext"),s("hovertemplate"),s("marker.line.width")&&s("marker.line.color"),s("marker.opacity"),a(t,e,o,s,{prefix:"",cLetter:"z"}),n.coerceSelectionMarkerOpacity(e,s)):e.visible=!1}},{"../../components/colorscale/defaults":605,"../../lib":728,"./attributes":946}],949:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),supplyDefaults:t("./defaults"),colorbar:t("../heatmap/colorbar"),calc:t("../choropleth/calc"),plot:t("./plot"),hoverPoints:t("../choropleth/hover"),eventData:t("../choropleth/event_data"),selectPoints:t("../choropleth/select"),styleOnSelect:function(t,e){e&&e[0].trace._glTrace.updateOnSelect(e)},getBelow:function(t,e){for(var r=e.getMapLayers(),n=r.length-2;n>=0;n--){var a=r[n].id;if("string"==typeof a&&0===a.indexOf("water"))for(var i=n+1;i<r.length;i++)if("string"==typeof(a=r[i].id)&&-1===a.indexOf("plotly-"))return a}},moduleType:"trace",name:"choroplethmapbox",basePlotModule:t("../../plots/mapbox"),categories:["mapbox","gl","noOpacity","showLegend"],meta:{hr_name:"choropleth_mapbox"}}},{"../../plots/mapbox":833,"../choropleth/calc":938,"../choropleth/event_data":940,"../choropleth/hover":941,"../choropleth/select":944,"../heatmap/colorbar":1016,"./attributes":946,"./defaults":948,"./plot":950}],950:[function(t,e,r){"use strict";var n=t("./convert").convert,a=t("./convert").convertOnSelect,i=t("../../plots/mapbox/constants").traceLayerPrefix;function o(t,e){this.type="choroplethmapbox",this.subplot=t,this.uid=e,this.sourceId="source-"+e,this.layerList=[["fill",i+e+"-fill"],["line",i+e+"-line"]],this.below=null}var s=o.prototype;s.update=function(t){this._update(n(t))},s.updateOnSelect=function(t){this._update(a(t))},s._update=function(t){var e=this.subplot,r=this.layerList,n=e.belowLookup["trace-"+this.uid];e.map.getSource(this.sourceId).setData(t.geojson),n!==this.below&&(this._removeLayers(),this._addLayers(t,n),this.below=n);for(var a=0;a<r.length;a++){var i=r[a],o=i[0],s=i[1],l=t[o];e.setOptions(s,"setLayoutProperty",l.layout),"visible"===l.layout.visibility&&e.setOptions(s,"setPaintProperty",l.paint)}},s._addLayers=function(t,e){for(var r=this.subplot,n=this.layerList,a=this.sourceId,i=0;i<n.length;i++){var o=n[i],s=o[0],l=t[s];r.addLayer({type:s,id:o[1],source:a,layout:l.layout,paint:l.paint},e)}},s._removeLayers=function(){for(var t=this.subplot.map,e=this.layerList,r=e.length-1;r>=0;r--)t.removeLayer(e[r][1])},s.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},e.exports=function(t,e){var r=e[0].trace,a=new o(t,r.uid),i=a.sourceId,s=n(e),l=a.below=t.belowLookup["trace-"+r.uid];return t.map.addSource(i,{type:"geojson",data:s.geojson}),a._addLayers(s,l),e[0].trace._glTrace=a,a}},{"../../plots/mapbox/constants":831,"./convert":947}],951:[function(t,e,r){"use strict";var n=t("../../components/colorscale/attributes"),a=t("../../plots/template_attributes").hovertemplateAttrs,i=t("../mesh3d/attributes"),o=t("../../plots/attributes"),s=t("../../lib/extend").extendFlat,l={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"],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:a({editType:"calc"},{keys:["norm"]}),showlegend:s({},o.showlegend,{dflt:!1})};s(l,n("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));["opacity","lightposition","lighting"].forEach((function(t){l[t]=i[t]})),l.hoverinfo=s({},o.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","text","name"],dflt:"x+y+z+norm+text+name"}),l.transforms=void 0,e.exports=l},{"../../components/colorscale/attributes":602,"../../lib/extend":719,"../../plots/attributes":773,"../../plots/template_attributes":854,"../mesh3d/attributes":1075}],952:[function(t,e,r){"use strict";var n=t("../../components/colorscale/calc");e.exports=function(t,e){for(var r=e.u,a=e.v,i=e.w,o=Math.min(e.x.length,e.y.length,e.z.length,r.length,a.length,i.length),s=-1/0,l=1/0,c=0;c<o;c++){var u=r[c],h=a[c],f=i[c],p=Math.sqrt(u*u+h*h+f*f);s=Math.max(s,p),l=Math.min(l,p)}e._len=o,e._normMax=s,n(t,e,{vals:[l,s],containerStr:"",cLetter:"c"})}},{"../../components/colorscale/calc":603}],953:[function(t,e,r){"use strict";var n=t("gl-cone3d"),a=t("gl-cone3d").createConeMesh,i=t("../../lib").simpleMap,o=t("../../lib/gl_format_color").parseColorScale,s=t("../../components/colorscale").extractOpts,l=t("../../plots/gl3d/zip3");function c(t,e){this.scene=t,this.uid=e,this.mesh=null,this.data=null}var u=c.prototype;u.handlePick=function(t){if(t.object===this.mesh){var e=t.index=t.data.index,r=this.data.x[e],n=this.data.y[e],a=this.data.z[e],i=this.data.u[e],o=this.data.v[e],s=this.data.w[e];t.traceCoordinate=[r,n,a,i,o,s,Math.sqrt(i*i+o*o+s*s)];var l=this.data.hovertext||this.data.text;return Array.isArray(l)&&void 0!==l[e]?t.textLabel=l[e]:l&&(t.textLabel=l),!0}};var h={xaxis:0,yaxis:1,zaxis:2},f={tip:1,tail:0,cm:.25,center:.5},p={tip:1,tail:1,cm:.75,center:.5};function d(t,e){var r=t.fullSceneLayout,a=t.dataScale,c={};function u(t,e){var n=r[e],o=a[h[e]];return i(t,(function(t){return n.d2l(t)*o}))}c.vectors=l(u(e.u,"xaxis"),u(e.v,"yaxis"),u(e.w,"zaxis"),e._len),c.positions=l(u(e.x,"xaxis"),u(e.y,"yaxis"),u(e.z,"zaxis"),e._len);var d=s(e);c.colormap=o(e),c.vertexIntensityBounds=[d.min/e._normMax,d.max/e._normMax],c.coneOffset=f[e.anchor],"scaled"===e.sizemode?c.coneSize=e.sizeref||.5:c.coneSize=e.sizeref&&e._normMax?e.sizeref/e._normMax:.5;var g=n(c),m=e.lightposition;return g.lightPosition=[m.x,m.y,m.z],g.ambient=e.lighting.ambient,g.diffuse=e.lighting.diffuse,g.specular=e.lighting.specular,g.roughness=e.lighting.roughness,g.fresnel=e.lighting.fresnel,g.opacity=e.opacity,e._pad=p[e.anchor]*g.vectorScale*g.coneScale*e._normMax,g}u.update=function(t){this.data=t;var e=d(this.scene,t);this.mesh.update(e)},u.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()},e.exports=function(t,e){var r=t.glplot.gl,n=d(t,e),i=a(r,n),o=new c(t,e.uid);return o.mesh=i,o.data=e,i._trace=o,t.glplot.add(i),o}},{"../../components/colorscale":607,"../../lib":728,"../../lib/gl_format_color":725,"../../plots/gl3d/zip3":829,"gl-cone3d":254}],954:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../components/colorscale/defaults"),i=t("./attributes");e.exports=function(t,e,r,o){function s(r,a){return n.coerce(t,e,i,r,a)}var l=s("u"),c=s("v"),u=s("w"),h=s("x"),f=s("y"),p=s("z");l&&l.length&&c&&c.length&&u&&u.length&&h&&h.length&&f&&f.length&&p&&p.length?(s("sizeref"),s("sizemode"),s("anchor"),s("lighting.ambient"),s("lighting.diffuse"),s("lighting.specular"),s("lighting.roughness"),s("lighting.fresnel"),s("lightposition.x"),s("lightposition.y"),s("lightposition.z"),a(t,e,o,s,{prefix:"",cLetter:"c"}),s("text"),s("hovertext"),s("hovertemplate"),e._length=null):e.visible=!1}},{"../../components/colorscale/defaults":605,"../../lib":728,"./attributes":951}],955:[function(t,e,r){"use strict";e.exports={moduleType:"trace",name:"cone",basePlotModule:t("../../plots/gl3d"),categories:["gl3d","showLegend"],attributes:t("./attributes"),supplyDefaults:t("./defaults"),colorbar:{min:"cmin",max:"cmax"},calc:t("./calc"),plot:t("./convert"),eventData:function(t,e){return t.norm=e.traceCoordinate[6],t},meta:{}}},{"../../plots/gl3d":818,"./attributes":951,"./calc":952,"./convert":953,"./defaults":954}],956:[function(t,e,r){"use strict";var n=t("../heatmap/attributes"),a=t("../scatter/attributes"),i=t("../../components/colorscale/attributes"),o=t("../../components/drawing/attributes").dash,s=t("../../plots/font_attributes"),l=t("../../lib/extend").extendFlat,c=t("../../constants/filter_ops"),u=c.COMPARISON_OPS2,h=c.INTERVAL_OPS,f=(t("../../constants/docs").FORMAT_LINK,a.line);e.exports=l({z:n.z,x:n.x,x0:n.x0,dx:n.dx,y:n.y,y0:n.y0,dy:n.dy,text:n.text,hovertext:n.hovertext,transpose:n.transpose,xtype:n.xtype,ytype:n.ytype,zhoverformat:n.zhoverformat,hovertemplate:n.hovertemplate,hoverongaps:n.hoverongaps,connectgaps:l({},n.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:s({editType:"plot",colorEditType:"style"}),labelformat:{valType:"string",dflt:"",editType:"plot"},operation:{valType:"enumerated",values:[].concat(u).concat(h),dflt:"=",editType:"calc"},value:{valType:"any",dflt:0,editType:"calc"},editType:"calc",impliedEdits:{autocontour:!1}},line:{color:l({},f.color,{editType:"style+colorbars"}),width:{valType:"number",min:0,editType:"style+colorbars"},dash:o,smoothing:l({},f.smoothing,{}),editType:"plot"}},i("",{cLetter:"z",autoColorDflt:!1,editTypeOverride:"calc"}))},{"../../components/colorscale/attributes":602,"../../components/drawing/attributes":616,"../../constants/docs":699,"../../constants/filter_ops":700,"../../lib/extend":719,"../../plots/font_attributes":804,"../heatmap/attributes":1013,"../scatter/attributes":1134}],957:[function(t,e,r){"use strict";var n=t("../../components/colorscale"),a=t("../heatmap/calc"),i=t("./set_contours"),o=t("./end_plus");e.exports=function(t,e){var r=a(t,e),s=r[0].z;i(e,s);var l,c=e.contours,u=n.extractOpts(e);if("heatmap"===c.coloring&&u.auto&&!1===e.autocontour){var h=c.start,f=o(c),p=c.size||1,d=Math.floor((f-h)/p)+1;isFinite(p)||(p=1,d=1);var g=h-p/2;l=[g,g+d*p]}else l=s;return n.calc(t,e,{vals:l,cLetter:"z"}),r}},{"../../components/colorscale":607,"../heatmap/calc":1014,"./end_plus":967,"./set_contours":975}],958:[function(t,e,r){"use strict";e.exports=function(t,e){var r,n=t[0],a=n.z;switch(e.type){case"levels":var i=Math.min(a[0][0],a[0][1]);for(r=0;r<t.length;r++){var o=t[r];o.prefixBoundary=!o.edgepaths.length&&(i>o.level||o.starts.length&&i===o.level)}break;case"constraint":if(n.prefixBoundary=!1,n.edgepaths.length)return;var s=n.x.length,l=n.y.length,c=-1/0,u=1/0;for(r=0;r<l;r++)u=Math.min(u,a[r][0]),u=Math.min(u,a[r][s-1]),c=Math.max(c,a[r][0]),c=Math.max(c,a[r][s-1]);for(r=1;r<s-1;r++)u=Math.min(u,a[0][r]),u=Math.min(u,a[l-1][r]),c=Math.max(c,a[0][r]),c=Math.max(c,a[l-1][r]);var h,f,p=e.value;switch(e._operation){case">":p>c&&(n.prefixBoundary=!0);break;case"<":(p<u||n.starts.length&&p===u)&&(n.prefixBoundary=!0);break;case"[]":h=Math.min(p[0],p[1]),((f=Math.max(p[0],p[1]))<u||h>c||n.starts.length&&f===u)&&(n.prefixBoundary=!0);break;case"][":h=Math.min(p[0],p[1]),f=Math.max(p[0],p[1]),h<u&&f>c&&(n.prefixBoundary=!0)}}}},{}],959:[function(t,e,r){"use strict";var n=t("../../components/colorscale"),a=t("./make_color_map"),i=t("./end_plus");e.exports={min:"zmin",max:"zmax",calc:function(t,e,r){var o=e.contours,s=e.line,l=o.size||1,c=o.coloring,u=a(e,{isColorbar:!0});if("heatmap"===c){var h=n.extractOpts(e);r._fillgradient=h.reversescale?n.flipScale(h.colorscale):h.colorscale,r._zrange=[h.min,h.max]}else"fill"===c&&(r._fillcolor=u);r._line={color:"lines"===c?u:s.color,width:!1!==o.showlines?s.width:0,dash:s.dash},r._levels={start:o.start,end:i(o),size:l}}}},{"../../components/colorscale":607,"./end_plus":967,"./make_color_map":972}],960:[function(t,e,r){"use strict";e.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}}},{}],961:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("./label_defaults"),i=t("../../components/color"),o=i.addOpacity,s=i.opacity,l=t("../../constants/filter_ops"),c=l.CONSTRAINT_REDUCTION,u=l.COMPARISON_OPS2;e.exports=function(t,e,r,i,l,h){var f,p,d,g=e.contours,m=r("contours.operation");(g._operation=c[m],function(t,e){var r;-1===u.indexOf(e.operation)?(t("contours.value",[0,1]),Array.isArray(e.value)?e.value.length>2?e.value=e.value.slice(2):0===e.length?e.value=[0,1]:e.length<2?(r=parseFloat(e.value[0]),e.value=[r,r+1]):e.value=[parseFloat(e.value[0]),parseFloat(e.value[1])]:n(e.value)&&(r=parseFloat(e.value),e.value=[r,r+1])):(t("contours.value",0),n(e.value)||(Array.isArray(e.value)?e.value=parseFloat(e.value[0]):e.value=0))}(r,g),"="===m?f=g.showlines=!0:(f=r("contours.showlines"),d=r("fillcolor",o((t.line||{}).color||l,.5))),f)&&(p=r("line.color",d&&s(d)?o(e.fillcolor,1):l),r("line.width",2),r("line.dash"));r("line.smoothing"),a(r,i,p,h)}},{"../../components/color":595,"../../constants/filter_ops":700,"./label_defaults":971,"fast-isnumeric":236}],962:[function(t,e,r){"use strict";var n=t("../../constants/filter_ops"),a=t("fast-isnumeric");function i(t,e){var r,i=Array.isArray(e);function o(t){return a(t)?+t:null}return-1!==n.COMPARISON_OPS2.indexOf(t)?r=o(i?e[0]:e):-1!==n.INTERVAL_OPS.indexOf(t)?r=i?[o(e[0]),o(e[1])]:[o(e),o(e)]:-1!==n.SET_OPS.indexOf(t)&&(r=i?e.map(o):[o(e)]),r}function o(t){return function(e){e=i(t,e);var r=Math.min(e[0],e[1]),n=Math.max(e[0],e[1]);return{start:r,end:n,size:n-r}}}function s(t){return function(e){return{start:e=i(t,e),end:1/0,size:1/0}}}e.exports={"[]":o("[]"),"][":o("]["),">":s(">"),"<":s("<"),"=":s("=")}},{"../../constants/filter_ops":700,"fast-isnumeric":236}],963:[function(t,e,r){"use strict";e.exports=function(t,e,r,n){var a=n("contours.start"),i=n("contours.end"),o=!1===a||!1===i,s=r("contours.size");!(o?e.autocontour=!0:r("autocontour",!1))&&s||r("ncontours")}},{}],964:[function(t,e,r){"use strict";var n=t("../../lib");function a(t){return n.extendFlat({},t,{edgepaths:n.extendDeep([],t.edgepaths),paths:n.extendDeep([],t.paths),starts:n.extendDeep([],t.starts)})}e.exports=function(t,e){var r,i,o,s=function(t){return t.reverse()},l=function(t){return t};switch(e){case"=":case"<":return t;case">":for(1!==t.length&&n.warn("Contour data invalid for the specified inequality operation."),i=t[0],r=0;r<i.edgepaths.length;r++)i.edgepaths[r]=s(i.edgepaths[r]);for(r=0;r<i.paths.length;r++)i.paths[r]=s(i.paths[r]);for(r=0;r<i.starts.length;r++)i.starts[r]=s(i.starts[r]);return t;case"][":var c=s;s=l,l=c;case"[]":for(2!==t.length&&n.warn("Contour data invalid for the specified inequality range operation."),i=a(t[0]),o=a(t[1]),r=0;r<i.edgepaths.length;r++)i.edgepaths[r]=s(i.edgepaths[r]);for(r=0;r<i.paths.length;r++)i.paths[r]=s(i.paths[r]);for(r=0;r<i.starts.length;r++)i.starts[r]=s(i.starts[r]);for(;o.edgepaths.length;)i.edgepaths.push(l(o.edgepaths.shift()));for(;o.paths.length;)i.paths.push(l(o.paths.shift()));for(;o.starts.length;)i.starts.push(l(o.starts.shift()));return[i]}}},{"../../lib":728}],965:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../heatmap/xyz_defaults"),i=t("./constraint_defaults"),o=t("./contours_defaults"),s=t("./style_defaults"),l=t("./attributes");e.exports=function(t,e,r,c){function u(r,a){return n.coerce(t,e,l,r,a)}if(a(t,e,u,c)){u("text"),u("hovertext"),u("hovertemplate"),u("hoverongaps");var h="constraint"===u("contours.type");u("connectgaps",n.isArray1D(e.z)),h?i(t,e,u,c,r):(o(t,e,u,(function(r){return n.coerce2(t,e,l,r)})),s(t,e,u,c))}else e.visible=!1}},{"../../lib":728,"../heatmap/xyz_defaults":1027,"./attributes":956,"./constraint_defaults":961,"./contours_defaults":963,"./style_defaults":977}],966:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./constraint_mapping"),i=t("./end_plus");e.exports=function(t,e,r){for(var o="constraint"===t.type?a[t._operation](t.value):t,s=o.size,l=[],c=i(o),u=r.trace._carpetTrace,h=u?{xaxis:u.aaxis,yaxis:u.baxis,x:r.a,y:r.b}:{xaxis:e.xaxis,yaxis:e.yaxis,x:r.x,y:r.y},f=o.start;f<c;f+=s)if(l.push(n.extendFlat({level:f,crossings:{},starts:[],edgepaths:[],paths:[],z:r.z,smoothing:r.trace.line.smoothing},h)),l.length>1e3){n.warn("Too many contours, clipping at 1000",t);break}return l}},{"../../lib":728,"./constraint_mapping":962,"./end_plus":967}],967:[function(t,e,r){"use strict";e.exports=function(t){return t.end+t.size/1e6}},{}],968:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./constants");function i(t,e,r,n){return Math.abs(t[0]-e[0])<r&&Math.abs(t[1]-e[1])<n}function o(t,e,r,o,l){var c,u=e.join(","),h=t.crossings[u],f=function(t,e,r){var n=0,i=0;t>20&&e?208===t||1114===t?n=0===r[0]?1:-1:i=0===r[1]?1:-1:-1!==a.BOTTOMSTART.indexOf(t)?i=1:-1!==a.LEFTSTART.indexOf(t)?n=1:-1!==a.TOPSTART.indexOf(t)?i=-1:n=-1;return[n,i]}(h,r,e),p=[s(t,e,[-f[0],-f[1]])],d=t.z.length,g=t.z[0].length,m=e.slice(),v=f.slice();for(c=0;c<1e4;c++){if(h>20?(h=a.CHOOSESADDLE[h][(f[0]||f[1])<0?0:1],t.crossings[u]=a.SADDLEREMAINDER[h]):delete t.crossings[u],!(f=a.NEWDELTA[h])){n.log("Found bad marching index:",h,e,t.level);break}p.push(s(t,e,f)),e[0]+=f[0],e[1]+=f[1],u=e.join(","),i(p[p.length-1],p[p.length-2],o,l)&&p.pop();var y=f[0]&&(e[0]<0||e[0]>g-2)||f[1]&&(e[1]<0||e[1]>d-2);if(e[0]===m[0]&&e[1]===m[1]&&f[0]===v[0]&&f[1]===v[1]||r&&y)break;h=t.crossings[u]}1e4===c&&n.log("Infinite loop in contour?");var x,b,_,w,T,k,A,M,S,E,C,L,P,I,z,O=i(p[0],p[p.length-1],o,l),D=0,R=.2*t.smoothing,F=[],B=0;for(c=1;c<p.length;c++)L=p[c],P=p[c-1],I=void 0,z=void 0,I=L[2]-P[2],z=L[3]-P[3],D+=A=Math.sqrt(I*I+z*z),F.push(A);var N=D/F.length*R;function j(t){return p[t%p.length]}for(c=p.length-2;c>=B;c--)if((x=F[c])<N){for(_=0,b=c-1;b>=B&&x+F[b]<N;b--)x+=F[b];if(O&&c===p.length-2)for(_=0;_<b&&x+F[_]<N;_++)x+=F[_];T=c-b+_+1,k=Math.floor((c+b+_+2)/2),w=O||c!==p.length-2?O||-1!==b?T%2?j(k):[(j(k)[0]+j(k+1)[0])/2,(j(k)[1]+j(k+1)[1])/2]:p[0]:p[p.length-1],p.splice(b+1,c-b+1,w),c=b+1,_&&(B=_),O&&(c===p.length-2?p[_]=p[p.length-1]:0===c&&(p[p.length-1]=p[0]))}for(p.splice(0,B),c=0;c<p.length;c++)p[c].length=2;if(!(p.length<2))if(O)p.pop(),t.paths.push(p);else{r||n.log("Unclosed interior contour?",t.level,m.join(","),p.join("L"));var V=!1;for(M=0;M<t.edgepaths.length;M++)if(E=t.edgepaths[M],!V&&i(E[0],p[p.length-1],o,l)){p.pop(),V=!0;var U=!1;for(S=0;S<t.edgepaths.length;S++)if(i((C=t.edgepaths[S])[C.length-1],p[0],o,l)){U=!0,p.shift(),t.edgepaths.splice(M,1),S===M?t.paths.push(p.concat(C)):(S>M&&S--,t.edgepaths[S]=C.concat(p,E));break}U||(t.edgepaths[M]=p.concat(E))}for(M=0;M<t.edgepaths.length&&!V;M++)i((E=t.edgepaths[M])[E.length-1],p[0],o,l)&&(p.shift(),t.edgepaths[M]=E.concat(p),V=!0);V||t.edgepaths.push(p)}}function s(t,e,r){var n=e[0]+Math.max(r[0],0),a=e[1]+Math.max(r[1],0),i=t.z[a][n],o=t.xaxis,s=t.yaxis;if(r[1]){var l=(t.level-i)/(t.z[a][n+1]-i);return[o.c2p((1-l)*t.x[n]+l*t.x[n+1],!0),s.c2p(t.y[a],!0),n+l,a]}var c=(t.level-i)/(t.z[a+1][n]-i);return[o.c2p(t.x[n],!0),s.c2p((1-c)*t.y[a]+c*t.y[a+1],!0),n,a+c]}e.exports=function(t,e,r){var a,i,s,l;for(e=e||.01,r=r||.01,i=0;i<t.length;i++){for(s=t[i],l=0;l<s.starts.length;l++)o(s,s.starts[l],"edge",e,r);for(a=0;Object.keys(s.crossings).length&&a<1e4;)a++,o(s,Object.keys(s.crossings)[0].split(",").map(Number),void 0,e,r);1e4===a&&n.log("Infinite loop in contour?")}}},{"../../lib":728,"./constants":960}],969:[function(t,e,r){"use strict";var n=t("../../components/color"),a=t("../heatmap/hover");e.exports=function(t,e,r,i,o){var s=a(t,e,r,i,o,!0);return s&&s.forEach((function(t){var e=t.trace;"constraint"===e.contours.type&&(e.fillcolor&&n.opacity(e.fillcolor)?t.color=n.addOpacity(e.fillcolor,1):e.contours.showlines&&n.opacity(e.line.color)&&(t.color=n.addOpacity(e.line.color,1)))})),s}},{"../../components/color":595,"../heatmap/hover":1020}],970:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),supplyDefaults:t("./defaults"),calc:t("./calc"),plot:t("./plot").plot,style:t("./style"),colorbar:t("./colorbar"),hoverPoints:t("./hover"),moduleType:"trace",name:"contour",basePlotModule:t("../../plots/cartesian"),categories:["cartesian","svg","2dMap","contour","showLegend"],meta:{}}},{"../../plots/cartesian":789,"./attributes":956,"./calc":957,"./colorbar":959,"./defaults":965,"./hover":969,"./plot":974,"./style":976}],971:[function(t,e,r){"use strict";var n=t("../../lib");e.exports=function(t,e,r,a){if(a||(a={}),t("contours.showlabels")){var i=e.font;n.coerceFont(t,"contours.labelfont",{family:i.family,size:i.size,color:r}),t("contours.labelformat")}!1!==a.hasHover&&t("zhoverformat")}},{"../../lib":728}],972:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../components/colorscale"),i=t("./end_plus");e.exports=function(t){var e=t.contours,r=e.start,o=i(e),s=e.size||1,l=Math.floor((o-r)/s)+1,c="lines"===e.coloring?0:1,u=a.extractOpts(t);isFinite(s)||(s=1,l=1);var h,f,p=u.reversescale?a.flipScale(u.colorscale):u.colorscale,d=p.length,g=new Array(d),m=new Array(d);if("heatmap"===e.coloring){var v=u.min,y=u.max;for(f=0;f<d;f++)h=p[f],g[f]=h[0]*(y-v)+v,m[f]=h[1];var x=n.extent([v,y,e.start,e.start+s*(l-1)]),b=x[v<y?0:1],_=x[v<y?1:0];b!==v&&(g.splice(0,0,b),m.splice(0,0,m[0])),_!==y&&(g.push(_),m.push(m[m.length-1]))}else for(f=0;f<d;f++)h=p[f],g[f]=(h[0]*(l+c-1)-c/2)*s+r,m[f]=h[1];return a.makeColorScaleFunc({domain:g,range:m},{noNumericCheck:!0})}},{"../../components/colorscale":607,"./end_plus":967,d3:164}],973:[function(t,e,r){"use strict";var n=t("./constants");function a(t,e){var r=(e[0][0]>t?0:1)+(e[0][1]>t?0:2)+(e[1][1]>t?0:4)+(e[1][0]>t?0:8);return 5===r||10===r?t>(e[0][0]+e[0][1]+e[1][0]+e[1][1])/4?5===r?713:1114:5===r?104:208:15===r?0:r}e.exports=function(t){var e,r,i,o,s,l,c,u,h,f=t[0].z,p=f.length,d=f[0].length,g=2===p||2===d;for(r=0;r<p-1;r++)for(o=[],0===r&&(o=o.concat(n.BOTTOMSTART)),r===p-2&&(o=o.concat(n.TOPSTART)),e=0;e<d-1;e++)for(i=o.slice(),0===e&&(i=i.concat(n.LEFTSTART)),e===d-2&&(i=i.concat(n.RIGHTSTART)),s=e+","+r,l=[[f[r][e],f[r][e+1]],[f[r+1][e],f[r+1][e+1]]],h=0;h<t.length;h++)(c=a((u=t[h]).level,l))&&(u.crossings[s]=c,-1!==i.indexOf(c)&&(u.starts.push([e,r]),g&&-1!==i.indexOf(c,i.indexOf(c)+1)&&u.starts.push([e,r])))}},{"./constants":960}],974:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../lib"),i=t("../../components/drawing"),o=t("../../components/colorscale"),s=t("../../lib/svg_text_utils"),l=t("../../plots/cartesian/axes"),c=t("../../plots/cartesian/set_convert"),u=t("../heatmap/plot"),h=t("./make_crossings"),f=t("./find_all_paths"),p=t("./empty_pathinfo"),d=t("./convert_to_constraints"),g=t("./close_boundaries"),m=t("./constants"),v=m.LABELOPTIMIZER;function y(t,e){var r,n,o,s,l,c,u,h="",f=0,p=t.edgepaths.map((function(t,e){return e})),d=!0;function g(t){return Math.abs(t[1]-e[2][1])<.01}function m(t){return Math.abs(t[0]-e[0][0])<.01}function v(t){return Math.abs(t[0]-e[2][0])<.01}for(;p.length;){for(c=i.smoothopen(t.edgepaths[f],t.smoothing),h+=d?c:c.replace(/^M/,"L"),p.splice(p.indexOf(f),1),r=t.edgepaths[f][t.edgepaths[f].length-1],s=-1,o=0;o<4;o++){if(!r){a.log("Missing end?",f,t);break}for(u=r,Math.abs(u[1]-e[0][1])<.01&&!v(r)?n=e[1]:m(r)?n=e[0]:g(r)?n=e[3]:v(r)&&(n=e[2]),l=0;l<t.edgepaths.length;l++){var y=t.edgepaths[l][0];Math.abs(r[0]-n[0])<.01?Math.abs(r[0]-y[0])<.01&&(y[1]-r[1])*(n[1]-y[1])>=0&&(n=y,s=l):Math.abs(r[1]-n[1])<.01?Math.abs(r[1]-y[1])<.01&&(y[0]-r[0])*(n[0]-y[0])>=0&&(n=y,s=l):a.log("endpt to newendpt is not vert. or horz.",r,n,y)}if(r=n,s>=0)break;h+="L"+n}if(s===t.edgepaths.length){a.log("unclosed perimeter path");break}f=s,(d=-1===p.indexOf(f))&&(f=p[0],h+="Z")}for(f=0;f<t.paths.length;f++)h+=i.smoothclosed(t.paths[f],t.smoothing);return h}function x(t,e,r,n){var i=e.width/2,o=e.height/2,s=t.x,l=t.y,c=t.theta,u=Math.cos(c)*i,h=Math.sin(c)*i,f=(s>n.center?n.right-s:s-n.left)/(u+Math.abs(Math.sin(c)*o)),p=(l>n.middle?n.bottom-l:l-n.top)/(Math.abs(h)+Math.cos(c)*o);if(f<1||p<1)return 1/0;var d=v.EDGECOST*(1/(f-1)+1/(p-1));d+=v.ANGLECOST*c*c;for(var g=s-u,m=l-h,y=s+u,x=l+h,b=0;b<r.length;b++){var _=r[b],w=Math.cos(_.theta)*_.width/2,T=Math.sin(_.theta)*_.width/2,k=2*a.segmentDistance(g,m,y,x,_.x-w,_.y-T,_.x+w,_.y+T)/(e.height+_.height),A=_.level===e.level,M=A?v.SAMELEVELDISTANCE:1;if(k<=M)return 1/0;d+=v.NEIGHBORCOST*(A?v.SAMELEVELFACTOR:1)/(k-M)}return d}function b(t){var e,r,n=t.trace._emptypoints,a=[],i=t.z.length,o=t.z[0].length,s=[];for(e=0;e<o;e++)s.push(1);for(e=0;e<i;e++)a.push(s.slice());for(e=0;e<n.length;e++)a[(r=n[e])[0]][r[1]]=0;return t.zmask=a,a}r.plot=function(t,e,o,s){var l=e.xaxis,c=e.yaxis;a.makeTraceGroups(s,o,"contour").each((function(o){var s=n.select(this),v=o[0],x=v.trace,_=v.x,w=v.y,T=x.contours,k=p(T,e,v),A=a.ensureSingle(s,"g","heatmapcoloring"),M=[];"heatmap"===T.coloring&&(M=[o]),u(t,e,M,A),h(k),f(k);var S=l.c2p(_[0],!0),E=l.c2p(_[_.length-1],!0),C=c.c2p(w[0],!0),L=c.c2p(w[w.length-1],!0),P=[[S,L],[E,L],[E,C],[S,C]],I=k;"constraint"===T.type&&(I=d(k,T._operation)),function(t,e,r){var n=a.ensureSingle(t,"g","contourbg").selectAll("path").data("fill"===r.coloring?[0]:[]);n.enter().append("path"),n.exit().remove(),n.attr("d","M"+e.join("L")+"Z").style("stroke","none")}(s,P,T),function(t,e,r,i){var o="fill"===i.coloring||"constraint"===i.type&&"="!==i._operation,s="M"+r.join("L")+"Z";o&&g(e,i);var l=a.ensureSingle(t,"g","contourfill").selectAll("path").data(o?e:[]);l.enter().append("path"),l.exit().remove(),l.each((function(t){var e=(t.prefixBoundary?s:"")+y(t,r);e?n.select(this).attr("d",e).style("stroke","none"):n.select(this).remove()}))}(s,I,P,T),function(t,e,o,s,l){var c=a.ensureSingle(t,"g","contourlines"),u=!1!==l.showlines,h=l.showlabels,f=u&&h,p=r.createLines(c,u||h,e),d=r.createLineClip(c,f,o,s.trace.uid),g=t.selectAll("g.contourlabels").data(h?[0]:[]);if(g.exit().remove(),g.enter().append("g").classed("contourlabels",!0),h){var v=[],y=[];a.clearLocationCache();var x=r.labelFormatter(o,s),b=i.tester.append("text").attr("data-notex",1).call(i.font,l.labelfont),_=e[0].xaxis,w=e[0].yaxis,T=_._length,k=w._length,A=_.range,M=w.range,S=a.aggNums(Math.min,null,s.x),E=a.aggNums(Math.max,null,s.x),C=a.aggNums(Math.min,null,s.y),L=a.aggNums(Math.max,null,s.y),P=Math.max(_.c2p(S,!0),0),I=Math.min(_.c2p(E,!0),T),z=Math.max(w.c2p(L,!0),0),O=Math.min(w.c2p(C,!0),k),D={};A[0]<A[1]?(D.left=P,D.right=I):(D.left=I,D.right=P),M[0]<M[1]?(D.top=z,D.bottom=O):(D.top=O,D.bottom=z),D.middle=(D.top+D.bottom)/2,D.center=(D.left+D.right)/2,v.push([[D.left,D.top],[D.right,D.top],[D.right,D.bottom],[D.left,D.bottom]]);var R=Math.sqrt(T*T+k*k),F=m.LABELDISTANCE*R/Math.max(1,e.length/m.LABELINCREASE);p.each((function(t){var e=r.calcTextOpts(t.level,x,b,o);n.select(this).selectAll("path").each((function(){var t=a.getVisibleSegment(this,D,e.height/2);if(t&&!(t.len<(e.width+e.height)*m.LABELMIN))for(var n=Math.min(Math.ceil(t.len/F),m.LABELMAX),i=0;i<n;i++){var o=r.findBestTextLocation(this,t,e,y,D);if(!o)break;r.addLabelData(o,e,y,v)}}))})),b.remove(),r.drawLabels(g,y,o,d,f?v:null)}h&&!u&&p.remove()}(s,k,t,v,T),function(t,e,r,n,o){var s=n.trace,l=r._fullLayout._clips,c="clip"+s.uid,u=l.selectAll("#"+c).data(s.connectgaps?[]:[0]);if(u.enter().append("clipPath").classed("contourclip",!0).attr("id",c),u.exit().remove(),!1===s.connectgaps){var p={level:.9,crossings:{},starts:[],edgepaths:[],paths:[],xaxis:e.xaxis,yaxis:e.yaxis,x:n.x,y:n.y,z:b(n),smoothing:0};h([p]),f([p]),g([p],{type:"levels"}),a.ensureSingle(u,"path","").attr("d",(p.prefixBoundary?"M"+o.join("L")+"Z":"")+y(p,o))}else c=null;i.setClipUrl(t,c,r)}(s,e,t,v,P)}))},r.createLines=function(t,e,r){var n=r[0].smoothing,a=t.selectAll("g.contourlevel").data(e?r:[]);if(a.exit().remove(),a.enter().append("g").classed("contourlevel",!0),e){var o=a.selectAll("path.openline").data((function(t){return t.pedgepaths||t.edgepaths}));o.exit().remove(),o.enter().append("path").classed("openline",!0),o.attr("d",(function(t){return i.smoothopen(t,n)})).style("stroke-miterlimit",1).style("vector-effect","non-scaling-stroke");var s=a.selectAll("path.closedline").data((function(t){return t.ppaths||t.paths}));s.exit().remove(),s.enter().append("path").classed("closedline",!0),s.attr("d",(function(t){return i.smoothclosed(t,n)})).style("stroke-miterlimit",1).style("vector-effect","non-scaling-stroke")}return a},r.createLineClip=function(t,e,r,n){var a=e?"clipline"+n:null,o=r._fullLayout._clips.selectAll("#"+a).data(e?[0]:[]);return o.exit().remove(),o.enter().append("clipPath").classed("contourlineclip",!0).attr("id",a),i.setClipUrl(t,a,r),o},r.labelFormatter=function(t,e){var r=t._fullLayout,n=e.trace,a=n.contours,i={type:"linear",_id:"ycontour",showexponent:"all",exponentformat:"B"};if(a.labelformat)i.tickformat=a.labelformat,c(i,r);else{var s=o.extractOpts(n);if(s&&s.colorbar&&s.colorbar._axis)i=s.colorbar._axis;else{if("constraint"===a.type){var u=a.value;Array.isArray(u)?i.range=[u[0],u[u.length-1]]:i.range=[u,u]}else i.range=[a.start,a.end],i.nticks=(a.end-a.start)/a.size;i.range[0]===i.range[1]&&(i.range[1]+=i.range[0]||1),i.nticks||(i.nticks=1e3),c(i,r),l.prepTicks(i),i._tmin=null,i._tmax=null}}return function(t){return l.tickText(i,t).text}},r.calcTextOpts=function(t,e,r,n){var a=e(t);r.text(a).call(s.convertToTspans,n);var o=r.node(),l=i.bBox(o,!0);return{text:a,width:l.width,height:l.height,fontSize:+o.style["font-size"].replace("px",""),level:t,dy:(l.top+l.bottom)/2}},r.findBestTextLocation=function(t,e,r,n,i){var o,s,l,c,u,h=r.width;e.isClosed?(s=e.len/v.INITIALSEARCHPOINTS,o=e.min+s/2,l=e.max):(s=(e.len-h)/(v.INITIALSEARCHPOINTS+1),o=e.min+s+h/2,l=e.max-(s+h)/2);for(var f=1/0,p=0;p<v.ITERATIONS;p++){for(var d=o;d<l;d+=s){var g=a.getTextLocation(t,e.total,d,h),m=x(g,r,n,i);m<f&&(f=m,u=g,c=d)}if(f>2*v.MAXCOST)break;p&&(s/=2),l=(o=c-s/2)+1.5*s}if(f<=v.MAXCOST)return u},r.addLabelData=function(t,e,r,n){var a=e.fontSize,i=e.width+a/3,o=Math.max(0,e.height-a/3),s=t.x,l=t.y,c=t.theta,u=Math.sin(c),h=Math.cos(c),f=function(t,e){return[s+t*h-e*u,l+t*u+e*h]},p=[f(-i/2,-o/2),f(-i/2,o/2),f(i/2,o/2),f(i/2,-o/2)];r.push({text:e.text,x:s,y:l,dy:e.dy,theta:c,level:e.level,width:i,height:o}),n.push(p)},r.drawLabels=function(t,e,r,i,o){var l=t.selectAll("text").data(e,(function(t){return t.text+","+t.x+","+t.y+","+t.theta}));if(l.exit().remove(),l.enter().append("text").attr({"data-notex":1,"text-anchor":"middle"}).each((function(t){var e=t.x+Math.sin(t.theta)*t.dy,a=t.y-Math.cos(t.theta)*t.dy;n.select(this).text(t.text).attr({x:e,y:a,transform:"rotate("+180*t.theta/Math.PI+" "+e+" "+a+")"}).call(s.convertToTspans,r)})),o){for(var c="",u=0;u<o.length;u++)c+="M"+o[u].join("L")+"Z";a.ensureSingle(i,"path","").attr("d",c)}}},{"../../components/colorscale":607,"../../components/drawing":617,"../../lib":728,"../../lib/svg_text_utils":752,"../../plots/cartesian/axes":776,"../../plots/cartesian/set_convert":796,"../heatmap/plot":1024,"./close_boundaries":958,"./constants":960,"./convert_to_constraints":964,"./empty_pathinfo":966,"./find_all_paths":968,"./make_crossings":973,d3:164}],975:[function(t,e,r){"use strict";var n=t("../../plots/cartesian/axes"),a=t("../../lib");function i(t,e,r){var a={type:"linear",range:[t,e]};return n.autoTicks(a,(e-t)/(r||15)),a}e.exports=function(t,e){var r=t.contours;if(t.autocontour){var o=t.zmin,s=t.zmax;(t.zauto||void 0===o)&&(o=a.aggNums(Math.min,null,e)),(t.zauto||void 0===s)&&(s=a.aggNums(Math.max,null,e));var l=i(o,s,t.ncontours);r.size=l.dtick,r.start=n.tickFirst(l),l.range.reverse(),r.end=n.tickFirst(l),r.start===o&&(r.start+=r.size),r.end===s&&(r.end-=r.size),r.start>r.end&&(r.start=r.end=(r.start+r.end)/2),t._input.contours||(t._input.contours={}),a.extendFlat(t._input.contours,{start:r.start,end:r.end,size:r.size}),t._input.autocontour=!0}else if("constraint"!==r.type){var c,u=r.start,h=r.end,f=t._input.contours;if(u>h&&(r.start=f.start=h,h=r.end=f.end=u,u=r.start),!(r.size>0))c=u===h?1:i(u,h,t.ncontours).dtick,f.size=r.size=c}}},{"../../lib":728,"../../plots/cartesian/axes":776}],976:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../components/drawing"),i=t("../heatmap/style"),o=t("./make_color_map");e.exports=function(t){var e=n.select(t).selectAll("g.contour");e.style("opacity",(function(t){return t[0].trace.opacity})),e.each((function(t){var e=n.select(this),r=t[0].trace,i=r.contours,s=r.line,l=i.size||1,c=i.start,u="constraint"===i.type,h=!u&&"lines"===i.coloring,f=!u&&"fill"===i.coloring,p=h||f?o(r):null;e.selectAll("g.contourlevel").each((function(t){n.select(this).selectAll("path").call(a.lineGroupStyle,s.width,h?p(t.level):s.color,s.dash)}));var d=i.labelfont;if(e.selectAll("g.contourlabels text").each((function(t){a.font(n.select(this),{family:d.family,size:d.size,color:d.color||(h?p(t.level):s.color)})})),u)e.selectAll("g.contourfill path").style("fill",r.fillcolor);else if(f){var g;e.selectAll("g.contourfill path").style("fill",(function(t){return void 0===g&&(g=t.level),p(t.level+.5*l)})),void 0===g&&(g=c),e.selectAll("g.contourbg path").style("fill",p(g-.5*l))}})),i(t)}},{"../../components/drawing":617,"../heatmap/style":1025,"./make_color_map":972,d3:164}],977:[function(t,e,r){"use strict";var n=t("../../components/colorscale/defaults"),a=t("./label_defaults");e.exports=function(t,e,r,i,o){var s,l=r("contours.coloring"),c="";"fill"===l&&(s=r("contours.showlines")),!1!==s&&("lines"!==l&&(c=r("line.color","#000")),r("line.width",.5),r("line.dash")),"none"!==l&&(!0!==t.showlegend&&(e.showlegend=!1),e._dfltShowLegend=!1,n(t,e,i,r,{prefix:"",cLetter:"z"})),r("line.smoothing"),a(r,i,c,o)}},{"../../components/colorscale/defaults":605,"./label_defaults":971}],978:[function(t,e,r){"use strict";var n=t("../heatmap/attributes"),a=t("../contour/attributes"),i=t("../../components/colorscale/attributes"),o=t("../../lib/extend").extendFlat,s=a.contours;e.exports=o({carpet:{valType:"string",editType:"calc"},z:n.z,a:n.x,a0:n.x0,da:n.dx,b:n.y,b0:n.y0,db:n.dy,text:n.text,hovertext:n.hovertext,transpose:n.transpose,atype:n.xtype,btype:n.ytype,fillcolor:a.fillcolor,autocontour:a.autocontour,ncontours:a.ncontours,contours:{type:s.type,start:s.start,end:s.end,size:s.size,coloring:{valType:"enumerated",values:["fill","lines","none"],dflt:"fill",editType:"calc"},showlines:s.showlines,showlabels:s.showlabels,labelfont:s.labelfont,labelformat:s.labelformat,operation:s.operation,value:s.value,editType:"calc",impliedEdits:{autocontour:!1}},line:{color:a.line.color,width:a.line.width,dash:a.line.dash,smoothing:a.line.smoothing,editType:"plot"},transforms:void 0},i("",{cLetter:"z",autoColorDflt:!1}))},{"../../components/colorscale/attributes":602,"../../lib/extend":719,"../contour/attributes":956,"../heatmap/attributes":1013}],979:[function(t,e,r){"use strict";var n=t("../../components/colorscale/calc"),a=t("../../lib"),i=t("../heatmap/convert_column_xyz"),o=t("../heatmap/clean_2d_array"),s=t("../heatmap/interp2d"),l=t("../heatmap/find_empties"),c=t("../heatmap/make_bound_array"),u=t("./defaults"),h=t("../carpet/lookup_carpetid"),f=t("../contour/set_contours");e.exports=function(t,e){var r=e._carpetTrace=h(t,e);if(r&&r.visible&&"legendonly"!==r.visible){if(!e.a||!e.b){var p=t.data[r.index],d=t.data[e.index];d.a||(d.a=p.a),d.b||(d.b=p.b),u(d,e,e._defaultColor,t._fullLayout)}var g=function(t,e){var r,u,h,f,p,d,g,m=e._carpetTrace,v=m.aaxis,y=m.baxis;v._minDtick=0,y._minDtick=0,a.isArray1D(e.z)&&i(e,v,y,"a","b",["z"]);r=e._a=e._a||e.a,f=e._b=e._b||e.b,r=r?v.makeCalcdata(e,"_a"):[],f=f?y.makeCalcdata(e,"_b"):[],u=e.a0||0,h=e.da||1,p=e.b0||0,d=e.db||1,g=e._z=o(e._z||e.z,e.transpose),e._emptypoints=l(g),s(g,e._emptypoints);var x=a.maxRowLength(g),b="scaled"===e.xtype?"":r,_=c(e,b,u,h,x,v),w="scaled"===e.ytype?"":f,T=c(e,w,p,d,g.length,y),k={a:_,b:T,z:g};"levels"===e.contours.type&&"none"!==e.contours.coloring&&n(t,e,{vals:g,containerStr:"",cLetter:"z"});return[k]}(t,e);return f(e,e._z),g}}},{"../../components/colorscale/calc":603,"../../lib":728,"../carpet/lookup_carpetid":929,"../contour/set_contours":975,"../heatmap/clean_2d_array":1015,"../heatmap/convert_column_xyz":1017,"../heatmap/find_empties":1019,"../heatmap/interp2d":1022,"../heatmap/make_bound_array":1023,"./defaults":980}],980:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../heatmap/xyz_defaults"),i=t("./attributes"),o=t("../contour/constraint_defaults"),s=t("../contour/contours_defaults"),l=t("../contour/style_defaults");e.exports=function(t,e,r,c){function u(r,a){return n.coerce(t,e,i,r,a)}if(u("carpet"),t.a&&t.b){if(!a(t,e,u,c,"a","b"))return void(e.visible=!1);u("text"),"constraint"===u("contours.type")?o(t,e,u,c,r,{hasHover:!1}):(s(t,e,u,(function(r){return n.coerce2(t,e,i,r)})),l(t,e,u,c,{hasHover:!1}))}else e._defaultColor=r,e._length=null}},{"../../lib":728,"../contour/constraint_defaults":961,"../contour/contours_defaults":963,"../contour/style_defaults":977,"../heatmap/xyz_defaults":1027,"./attributes":978}],981:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),supplyDefaults:t("./defaults"),colorbar:t("../contour/colorbar"),calc:t("./calc"),plot:t("./plot"),style:t("../contour/style"),moduleType:"trace",name:"contourcarpet",basePlotModule:t("../../plots/cartesian"),categories:["cartesian","svg","carpet","contour","symbols","showLegend","hasLines","carpetDependent","noHover","noSortingByValue"],meta:{}}},{"../../plots/cartesian":789,"../contour/colorbar":959,"../contour/style":976,"./attributes":978,"./calc":979,"./defaults":980,"./plot":982}],982:[function(t,e,r){"use strict";var n=t("d3"),a=t("../carpet/map_1d_array"),i=t("../carpet/makepath"),o=t("../../components/drawing"),s=t("../../lib"),l=t("../contour/make_crossings"),c=t("../contour/find_all_paths"),u=t("../contour/plot"),h=t("../contour/constants"),f=t("../contour/convert_to_constraints"),p=t("../contour/empty_pathinfo"),d=t("../contour/close_boundaries"),g=t("../carpet/lookup_carpetid"),m=t("../carpet/axis_aligned_line");function v(t,e,r){var n=t.getPointAtLength(e),a=t.getPointAtLength(r),i=a.x-n.x,o=a.y-n.y,s=Math.sqrt(i*i+o*o);return[i/s,o/s]}function y(t){var e=Math.sqrt(t[0]*t[0]+t[1]*t[1]);return[t[0]/e,t[1]/e]}function x(t,e){var r=Math.abs(t[0]*e[0]+t[1]*e[1]);return Math.sqrt(1-r*r)/r}e.exports=function(t,e,r,b){var _=e.xaxis,w=e.yaxis;s.makeTraceGroups(b,r,"contour").each((function(r){var b=n.select(this),T=r[0],k=T.trace,A=k._carpetTrace=g(t,k),M=t.calcdata[A.index][0];if(A.visible&&"legendonly"!==A.visible){var S=T.a,E=T.b,C=k.contours,L=p(C,e,T),P="constraint"===C.type,I=C._operation,z=P?"="===I?"lines":"fill":C.coloring,O=[[S[0],E[E.length-1]],[S[S.length-1],E[E.length-1]],[S[S.length-1],E[0]],[S[0],E[0]]];l(L);var D=1e-8*(S[S.length-1]-S[0]),R=1e-8*(E[E.length-1]-E[0]);c(L,D,R);var F,B,N,j,V=L;"constraint"===C.type&&(V=f(L,I)),function(t,e){var r,n,a,i,o,s,l,c,u;for(r=0;r<t.length;r++){for(i=t[r],o=i.pedgepaths=[],s=i.ppaths=[],n=0;n<i.edgepaths.length;n++){for(u=i.edgepaths[n],l=[],a=0;a<u.length;a++)l[a]=e(u[a]);o.push(l)}for(n=0;n<i.paths.length;n++){for(u=i.paths[n],c=[],a=0;a<u.length;a++)c[a]=e(u[a]);s.push(c)}}}(L,H);var U=[];for(j=M.clipsegments.length-1;j>=0;j--)F=M.clipsegments[j],B=a([],F.x,_.c2p),N=a([],F.y,w.c2p),B.reverse(),N.reverse(),U.push(i(B,N,F.bicubic));var q="M"+U.join("L")+"Z";!function(t,e,r,n,o,l){var c,u,h,f,p=s.ensureSingle(t,"g","contourbg").selectAll("path").data("fill"!==l||o?[]:[0]);p.enter().append("path"),p.exit().remove();var d=[];for(f=0;f<e.length;f++)c=e[f],u=a([],c.x,r.c2p),h=a([],c.y,n.c2p),d.push(i(u,h,c.bicubic));p.attr("d","M"+d.join("L")+"Z").style("stroke","none")}(b,M.clipsegments,_,w,P,z),function(t,e,r,a,i,l,c,u,h,f,p){var g="fill"===f;g&&d(i,t.contours);var v=s.ensureSingle(e,"g","contourfill").selectAll("path").data(g?i:[]);v.enter().append("path"),v.exit().remove(),v.each((function(t){var e=(t.prefixBoundary?p:"")+function(t,e,r,n,a,i,l,c){var u,h,f,p,d,g,v,y="",x=e.edgepaths.map((function(t,e){return e})),b=!0,_=1e-4*Math.abs(r[0][0]-r[2][0]),w=1e-4*Math.abs(r[0][1]-r[2][1]);function T(t){return Math.abs(t[1]-r[0][1])<w}function k(t){return Math.abs(t[1]-r[2][1])<w}function A(t){return Math.abs(t[0]-r[0][0])<_}function M(t){return Math.abs(t[0]-r[2][0])<_}function S(t,e){var r,n,o,s,u="";for(T(t)&&!M(t)||k(t)&&!A(t)?(s=a.aaxis,o=m(a,i,[t[0],e[0]],.5*(t[1]+e[1]))):(s=a.baxis,o=m(a,i,.5*(t[0]+e[0]),[t[1],e[1]])),r=1;r<o.length;r++)for(u+=s.smoothing?"C":"L",n=0;n<o[r].length;n++){var h=o[r][n];u+=[l.c2p(h[0]),c.c2p(h[1])]+" "}return u}u=0,h=null;for(;x.length;){var E=e.edgepaths[u][0];for(h&&(y+=S(h,E)),v=o.smoothopen(e.edgepaths[u].map(n),e.smoothing),y+=b?v:v.replace(/^M/,"L"),x.splice(x.indexOf(u),1),h=e.edgepaths[u][e.edgepaths[u].length-1],d=-1,p=0;p<4;p++){if(!h){s.log("Missing end?",u,e);break}for(T(h)&&!M(h)?f=r[1]:A(h)?f=r[0]:k(h)?f=r[3]:M(h)&&(f=r[2]),g=0;g<e.edgepaths.length;g++){var C=e.edgepaths[g][0];Math.abs(h[0]-f[0])<_?Math.abs(h[0]-C[0])<_&&(C[1]-h[1])*(f[1]-C[1])>=0&&(f=C,d=g):Math.abs(h[1]-f[1])<w?Math.abs(h[1]-C[1])<w&&(C[0]-h[0])*(f[0]-C[0])>=0&&(f=C,d=g):s.log("endpt to newendpt is not vert. or horz.",h,f,C)}if(d>=0)break;y+=S(h,f),h=f}if(d===e.edgepaths.length){s.log("unclosed perimeter path");break}u=d,(b=-1===x.indexOf(u))&&(u=x[0],y+=S(h,f)+"Z",h=null)}for(u=0;u<e.paths.length;u++)y+=o.smoothclosed(e.paths[u].map(n),e.smoothing);return y}(0,t,l,c,u,h,r,a);e?n.select(this).attr("d",e).style("stroke","none"):n.select(this).remove()}))}(k,b,_,w,V,O,H,A,M,z,q),function(t,e,r,a,i,l,c){var f=s.ensureSingle(t,"g","contourlines"),p=!1!==i.showlines,d=i.showlabels,g=p&&d,m=u.createLines(f,p||d,e),b=u.createLineClip(f,g,r,a.trace.uid),_=t.selectAll("g.contourlabels").data(d?[0]:[]);if(_.exit().remove(),_.enter().append("g").classed("contourlabels",!0),d){var w=l.xaxis,T=l.yaxis,k=w._length,A=T._length,M=[[[0,0],[k,0],[k,A],[0,A]]],S=[];s.clearLocationCache();var E=u.labelFormatter(r,a),C=o.tester.append("text").attr("data-notex",1).call(o.font,i.labelfont),L={left:0,right:k,center:k/2,top:0,bottom:A,middle:A/2},P=Math.sqrt(k*k+A*A),I=h.LABELDISTANCE*P/Math.max(1,e.length/h.LABELINCREASE);m.each((function(t){var e=u.calcTextOpts(t.level,E,C,r);n.select(this).selectAll("path").each((function(r){var n=s.getVisibleSegment(this,L,e.height/2);if(n&&(function(t,e,r,n,a,i){for(var o,s=0;s<r.pedgepaths.length;s++)e===r.pedgepaths[s]&&(o=r.edgepaths[s]);if(!o)return;var l=a.a[0],c=a.a[a.a.length-1],u=a.b[0],h=a.b[a.b.length-1];function f(t,e){var r,n=0;return(Math.abs(t[0]-l)<.1||Math.abs(t[0]-c)<.1)&&(r=y(a.dxydb_rough(t[0],t[1],.1)),n=Math.max(n,i*x(e,r)/2)),(Math.abs(t[1]-u)<.1||Math.abs(t[1]-h)<.1)&&(r=y(a.dxyda_rough(t[0],t[1],.1)),n=Math.max(n,i*x(e,r)/2)),n}var p=v(t,0,1),d=v(t,n.total,n.total-1),g=f(o[0],p),m=n.total-f(o[o.length-1],d);n.min<g&&(n.min=g);n.max>m&&(n.max=m);n.len=n.max-n.min}(this,r,t,n,c,e.height),!(n.len<(e.width+e.height)*h.LABELMIN)))for(var a=Math.min(Math.ceil(n.len/I),h.LABELMAX),i=0;i<a;i++){var o=u.findBestTextLocation(this,n,e,S,L);if(!o)break;u.addLabelData(o,e,S,M)}}))})),C.remove(),u.drawLabels(_,S,r,b,g?M:null)}d&&!p&&m.remove()}(b,L,t,T,C,e,A),o.setClipUrl(b,A._clipPathId,t)}function H(t){var e=A.ab2xy(t[0],t[1],!0);return[_.c2p(e[0]),w.c2p(e[1])]}}))}},{"../../components/drawing":617,"../../lib":728,"../carpet/axis_aligned_line":913,"../carpet/lookup_carpetid":929,"../carpet/makepath":930,"../carpet/map_1d_array":931,"../contour/close_boundaries":958,"../contour/constants":960,"../contour/convert_to_constraints":964,"../contour/empty_pathinfo":966,"../contour/find_all_paths":968,"../contour/make_crossings":973,"../contour/plot":974,d3:164}],983:[function(t,e,r){"use strict";var n=t("../../components/colorscale/attributes"),a=t("../../plots/template_attributes").hovertemplateAttrs,i=t("../../plots/attributes"),o=t("../scattermapbox/attributes"),s=t("../../lib/extend").extendFlat;e.exports=s({lon:o.lon,lat:o.lat,z:{valType:"data_array",editType:"calc"},radius:{valType:"number",editType:"plot",arrayOk:!0,min:1,dflt:30},below:{valType:"string",editType:"plot"},text:o.text,hovertext:o.hovertext,hoverinfo:s({},i.hoverinfo,{flags:["lon","lat","z","text","name"]}),hovertemplate:a(),showlegend:s({},i.showlegend,{dflt:!1})},n("",{cLetter:"z",editTypeOverride:"calc"}))},{"../../components/colorscale/attributes":602,"../../lib/extend":719,"../../plots/attributes":773,"../../plots/template_attributes":854,"../scattermapbox/attributes":1198}],984:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../../lib").isArrayOrTypedArray,i=t("../../constants/numerical").BADNUM,o=t("../../components/colorscale/calc"),s=t("../../lib")._;e.exports=function(t,e){for(var r=e._length,l=new Array(r),c=e.z,u=a(c)&&c.length,h=0;h<r;h++){var f=l[h]={},p=e.lon[h],d=e.lat[h];if(f.lonlat=n(p)&&n(d)?[+p,+d]:[i,i],u){var g=c[h];f.z=n(g)?g:i}}return o(t,e,{vals:u?c:[0,1],containerStr:"",cLetter:"z"}),r&&(l[0].t={labels:{lat:s(t,"lat:")+" ",lon:s(t,"lon:")+" "}}),l}},{"../../components/colorscale/calc":603,"../../constants/numerical":704,"../../lib":728,"fast-isnumeric":236}],985:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../../lib"),i=t("../../components/color"),o=t("../../components/colorscale"),s=t("../../constants/numerical").BADNUM,l=t("../../lib/geojson_utils").makeBlank;e.exports=function(t){var e=t[0].trace,r=!0===e.visible&&0!==e._length,c=e._opts={heatmap:{layout:{visibility:"none"},paint:{}},geojson:l()};if(!r)return c;var u,h=[],f=e.z,p=e.radius,d=a.isArrayOrTypedArray(f)&&f.length,g=a.isArrayOrTypedArray(p);for(u=0;u<t.length;u++){var m=t[u],v=m.lonlat;if(v[0]!==s){var y={};if(d){var x=m.z;y.z=x!==s?x:0}g&&(y.r=n(p[u])&&p[u]>0?+p[u]:0),h.push({type:"Feature",geometry:{type:"Point",coordinates:v},properties:y})}}var b=o.extractOpts(e),_=b.reversescale?o.flipScale(b.colorscale):b.colorscale,w=_[0][1],T=["interpolate",["linear"],["heatmap-density"],0,i.opacity(w)<1?w:i.addOpacity(w,0)];for(u=1;u<_.length;u++)T.push(_[u][0],_[u][1]);var k=["interpolate",["linear"],["get","z"],b.min,0,b.max,1];return a.extendFlat(c.heatmap.paint,{"heatmap-weight":d?k:1/(b.max-b.min),"heatmap-color":T,"heatmap-radius":g?{type:"identity",property:"r"}:e.radius,"heatmap-opacity":e.opacity}),c.geojson={type:"FeatureCollection",features:h},c.heatmap.layout.visibility="visible",c}},{"../../components/color":595,"../../components/colorscale":607,"../../constants/numerical":704,"../../lib":728,"../../lib/geojson_utils":723,"fast-isnumeric":236}],986:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../components/colorscale/defaults"),i=t("./attributes");e.exports=function(t,e,r,o){function s(r,a){return n.coerce(t,e,i,r,a)}var l=s("lon")||[],c=s("lat")||[],u=Math.min(l.length,c.length);u?(e._length=u,s("z"),s("radius"),s("below"),s("text"),s("hovertext"),s("hovertemplate"),a(t,e,o,s,{prefix:"",cLetter:"z"})):e.visible=!1}},{"../../components/colorscale/defaults":605,"../../lib":728,"./attributes":983}],987:[function(t,e,r){"use strict";e.exports=function(t,e){return t.lon=e.lon,t.lat=e.lat,t.z=e.z,t}},{}],988:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../plots/cartesian/axes"),i=t("../scattermapbox/hover");e.exports=function(t,e,r){var o=i(t,e,r);if(o){var s=o[0],l=s.cd,c=l[0].trace,u=l[s.index];if(delete s.color,"z"in u){var h=s.subplot.mockAxis;s.z=u.z,s.zLabel=a.tickText(h,h.c2l(u.z),"hover").text}return s.extraText=function(t,e,r){if(t.hovertemplate)return;var a=(e.hi||t.hoverinfo).split("+"),i=-1!==a.indexOf("all"),o=-1!==a.indexOf("lon"),s=-1!==a.indexOf("lat"),l=e.lonlat,c=[];function u(t){return t+"\xb0"}i||o&&s?c.push("("+u(l[0])+", "+u(l[1])+")"):o?c.push(r.lon+u(l[0])):s&&c.push(r.lat+u(l[1]));(i||-1!==a.indexOf("text"))&&n.fillText(e,t,c);return c.join("<br>")}(c,u,l[0].t.labels),[s]}}},{"../../lib":728,"../../plots/cartesian/axes":776,"../scattermapbox/hover":1203}],989:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),supplyDefaults:t("./defaults"),colorbar:t("../heatmap/colorbar"),formatLabels:t("../scattermapbox/format_labels"),calc:t("./calc"),plot:t("./plot"),hoverPoints:t("./hover"),eventData:t("./event_data"),getBelow:function(t,e){for(var r=e.getMapLayers(),n=0;n<r.length;n++){var a=r[n],i=a.id;if("symbol"===a.type&&"string"==typeof i&&-1===i.indexOf("plotly-"))return i}},moduleType:"trace",name:"densitymapbox",basePlotModule:t("../../plots/mapbox"),categories:["mapbox","gl","showLegend"],meta:{hr_name:"density_mapbox"}}},{"../../plots/mapbox":833,"../heatmap/colorbar":1016,"../scattermapbox/format_labels":1202,"./attributes":983,"./calc":984,"./defaults":986,"./event_data":987,"./hover":988,"./plot":990}],990:[function(t,e,r){"use strict";var n=t("./convert"),a=t("../../plots/mapbox/constants").traceLayerPrefix;function i(t,e){this.type="densitymapbox",this.subplot=t,this.uid=e,this.sourceId="source-"+e,this.layerList=[["heatmap",a+e+"-heatmap"]],this.below=null}var o=i.prototype;o.update=function(t){var e=this.subplot,r=this.layerList,a=n(t),i=e.belowLookup["trace-"+this.uid];e.map.getSource(this.sourceId).setData(a.geojson),i!==this.below&&(this._removeLayers(),this._addLayers(a,i),this.below=i);for(var o=0;o<r.length;o++){var s=r[o],l=s[0],c=s[1],u=a[l];e.setOptions(c,"setLayoutProperty",u.layout),"visible"===u.layout.visibility&&e.setOptions(c,"setPaintProperty",u.paint)}},o._addLayers=function(t,e){for(var r=this.subplot,n=this.layerList,a=this.sourceId,i=0;i<n.length;i++){var o=n[i],s=o[0],l=t[s];r.addLayer({type:s,id:o[1],source:a,layout:l.layout,paint:l.paint},e)}},o._removeLayers=function(){for(var t=this.subplot.map,e=this.layerList,r=e.length-1;r>=0;r--)t.removeLayer(e[r][1])},o.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},e.exports=function(t,e){var r=e[0].trace,a=new i(t,r.uid),o=a.sourceId,s=n(e),l=a.below=t.belowLookup["trace-"+r.uid];return t.map.addSource(o,{type:"geojson",data:s.geojson}),a._addLayers(s,l),a}},{"../../plots/mapbox/constants":831,"./convert":985}],991:[function(t,e,r){"use strict";var n=t("../../lib");e.exports=function(t,e){for(var r=0;r<t.length;r++)t[r].i=r;n.mergeArray(e.text,t,"tx"),n.mergeArray(e.hovertext,t,"htx");var a=e.marker;if(a){n.mergeArray(a.opacity,t,"mo"),n.mergeArray(a.color,t,"mc");var i=a.line;i&&(n.mergeArray(i.color,t,"mlc"),n.mergeArrayCastPositive(i.width,t,"mlw"))}}},{"../../lib":728}],992:[function(t,e,r){"use strict";var n=t("../bar/attributes"),a=t("../scatter/attributes").line,i=t("../../plots/attributes"),o=t("../../plots/template_attributes").hovertemplateAttrs,s=t("../../plots/template_attributes").texttemplateAttrs,l=t("./constants"),c=t("../../lib/extend").extendFlat,u=t("../../components/color");e.exports={x:n.x,x0:n.x0,dx:n.dx,y:n.y,y0:n.y0,dy:n.dy,hovertext:n.hovertext,hovertemplate:o({},{keys:l.eventDataKeys}),hoverinfo:c({},i.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:s({editType:"plot"},{keys:l.eventDataKeys.concat(["label","value"])}),text:n.text,textposition:c({},n.textposition,{dflt:"auto"}),insidetextanchor:c({},n.insidetextanchor,{dflt:"middle"}),textangle:c({},n.textangle,{dflt:0}),textfont:n.textfont,insidetextfont:n.insidetextfont,outsidetextfont:n.outsidetextfont,constraintext:n.constraintext,cliponaxis:n.cliponaxis,orientation:c({},n.orientation,{}),offset:c({},n.offset,{arrayOk:!1}),width:c({},n.width,{arrayOk:!1}),marker:n.marker,connector:{fillcolor:{valType:"color",editType:"style"},line:{color:c({},a.color,{dflt:u.defaultLine}),width:c({},a.width,{dflt:0,editType:"plot"}),dash:a.dash,editType:"style"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:n.offsetgroup,alignmentgroup:n.alignmentgroup}},{"../../components/color":595,"../../lib/extend":719,"../../plots/attributes":773,"../../plots/template_attributes":854,"../bar/attributes":869,"../scatter/attributes":1134,"./constants":994}],993:[function(t,e,r){"use strict";var n=t("../../plots/cartesian/axes"),a=t("./arrays_to_calcdata"),i=t("../scatter/calc_selection"),o=t("../../constants/numerical").BADNUM;function s(t){return t===o?0:t}e.exports=function(t,e){var r,l,c,u,h=n.getFromId(t,e.xaxis||"x"),f=n.getFromId(t,e.yaxis||"y");"h"===e.orientation?(r=h.makeCalcdata(e,"x"),l=f.makeCalcdata(e,"y")):(r=f.makeCalcdata(e,"y"),l=h.makeCalcdata(e,"x"));var p,d=Math.min(l.length,r.length),g=new Array(d);for(e._base=[],c=0;c<d;c++){r[c]<0&&(r[c]=o);var m=!1;r[c]!==o&&c+1<d&&r[c+1]!==o&&(m=!0),u=g[c]={p:l[c],s:r[c],cNext:m},e._base[c]=-.5*u.s,e.ids&&(u.id=String(e.ids[c])),0===c&&(g[0].vTotal=0),g[0].vTotal+=s(u.s),u.begR=s(u.s)/s(g[0].s)}for(c=0;c<d;c++)(u=g[c]).s!==o&&(u.sumR=u.s/g[0].vTotal,u.difR=void 0!==p?u.s/p:1,p=u.s);return a(g,e),i(g,e),g}},{"../../constants/numerical":704,"../../plots/cartesian/axes":776,"../scatter/calc_selection":1136,"./arrays_to_calcdata":991}],994:[function(t,e,r){"use strict";e.exports={eventDataKeys:["percentInitial","percentPrevious","percentTotal"]}},{}],995:[function(t,e,r){"use strict";var n=t("../bar/cross_trace_calc").setGroupPositions;e.exports=function(t,e){var r,a,i=t._fullLayout,o=t._fullData,s=t.calcdata,l=e.xaxis,c=e.yaxis,u=[],h=[],f=[];for(a=0;a<o.length;a++){var p=o[a],d="h"===p.orientation;!0===p.visible&&p.xaxis===l._id&&p.yaxis===c._id&&"funnel"===p.type&&(r=s[a],d?f.push(r):h.push(r),u.push(r))}var g={mode:i.funnelmode,norm:i.funnelnorm,gap:i.funnelgap,groupgap:i.funnelgroupgap};for(n(t,l,c,h,g),n(t,c,l,f,g),a=0;a<u.length;a++){r=u[a];for(var m=0;m<r.length;m++)m+1<r.length&&(r[m].nextP0=r[m+1].p0,r[m].nextS0=r[m+1].s0,r[m].nextP1=r[m+1].p1,r[m].nextS1=r[m+1].s1)}}},{"../bar/cross_trace_calc":872}],996:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../bar/defaults").handleGroupingDefaults,i=t("../bar/defaults").handleText,o=t("../scatter/xy_defaults"),s=t("./attributes"),l=t("../../components/color");e.exports={supplyDefaults:function(t,e,r,a){function c(r,a){return n.coerce(t,e,s,r,a)}if(o(t,e,a,c)){c("orientation",e.y&&!e.x?"v":"h"),c("offset"),c("width");var u=c("text");c("hovertext"),c("hovertemplate");var h=c("textposition");i(t,e,a,c,h,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),"none"===e.textposition||e.texttemplate||c("textinfo",Array.isArray(u)?"text+value":"value");var f=c("marker.color",r);if(c("marker.line.color",l.defaultLine),c("marker.line.width"),c("connector.visible"))c("connector.fillcolor",function(t){var e=n.isArrayOrTypedArray(t)?"#000":t;return l.addOpacity(e,.5*l.opacity(e))}(f)),c("connector.line.width")&&(c("connector.line.color"),c("connector.line.dash"))}else e.visible=!1},crossTraceDefaults:function(t,e){var r,i;function o(t){return n.coerce(i._input,i,s,t)}if("group"===e.funnelmode)for(var l=0;l<t.length;l++)r=(i=t[l])._input,a(r,i,e,o)}}},{"../../components/color":595,"../../lib":728,"../bar/defaults":873,"../scatter/xy_defaults":1160,"./attributes":992}],997:[function(t,e,r){"use strict";e.exports=function(t,e){return t.x="xVal"in e?e.xVal:e.x,t.y="yVal"in e?e.yVal:e.y,"percentInitial"in e&&(t.percentInitial=e.percentInitial),"percentPrevious"in e&&(t.percentPrevious=e.percentPrevious),"percentTotal"in e&&(t.percentTotal=e.percentTotal),e.xa&&(t.xaxis=e.xa),e.ya&&(t.yaxis=e.ya),t}},{}],998:[function(t,e,r){"use strict";var n=t("../../components/color").opacity,a=t("../bar/hover").hoverOnBars,i=t("../../lib").formatPercent;e.exports=function(t,e,r,o){var s=a(t,e,r,o);if(s){var l=s.cd,c=l[0].trace,u="h"===c.orientation,h=l[s.index];s[(u?"x":"y")+"LabelVal"]=h.s,s.percentInitial=h.begR,s.percentInitialLabel=i(h.begR,1),s.percentPrevious=h.difR,s.percentPreviousLabel=i(h.difR,1),s.percentTotal=h.sumR,s.percentTotalLabel=i(h.sumR,1);var f=h.hi||c.hoverinfo,p=[];if(f&&"none"!==f&&"skip"!==f){var d="all"===f,g=f.split("+"),m=function(t){return d||-1!==g.indexOf(t)};m("percent initial")&&p.push(s.percentInitialLabel+" of initial"),m("percent previous")&&p.push(s.percentPreviousLabel+" of previous"),m("percent total")&&p.push(s.percentTotalLabel+" of total")}return s.extraText=p.join("<br>"),s.color=function(t,e){var r=t.marker,a=e.mc||r.color,i=e.mlc||r.line.color,o=e.mlw||r.line.width;if(n(a))return a;if(n(i)&&o)return i}(c,h),[s]}}},{"../../components/color":595,"../../lib":728,"../bar/hover":876}],999:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),layoutAttributes:t("./layout_attributes"),supplyDefaults:t("./defaults").supplyDefaults,crossTraceDefaults:t("./defaults").crossTraceDefaults,supplyLayoutDefaults:t("./layout_defaults"),calc:t("./calc"),crossTraceCalc:t("./cross_trace_calc"),plot:t("./plot"),style:t("./style").style,hoverPoints:t("./hover"),eventData:t("./event_data"),selectPoints:t("../bar/select"),moduleType:"trace",name:"funnel",basePlotModule:t("../../plots/cartesian"),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}},{"../../plots/cartesian":789,"../bar/select":881,"./attributes":992,"./calc":993,"./cross_trace_calc":995,"./defaults":996,"./event_data":997,"./hover":998,"./layout_attributes":1e3,"./layout_defaults":1001,"./plot":1002,"./style":1003}],1e3:[function(t,e,r){"use strict";e.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"}}},{}],1001:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./layout_attributes");e.exports=function(t,e,r){var i=!1;function o(r,i){return n.coerce(t,e,a,r,i)}for(var s=0;s<r.length;s++){var l=r[s];if(l.visible&&"funnel"===l.type){i=!0;break}}i&&(o("funnelmode"),o("funnelgap",.2),o("funnelgroupgap"))}},{"../../lib":728,"./layout_attributes":1e3}],1002:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../lib"),i=t("../../components/drawing"),o=t("../../constants/numerical").BADNUM,s=t("../bar/plot"),l=t("../bar/uniform_text").clearMinTextSize;function c(t,e,r,n){var a=[],i=[],o=n?e:r,s=n?r:e;return a[0]=o.c2p(t.s0,!0),i[0]=s.c2p(t.p0,!0),a[1]=o.c2p(t.s1,!0),i[1]=s.c2p(t.p1,!0),a[2]=o.c2p(t.nextS0,!0),i[2]=s.c2p(t.nextP0,!0),a[3]=o.c2p(t.nextS1,!0),i[3]=s.c2p(t.nextP1,!0),n?[a,i]:[i,a]}e.exports=function(t,e,r,u){var h=t._fullLayout;l("funnel",h),function(t,e,r,s){var l=e.xaxis,u=e.yaxis;a.makeTraceGroups(s,r,"trace bars").each((function(r){var s=n.select(this),h=r[0].trace,f=a.ensureSingle(s,"g","regions");if(h.connector&&h.connector.visible){var p="h"===h.orientation,d=f.selectAll("g.region").data(a.identity);d.enter().append("g").classed("region",!0),d.exit().remove();var g=d.size();d.each((function(r,s){if(s===g-1||r.cNext){var h=c(r,l,u,p),f=h[0],d=h[1],m="";f[0]!==o&&d[0]!==o&&f[1]!==o&&d[1]!==o&&f[2]!==o&&d[2]!==o&&f[3]!==o&&d[3]!==o&&(m+=p?"M"+f[0]+","+d[1]+"L"+f[2]+","+d[2]+"H"+f[3]+"L"+f[1]+","+d[1]+"Z":"M"+f[1]+","+d[1]+"L"+f[2]+","+d[3]+"V"+d[2]+"L"+f[1]+","+d[0]+"Z"),""===m&&(m="M0,0Z"),a.ensureSingle(n.select(this),"path").attr("d",m).call(i.setClipUrl,e.layerClipId,t)}}))}else f.remove()}))}(t,e,r,u),function(t,e,r,o){var s=e.xaxis,l=e.yaxis;a.makeTraceGroups(o,r,"trace bars").each((function(r){var o=n.select(this),u=r[0].trace,h=a.ensureSingle(o,"g","lines");if(u.connector&&u.connector.visible&&u.connector.line.width){var f="h"===u.orientation,p=h.selectAll("g.line").data(a.identity);p.enter().append("g").classed("line",!0),p.exit().remove();var d=p.size();p.each((function(r,o){if(o===d-1||r.cNext){var u=c(r,s,l,f),h=u[0],p=u[1],g="";void 0!==h[3]&&void 0!==p[3]&&(f?(g+="M"+h[0]+","+p[1]+"L"+h[2]+","+p[2],g+="M"+h[1]+","+p[1]+"L"+h[3]+","+p[2]):(g+="M"+h[1]+","+p[1]+"L"+h[2]+","+p[3],g+="M"+h[1]+","+p[0]+"L"+h[2]+","+p[2])),""===g&&(g="M0,0Z"),a.ensureSingle(n.select(this),"path").attr("d",g).call(i.setClipUrl,e.layerClipId,t)}}))}else h.remove()}))}(t,e,r,u),s.plot(t,e,r,u,{mode:h.funnelmode,norm:h.funnelmode,gap:h.funnelgap,groupgap:h.funnelgroupgap})}},{"../../components/drawing":617,"../../constants/numerical":704,"../../lib":728,"../bar/plot":880,"../bar/uniform_text":885,d3:164}],1003:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../components/drawing"),i=t("../../components/color"),o=t("../../constants/interactions").DESELECTDIM,s=t("../bar/style"),l=t("../bar/uniform_text").resizeText,c=s.styleTextPoints;e.exports={style:function(t,e,r){var s=r||n.select(t).selectAll("g.funnellayer").selectAll("g.trace");l(t,s,"funnel"),s.style("opacity",(function(t){return t[0].trace.opacity})),s.each((function(e){var r=n.select(this),s=e[0].trace;r.selectAll(".point > path").each((function(t){if(!t.isBlank){var e=s.marker;n.select(this).call(i.fill,t.mc||e.color).call(i.stroke,t.mlc||e.line.color).call(a.dashLine,e.line.dash,t.mlw||e.line.width).style("opacity",s.selectedpoints&&!t.selected?o:1)}})),c(r,s,t),r.selectAll(".regions").each((function(){n.select(this).selectAll("path").style("stroke-width",0).call(i.fill,s.connector.fillcolor)})),r.selectAll(".lines").each((function(){var t=s.connector.line;a.lineGroupStyle(n.select(this).selectAll("path"),t.width,t.color,t.dash)}))}))}}},{"../../components/color":595,"../../components/drawing":617,"../../constants/interactions":703,"../bar/style":883,"../bar/uniform_text":885,d3:164}],1004:[function(t,e,r){"use strict";var n=t("../pie/attributes"),a=t("../../plots/attributes"),i=t("../../plots/domain").attributes,o=t("../../plots/template_attributes").hovertemplateAttrs,s=t("../../plots/template_attributes").texttemplateAttrs,l=t("../../lib/extend").extendFlat;e.exports={labels:n.labels,label0:n.label0,dlabel:n.dlabel,values:n.values,marker:{colors:n.marker.colors,line:{color:l({},n.marker.line.color,{dflt:null}),width:l({},n.marker.line.width,{dflt:1}),editType:"calc"},editType:"calc"},text:n.text,hovertext:n.hovertext,scalegroup:l({},n.scalegroup,{}),textinfo:l({},n.textinfo,{flags:["label","text","value","percent"]}),texttemplate:s({editType:"plot"},{keys:["label","color","value","text","percent"]}),hoverinfo:l({},a.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:o({},{keys:["label","color","value","text","percent"]}),textposition:l({},n.textposition,{values:["inside","none"],dflt:"inside"}),textfont:n.textfont,insidetextfont:n.insidetextfont,title:{text:n.title.text,font:n.title.font,position:l({},n.title.position,{values:["top left","top center","top right"],dflt:"top center"}),editType:"plot"},domain:i({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"}}},{"../../lib/extend":719,"../../plots/attributes":773,"../../plots/domain":803,"../../plots/template_attributes":854,"../pie/attributes":1108}],1005:[function(t,e,r){"use strict";var n=t("../../plots/plots");r.name="funnelarea",r.plot=function(t,e,a,i){n.plotBasePlot(r.name,t,e,a,i)},r.clean=function(t,e,a,i){n.cleanBasePlot(r.name,t,e,a,i)}},{"../../plots/plots":839}],1006:[function(t,e,r){"use strict";var n=t("../pie/calc");e.exports={calc:function(t,e){return n.calc(t,e)},crossTraceCalc:function(t){n.crossTraceCalc(t,{type:"funnelarea"})}}},{"../pie/calc":1110}],1007:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./attributes"),i=t("../../plots/domain").defaults,o=t("../bar/defaults").handleText,s=t("../pie/defaults").handleLabelsAndValues;e.exports=function(t,e,r,l){function c(r,i){return n.coerce(t,e,a,r,i)}var u=c("labels"),h=c("values"),f=s(u,h),p=f.len;if(e._hasLabels=f.hasLabels,e._hasValues=f.hasValues,!e._hasLabels&&e._hasValues&&(c("label0"),c("dlabel")),p){e._length=p,c("marker.line.width")&&c("marker.line.color",l.paper_bgcolor),c("marker.colors"),c("scalegroup");var d,g=c("text"),m=c("texttemplate");if(m||(d=c("textinfo",Array.isArray(g)?"text+percent":"percent")),c("hovertext"),c("hovertemplate"),m||d&&"none"!==d){var v=c("textposition");o(t,e,l,c,v,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1})}i(e,l,c),c("title.text")&&(c("title.position"),n.coerceFont(c,"title.font",l.font)),c("aspectratio"),c("baseratio")}else e.visible=!1}},{"../../lib":728,"../../plots/domain":803,"../bar/defaults":873,"../pie/defaults":1111,"./attributes":1004}],1008:[function(t,e,r){"use strict";e.exports={moduleType:"trace",name:"funnelarea",basePlotModule:t("./base_plot"),categories:["pie-like","funnelarea","showLegend"],attributes:t("./attributes"),layoutAttributes:t("./layout_attributes"),supplyDefaults:t("./defaults"),supplyLayoutDefaults:t("./layout_defaults"),calc:t("./calc").calc,crossTraceCalc:t("./calc").crossTraceCalc,plot:t("./plot"),style:t("./style"),styleOne:t("../pie/style_one"),meta:{}}},{"../pie/style_one":1119,"./attributes":1004,"./base_plot":1005,"./calc":1006,"./defaults":1007,"./layout_attributes":1009,"./layout_defaults":1010,"./plot":1011,"./style":1012}],1009:[function(t,e,r){"use strict";var n=t("../pie/layout_attributes").hiddenlabels;e.exports={hiddenlabels:n,funnelareacolorway:{valType:"colorlist",editType:"calc"},extendfunnelareacolors:{valType:"boolean",dflt:!0,editType:"calc"}}},{"../pie/layout_attributes":1115}],1010:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./layout_attributes");e.exports=function(t,e){function r(r,i){return n.coerce(t,e,a,r,i)}r("hiddenlabels"),r("funnelareacolorway",e.colorway),r("extendfunnelareacolors")}},{"../../lib":728,"./layout_attributes":1009}],1011:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../components/drawing"),i=t("../../lib"),o=t("../../lib/svg_text_utils"),s=t("../bar/plot").toMoveInsideBar,l=t("../bar/uniform_text"),c=l.recordMinTextSize,u=l.clearMinTextSize,h=t("../pie/helpers"),f=t("../pie/plot"),p=f.attachFxHandlers,d=f.determineInsideTextFont,g=f.layoutAreas,m=f.prerenderTitles,v=f.positionTitleOutside,y=f.formatSliceLabel;function x(t,e){return"l"+(e[0]-t[0])+","+(e[1]-t[1])}e.exports=function(t,e){var r=t._fullLayout;u("funnelarea",r),m(e,t),g(e,r._size),i.makeTraceGroups(r._funnelarealayer,e,"trace").each((function(e){var l=n.select(this),u=e[0],f=u.trace;!function(t){if(!t.length)return;var e=t[0],r=e.trace,n=r.aspectratio,a=r.baseratio;a>.999&&(a=.999);var i,o=Math.pow(a,2),s=e.vTotal,l=s,c=s*o/(1-o)/s;function u(){var t,e={x:t=Math.sqrt(c),y:-t};return[e.x,e.y]}var h,f,p=[];for(p.push(u()),h=t.length-1;h>-1;h--)if(!(f=t[h]).hidden){var d=f.v/l;c+=d,p.push(u())}var g=1/0,m=-1/0;for(h=0;h<p.length;h++)i=p[h],g=Math.min(g,i[1]),m=Math.max(m,i[1]);for(h=0;h<p.length;h++)p[h][1]-=(m+g)/2;var v=p[p.length-1][0],y=e.r,x=(m-g)/2,b=y/v,_=y/x*n;for(e.r=_*x,h=0;h<p.length;h++)p[h][0]*=b,p[h][1]*=_;var w=[-(i=p[0])[0],i[1]],T=[i[0],i[1]],k=0;for(h=t.length-1;h>-1;h--)if(!(f=t[h]).hidden){var A=p[k+=1][0],M=p[k][1];f.TL=[-A,M],f.TR=[A,M],f.BL=w,f.BR=T,f.pxmid=(S=f.TR,E=f.BR,[.5*(S[0]+E[0]),.5*(S[1]+E[1])]),w=f.TL,T=f.TR}var S,E}(e),l.each((function(){var l=n.select(this).selectAll("g.slice").data(e);l.enter().append("g").classed("slice",!0),l.exit().remove(),l.each((function(l,g){if(l.hidden)n.select(this).selectAll("path,g").remove();else{l.pointNumber=l.i,l.curveNumber=f.index;var m=u.cx,v=u.cy,b=n.select(this),_=b.selectAll("path.surface").data([l]);_.enter().append("path").classed("surface",!0).style({"pointer-events":"all"}),b.call(p,t,e);var w="M"+(m+l.TR[0])+","+(v+l.TR[1])+x(l.TR,l.BR)+x(l.BR,l.BL)+x(l.BL,l.TL)+"Z";_.attr("d",w),y(t,l,u);var T=h.castOption(f.textposition,l.pts),k=b.selectAll("g.slicetext").data(l.text&&"none"!==T?[0]:[]);k.enter().append("g").classed("slicetext",!0),k.exit().remove(),k.each((function(){var u=i.ensureSingle(n.select(this),"text","",(function(t){t.attr("data-notex",1)})),h=i.ensureUniformFontSize(t,d(f,l,r.font));u.text(l.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(a.font,h).call(o.convertToTspans,t);var p,y,x,b=a.bBox(u.node()),_=Math.min(l.BL[1],l.BR[1])+v,w=Math.max(l.TL[1],l.TR[1])+v;y=Math.max(l.TL[0],l.BL[0])+m,x=Math.min(l.TR[0],l.BR[0])+m,(p=s(y,x,_,w,b,{isHorizontal:!0,constrained:!0,angle:0,anchor:"middle"})).fontSize=h.size,c(f.type,p,r),e[g].transform=p,u.attr("transform",i.getTextTransform(p))}))}}));var g=n.select(this).selectAll("g.titletext").data(f.title.text?[0]:[]);g.enter().append("g").classed("titletext",!0),g.exit().remove(),g.each((function(){var e=i.ensureSingle(n.select(this),"text","",(function(t){t.attr("data-notex",1)})),s=f.title.text;f._meta&&(s=i.templateString(s,f._meta)),e.text(s).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(a.font,f.title.font).call(o.convertToTspans,t);var l=v(u,r._size);e.attr("transform","translate("+l.x+","+l.y+")"+(l.scale<1?"scale("+l.scale+")":"")+"translate("+l.tx+","+l.ty+")")}))}))}))}},{"../../components/drawing":617,"../../lib":728,"../../lib/svg_text_utils":752,"../bar/plot":880,"../bar/uniform_text":885,"../pie/helpers":1113,"../pie/plot":1117,d3:164}],1012:[function(t,e,r){"use strict";var n=t("d3"),a=t("../pie/style_one"),i=t("../bar/uniform_text").resizeText;e.exports=function(t){var e=t._fullLayout._funnelarealayer.selectAll(".trace");i(t,e,"funnelarea"),e.each((function(t){var e=t[0].trace,r=n.select(this);r.style({opacity:e.opacity}),r.selectAll("path.surface").each((function(t){n.select(this).call(a,t,e)}))}))}},{"../bar/uniform_text":885,"../pie/style_one":1119,d3:164}],1013:[function(t,e,r){"use strict";var n=t("../scatter/attributes"),a=t("../../plots/attributes"),i=t("../../plots/template_attributes").hovertemplateAttrs,o=t("../../components/colorscale/attributes"),s=(t("../../constants/docs").FORMAT_LINK,t("../../lib/extend").extendFlat);e.exports=s({z:{valType:"data_array",editType:"calc"},x:s({},n.x,{impliedEdits:{xtype:"array"}}),x0:s({},n.x0,{impliedEdits:{xtype:"scaled"}}),dx:s({},n.dx,{impliedEdits:{xtype:"scaled"}}),y:s({},n.y,{impliedEdits:{ytype:"array"}}),y0:s({},n.y0,{impliedEdits:{ytype:"scaled"}}),dy:s({},n.dy,{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"},zhoverformat:{valType:"string",dflt:"",editType:"none"},hovertemplate:i(),showlegend:s({},a.showlegend,{dflt:!1})},{transforms:void 0},o("",{cLetter:"z",autoColorDflt:!1}))},{"../../components/colorscale/attributes":602,"../../constants/docs":699,"../../lib/extend":719,"../../plots/attributes":773,"../../plots/template_attributes":854,"../scatter/attributes":1134}],1014:[function(t,e,r){"use strict";var n=t("../../registry"),a=t("../../lib"),i=t("../../plots/cartesian/axes"),o=t("../histogram2d/calc"),s=t("../../components/colorscale/calc"),l=t("./convert_column_xyz"),c=t("./clean_2d_array"),u=t("./interp2d"),h=t("./find_empties"),f=t("./make_bound_array"),p=t("../../constants/numerical").BADNUM;function d(t){for(var e=[],r=t.length,n=0;n<r;n++){var a=t[n];a!==p&&e.push(a)}return e}e.exports=function(t,e){var r,g,m,v,y,x,b,_,w,T=i.getFromId(t,e.xaxis||"x"),k=i.getFromId(t,e.yaxis||"y"),A=n.traceIs(e,"contour"),M=n.traceIs(e,"histogram"),S=n.traceIs(e,"gl2d"),E=A?"best":e.zsmooth;if(T._minDtick=0,k._minDtick=0,M)r=(w=o(t,e)).x,g=w.x0,m=w.dx,v=w.y,y=w.y0,x=w.dy,b=w.z;else{var C=e.z;a.isArray1D(C)?(l(e,T,k,"x","y",["z"]),r=e._x,v=e._y,C=e._z):(r=e._x=e.x?T.makeCalcdata(e,"x"):[],v=e._y=e.y?k.makeCalcdata(e,"y"):[]),g=e.x0,m=e.dx,y=e.y0,x=e.dy,b=c(C,e,T,k)}function L(t){E=e._input.zsmooth=e.zsmooth=!1,a.warn('cannot use zsmooth: "fast": '+t)}if((T.rangebreaks||k.rangebreaks)&&(b=function(t,e,r){for(var n=[],a=-1,i=0;i<r.length;i++)if(e[i]!==p){a++,n[a]=[];for(var o=0;o<r[i].length;o++)t[o]!==p&&n[a].push(r[i][o])}return n}(r,v,b),M||(r=d(r),v=d(v),e._x=r,e._y=v)),M||!A&&!e.connectgaps||(e._emptypoints=h(b),u(b,e._emptypoints)),"fast"===E)if("log"===T.type||"log"===k.type)L("log axis found");else if(!M){if(r.length){var P=(r[r.length-1]-r[0])/(r.length-1),I=Math.abs(P/100);for(_=0;_<r.length-1;_++)if(Math.abs(r[_+1]-r[_]-P)>I){L("x scale is not linear");break}}if(v.length&&"fast"===E){var z=(v[v.length-1]-v[0])/(v.length-1),O=Math.abs(z/100);for(_=0;_<v.length-1;_++)if(Math.abs(v[_+1]-v[_]-z)>O){L("y scale is not linear");break}}}var D=a.maxRowLength(b),R="scaled"===e.xtype?"":r,F=f(e,R,g,m,D,T),B="scaled"===e.ytype?"":v,N=f(e,B,y,x,b.length,k);S||(e._extremes[T._id]=i.findExtremes(T,F),e._extremes[k._id]=i.findExtremes(k,N));var j={x:F,y:N,z:b,text:e._text||e.text,hovertext:e._hovertext||e.hovertext};if(R&&R.length===F.length-1&&(j.xCenter=R),B&&B.length===N.length-1&&(j.yCenter=B),M&&(j.xRanges=w.xRanges,j.yRanges=w.yRanges,j.pts=w.pts),A||s(t,e,{vals:b,cLetter:"z"}),A&&e.contours&&"heatmap"===e.contours.coloring){var V={type:"contour"===e.type?"heatmap":"histogram2d",xcalendar:e.xcalendar,ycalendar:e.ycalendar};j.xfill=f(V,R,g,m,D,T),j.yfill=f(V,B,y,x,b.length,k)}return[j]}},{"../../components/colorscale/calc":603,"../../constants/numerical":704,"../../lib":728,"../../plots/cartesian/axes":776,"../../registry":859,"../histogram2d/calc":1046,"./clean_2d_array":1015,"./convert_column_xyz":1017,"./find_empties":1019,"./interp2d":1022,"./make_bound_array":1023}],1015:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../../lib"),i=t("../../constants/numerical").BADNUM;e.exports=function(t,e,r,o){var s,l,c,u,h,f;function p(t){if(n(t))return+t}if(e&&e.transpose){for(s=0,h=0;h<t.length;h++)s=Math.max(s,t[h].length);if(0===s)return!1;c=function(t){return t.length},u=function(t,e,r){return(t[r]||[])[e]}}else s=t.length,c=function(t,e){return t[e].length},u=function(t,e,r){return(t[e]||[])[r]};var d=function(t,e,r){return e===i||r===i?i:u(t,e,r)};function g(t){if(e&&"carpet"!==e.type&&"contourcarpet"!==e.type&&t&&"category"===t.type&&e["_"+t._id.charAt(0)].length){var r=t._id.charAt(0),n={},o=e["_"+r+"CategoryMap"]||e[r];for(h=0;h<o.length;h++)n[o[h]]=h;return function(e){var r=n[t._categories[e]];return r+1?r:i}}return a.identity}var m=g(r),v=g(o);o&&"category"===o.type&&(s=o._categories.length);var y=new Array(s);for(h=0;h<s;h++)for(l=r&&"category"===r.type?r._categories.length:c(t,h),y[h]=new Array(l),f=0;f<l;f++)y[h][f]=p(d(t,v(h),m(f)));return y}},{"../../constants/numerical":704,"../../lib":728,"fast-isnumeric":236}],1016:[function(t,e,r){"use strict";e.exports={min:"zmin",max:"zmax"}},{}],1017:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../constants/numerical").BADNUM;e.exports=function(t,e,r,i,o,s){var l,c,u,h,f=t._length,p=e.makeCalcdata(t,i),d=r.makeCalcdata(t,o),g=t.text,m=void 0!==g&&n.isArray1D(g),v=t.hovertext,y=void 0!==v&&n.isArray1D(v),x=n.distinctVals(p),b=x.vals,_=n.distinctVals(d),w=_.vals,T=[],k=w.length,A=b.length;for(l=0;l<s.length;l++)T[l]=n.init2dArray(k,A);m&&(u=n.init2dArray(k,A)),y&&(h=n.init2dArray(k,A));var M=n.init2dArray(k,A);for(l=0;l<f;l++)if(p[l]!==a&&d[l]!==a){var S=n.findBin(p[l]+x.minDiff/2,b),E=n.findBin(d[l]+_.minDiff/2,w);for(c=0;c<s.length;c++){var C=t[s[c]];T[c][E][S]=C[l],M[E][S]=l}m&&(u[E][S]=g[l]),y&&(h[E][S]=v[l])}for(t["_"+i]=b,t["_"+o]=w,c=0;c<s.length;c++)t["_"+s[c]]=T[c];m&&(t._text=u),y&&(t._hovertext=h),e&&"category"===e.type&&(t["_"+i+"CategoryMap"]=b.map((function(t){return e._categories[t]}))),r&&"category"===r.type&&(t["_"+o+"CategoryMap"]=w.map((function(t){return r._categories[t]}))),t._after2before=M}},{"../../constants/numerical":704,"../../lib":728}],1018:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./xyz_defaults"),i=t("./style_defaults"),o=t("../../components/colorscale/defaults"),s=t("./attributes");e.exports=function(t,e,r,l){function c(r,a){return n.coerce(t,e,s,r,a)}a(t,e,c,l)?(c("text"),c("hovertext"),c("hovertemplate"),i(t,e,c,l),c("hoverongaps"),c("connectgaps",n.isArray1D(e.z)&&!1!==e.zsmooth),o(t,e,l,c,{prefix:"",cLetter:"z"})):e.visible=!1}},{"../../components/colorscale/defaults":605,"../../lib":728,"./attributes":1013,"./style_defaults":1026,"./xyz_defaults":1027}],1019:[function(t,e,r){"use strict";var n=t("../../lib").maxRowLength;e.exports=function(t){var e,r,a,i,o,s,l,c,u=[],h={},f=[],p=t[0],d=[],g=[0,0,0],m=n(t);for(r=0;r<t.length;r++)for(e=d,d=p,p=t[r+1]||[],a=0;a<m;a++)void 0===d[a]&&((s=(void 0!==d[a-1]?1:0)+(void 0!==d[a+1]?1:0)+(void 0!==e[a]?1:0)+(void 0!==p[a]?1:0))?(0===r&&s++,0===a&&s++,r===t.length-1&&s++,a===d.length-1&&s++,s<4&&(h[[r,a]]=[r,a,s]),u.push([r,a,s])):f.push([r,a]));for(;f.length;){for(l={},c=!1,o=f.length-1;o>=0;o--)(s=((h[[(r=(i=f[o])[0])-1,a=i[1]]]||g)[2]+(h[[r+1,a]]||g)[2]+(h[[r,a-1]]||g)[2]+(h[[r,a+1]]||g)[2])/20)&&(l[i]=[r,a,s],f.splice(o,1),c=!0);if(!c)throw"findEmpties iterated with no new neighbors";for(i in l)h[i]=l[i],u.push(l[i])}return u.sort((function(t,e){return e[2]-t[2]}))}},{"../../lib":728}],1020:[function(t,e,r){"use strict";var n=t("../../components/fx"),a=t("../../lib"),i=t("../../plots/cartesian/axes"),o=t("../../components/colorscale").extractOpts;e.exports=function(t,e,r,s,l,c){var u,h,f,p,d=t.cd[0],g=d.trace,m=t.xa,v=t.ya,y=d.x,x=d.y,b=d.z,_=d.xCenter,w=d.yCenter,T=d.zmask,k=g.zhoverformat,A=y,M=x;if(!1!==t.index){try{f=Math.round(t.index[1]),p=Math.round(t.index[0])}catch(e){return void a.error("Error hovering on heatmap, pointNumber must be [row,col], found:",t.index)}if(f<0||f>=b[0].length||p<0||p>b.length)return}else{if(n.inbox(e-y[0],e-y[y.length-1],0)>0||n.inbox(r-x[0],r-x[x.length-1],0)>0)return;if(c){var S;for(A=[2*y[0]-y[1]],S=1;S<y.length;S++)A.push((y[S]+y[S-1])/2);for(A.push([2*y[y.length-1]-y[y.length-2]]),M=[2*x[0]-x[1]],S=1;S<x.length;S++)M.push((x[S]+x[S-1])/2);M.push([2*x[x.length-1]-x[x.length-2]])}f=Math.max(0,Math.min(A.length-2,a.findBin(e,A))),p=Math.max(0,Math.min(M.length-2,a.findBin(r,M)))}var E=m.c2p(y[f]),C=m.c2p(y[f+1]),L=v.c2p(x[p]),P=v.c2p(x[p+1]);c?(C=E,u=y[f],P=L,h=x[p]):(u=_?_[f]:(y[f]+y[f+1])/2,h=w?w[p]:(x[p]+x[p+1])/2,m&&"category"===m.type&&(u=y[f]),v&&"category"===v.type&&(h=x[p]),g.zsmooth&&(E=C=m.c2p(u),L=P=v.c2p(h)));var I=b[p][f];if(T&&!T[p][f]&&(I=void 0),void 0!==I||g.hoverongaps){var z;Array.isArray(d.hovertext)&&Array.isArray(d.hovertext[p])?z=d.hovertext[p][f]:Array.isArray(d.text)&&Array.isArray(d.text[p])&&(z=d.text[p][f]);var O=o(g),D={type:"linear",range:[O.min,O.max],hoverformat:k,_separators:m._separators,_numFormat:m._numFormat},R=i.tickText(D,I,"hover").text;return[a.extendFlat(t,{index:g._after2before?g._after2before[p][f]:[p,f],distance:t.maxHoverDistance,spikeDistance:t.maxSpikeDistance,x0:E,x1:C,y0:L,y1:P,xLabelVal:u,yLabelVal:h,zLabelVal:I,zLabel:R,text:z})]}}},{"../../components/colorscale":607,"../../components/fx":635,"../../lib":728,"../../plots/cartesian/axes":776}],1021:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),supplyDefaults:t("./defaults"),calc:t("./calc"),plot:t("./plot"),colorbar:t("./colorbar"),style:t("./style"),hoverPoints:t("./hover"),moduleType:"trace",name:"heatmap",basePlotModule:t("../../plots/cartesian"),categories:["cartesian","svg","2dMap","showLegend"],meta:{}}},{"../../plots/cartesian":789,"./attributes":1013,"./calc":1014,"./colorbar":1016,"./defaults":1018,"./hover":1020,"./plot":1024,"./style":1025}],1022:[function(t,e,r){"use strict";var n=t("../../lib"),a=[[-1,0],[1,0],[0,-1],[0,1]];function i(t){return.5-.25*Math.min(1,.5*t)}function o(t,e,r){var n,i,o,s,l,c,u,h,f,p,d,g,m,v=0;for(s=0;s<e.length;s++){for(i=(n=e[s])[0],o=n[1],d=t[i][o],p=0,f=0,l=0;l<4;l++)(u=t[i+(c=a[l])[0]])&&void 0!==(h=u[o+c[1]])&&(0===p?g=m=h:(g=Math.min(g,h),m=Math.max(m,h)),f++,p+=h);if(0===f)throw"iterateInterp2d order is wrong: no defined neighbors";t[i][o]=p/f,void 0===d?f<4&&(v=1):(t[i][o]=(1+r)*t[i][o]-r*d,m>g&&(v=Math.max(v,Math.abs(t[i][o]-d)/(m-g))))}return v}e.exports=function(t,e){var r,a=1;for(o(t,e),r=0;r<e.length&&!(e[r][2]<4);r++);for(e=e.slice(r),r=0;r<100&&a>.01;r++)a=o(t,e,i(a));return a>.01&&n.log("interp2d didn't converge quickly",a),t}},{"../../lib":728}],1023:[function(t,e,r){"use strict";var n=t("../../registry"),a=t("../../lib").isArrayOrTypedArray;e.exports=function(t,e,r,i,o,s){var l,c,u,h=[],f=n.traceIs(t,"contour"),p=n.traceIs(t,"histogram"),d=n.traceIs(t,"gl2d");if(a(e)&&e.length>1&&!p&&"category"!==s.type){var g=e.length;if(!(g<=o))return f?e.slice(0,o):e.slice(0,o+1);if(f||d)h=e.slice(0,o);else if(1===o)h=[e[0]-.5,e[0]+.5];else{for(h=[1.5*e[0]-.5*e[1]],u=1;u<g;u++)h.push(.5*(e[u-1]+e[u]));h.push(1.5*e[g-1]-.5*e[g-2])}if(g<o){var m=h[h.length-1],v=m-h[h.length-2];for(u=g;u<o;u++)m+=v,h.push(m)}}else{var y=t[s._id.charAt(0)+"calendar"];if(p)l=s.r2c(r,0,y);else if(a(e)&&1===e.length)l=e[0];else if(void 0===r)l=0;else{l=("log"===s.type?s.d2c:s.r2c)(r,0,y)}for(c=i||1,u=f||d?0:-.5;u<o;u++)h.push(l+c*u)}return h}},{"../../lib":728,"../../registry":859}],1024:[function(t,e,r){"use strict";var n=t("d3"),a=t("tinycolor2"),i=t("../../registry"),o=t("../../lib"),s=t("../../components/colorscale").makeColorScaleFuncFromTrace,l=t("../../constants/xmlns_namespaces");function c(t,e){var r=e.length-2,n=o.constrain(o.findBin(t,e),0,r),a=e[n],i=e[n+1],s=o.constrain(n+(t-a)/(i-a)-.5,0,r),l=Math.round(s),c=Math.abs(s-l);return s&&s!==r&&c?{bin0:l,frac:c,bin1:Math.round(l+c/(s-l))}:{bin0:l,bin1:l,frac:0}}function u(t,e){var r=e.length-1,n=o.constrain(o.findBin(t,e),0,r),a=e[n],i=(t-a)/(e[n+1]-a)||0;return i<=0?{bin0:n,bin1:n,frac:0}:i<.5?{bin0:n,bin1:n+1,frac:i}:{bin0:n+1,bin1:n,frac:1-i}}function h(t,e,r){t[e]=r[0],t[e+1]=r[1],t[e+2]=r[2],t[e+3]=Math.round(255*r[3])}e.exports=function(t,e,r,f){var p=e.xaxis,d=e.yaxis;o.makeTraceGroups(f,r,"hm").each((function(e){var r,f,g,m,v,y,x=n.select(this),b=e[0],_=b.trace,w=b.z,T=b.x,k=b.y,A=b.xCenter,M=b.yCenter,S=i.traceIs(_,"contour"),E=S?"best":_.zsmooth,C=w.length,L=o.maxRowLength(w),P=!1,I=!1;for(y=0;void 0===r&&y<T.length-1;)r=p.c2p(T[y]),y++;for(y=T.length-1;void 0===f&&y>0;)f=p.c2p(T[y]),y--;for(f<r&&(g=f,f=r,r=g,P=!0),y=0;void 0===m&&y<k.length-1;)m=d.c2p(k[y]),y++;for(y=k.length-1;void 0===v&&y>0;)v=d.c2p(k[y]),y--;if(v<m&&(g=m,m=v,v=g,I=!0),S&&(A=T,M=k,T=b.xfill,k=b.yfill),"fast"!==E){var z="best"===E?0:.5;r=Math.max(-z*p._length,r),f=Math.min((1+z)*p._length,f),m=Math.max(-z*d._length,m),v=Math.min((1+z)*d._length,v)}var O=Math.round(f-r),D=Math.round(v-m);if(O<=0||D<=0){x.selectAll("image").data([]).exit().remove()}else{var R,F;"fast"===E?(R=L,F=C):(R=O,F=D);var B=document.createElement("canvas");B.width=R,B.height=F;var N,j,V=B.getContext("2d"),U=s(_,{noNumericCheck:!0,returnArray:!0});"fast"===E?(N=P?function(t){return L-1-t}:o.identity,j=I?function(t){return C-1-t}:o.identity):(N=function(t){return o.constrain(Math.round(p.c2p(T[t])-r),0,O)},j=function(t){return o.constrain(Math.round(d.c2p(k[t])-m),0,D)});var q,H,G,Y,W,Z=j(0),X=[Z,Z],J=P?0:1,K=I?0:1,Q=0,$=0,tt=0,et=0;if(E){var rt,nt=0;try{rt=new Uint8Array(O*D*4)}catch(t){rt=new Array(O*D*4)}if("best"===E){var at,it,ot,st=A||T,lt=M||k,ct=new Array(st.length),ut=new Array(lt.length),ht=new Array(O),ft=A?u:c,pt=M?u:c;for(y=0;y<st.length;y++)ct[y]=Math.round(p.c2p(st[y])-r);for(y=0;y<lt.length;y++)ut[y]=Math.round(d.c2p(lt[y])-m);for(y=0;y<O;y++)ht[y]=ft(y,ct);for(H=0;H<D;H++)for(it=w[(at=pt(H,ut)).bin0],ot=w[at.bin1],y=0;y<O;y++,nt+=4)h(rt,nt,W=kt(it,ot,ht[y],at))}else for(H=0;H<C;H++)for(Y=w[H],X=j(H),y=0;y<O;y++)W=Tt(Y[y],1),h(rt,nt=4*(X*O+N(y)),W);var dt=V.createImageData(O,D);try{dt.data.set(rt)}catch(t){var gt=dt.data,mt=gt.length;for(H=0;H<mt;H++)gt[H]=rt[H]}V.putImageData(dt,0,0)}else{var vt=_.xgap,yt=_.ygap,xt=Math.floor(vt/2),bt=Math.floor(yt/2);for(H=0;H<C;H++)if(Y=w[H],X.reverse(),X[K]=j(H+1),X[0]!==X[1]&&void 0!==X[0]&&void 0!==X[1])for(q=[G=N(0),G],y=0;y<L;y++)q.reverse(),q[J]=N(y+1),q[0]!==q[1]&&void 0!==q[0]&&void 0!==q[1]&&(W=Tt(Y[y],(q[1]-q[0])*(X[1]-X[0])),V.fillStyle="rgba("+W.join(",")+")",V.fillRect(q[0]+xt,X[0]+bt,q[1]-q[0]-vt,X[1]-X[0]-yt))}$=Math.round($/Q),tt=Math.round(tt/Q),et=Math.round(et/Q);var _t=a("rgb("+$+","+tt+","+et+")");t._hmpixcount=(t._hmpixcount||0)+Q,t._hmlumcount=(t._hmlumcount||0)+Q*_t.getLuminance();var wt=x.selectAll("image").data(e);wt.enter().append("svg:image").attr({xmlns:l.svg,preserveAspectRatio:"none"}),wt.attr({height:D,width:O,x:r,y:m,"xlink:href":B.toDataURL("image/png")})}function Tt(t,e){if(void 0!==t){var r=U(t);return r[0]=Math.round(r[0]),r[1]=Math.round(r[1]),r[2]=Math.round(r[2]),Q+=e,$+=r[0]*e,tt+=r[1]*e,et+=r[2]*e,r}return[0,0,0,0]}function kt(t,e,r,n){var a=t[r.bin0];if(void 0===a)return Tt(void 0,1);var i,o=t[r.bin1],s=e[r.bin0],l=e[r.bin1],c=o-a||0,u=s-a||0;return i=void 0===o?void 0===l?0:void 0===s?2*(l-a):2*(2*l-s-a)/3:void 0===l?void 0===s?0:2*(2*a-o-s)/3:void 0===s?2*(2*l-o-a)/3:l+a-o-s,Tt(a+r.frac*c+n.frac*(u+r.frac*i))}}))}},{"../../components/colorscale":607,"../../constants/xmlns_namespaces":705,"../../lib":728,"../../registry":859,d3:164,tinycolor2:528}],1025:[function(t,e,r){"use strict";var n=t("d3");e.exports=function(t){n.select(t).selectAll(".hm image").style("opacity",(function(t){return t.trace.opacity}))}},{d3:164}],1026:[function(t,e,r){"use strict";e.exports=function(t,e,r){!1===r("zsmooth")&&(r("xgap"),r("ygap")),r("zhoverformat")}},{}],1027:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../../lib"),i=t("../../registry");function o(t,e){var r=e(t);return"scaled"===(r?e(t+"type","array"):"scaled")&&(e(t+"0"),e("d"+t)),r}e.exports=function(t,e,r,s,l,c){var u,h,f=r("z");if(l=l||"x",c=c||"y",void 0===f||!f.length)return 0;if(a.isArray1D(t.z)){u=r(l),h=r(c);var p=a.minRowLength(u),d=a.minRowLength(h);if(0===p||0===d)return 0;e._length=Math.min(p,d,f.length)}else{if(u=o(l,r),h=o(c,r),!function(t){for(var e,r=!0,i=!1,o=!1,s=0;s<t.length;s++){if(e=t[s],!a.isArrayOrTypedArray(e)){r=!1;break}e.length>0&&(i=!0);for(var l=0;l<e.length;l++)if(n(e[l])){o=!0;break}}return r&&i&&o}(f))return 0;r("transpose"),e._length=null}return"heatmapgl"===t.type||"contourgl"===t.type||i.getComponentMethod("calendars","handleTraceDefaults")(t,e,[l,c],s),!0}},{"../../lib":728,"../../registry":859,"fast-isnumeric":236}],1028:[function(t,e,r){"use strict";for(var n=t("../heatmap/attributes"),a=t("../../components/colorscale/attributes"),i=t("../../lib/extend").extendFlat,o=t("../../plot_api/edit_types").overrideAll,s=["z","x","x0","dx","y","y0","dy","text","transpose","xtype","ytype"],l={},c=0;c<s.length;c++){var u=s[c];l[u]=n[u]}i(l,a("",{cLetter:"z",autoColorDflt:!1})),e.exports=o(l,"calc","nested")},{"../../components/colorscale/attributes":602,"../../lib/extend":719,"../../plot_api/edit_types":759,"../heatmap/attributes":1013}],1029:[function(t,e,r){"use strict";var n=t("gl-heatmap2d"),a=t("../../plots/cartesian/axes"),i=t("../../lib/str2rgbarray");function o(t,e){this.scene=t,this.uid=e,this.type="heatmapgl",this.name="",this.hoverinfo="all",this.xData=[],this.yData=[],this.zData=[],this.textLabels=[],this.idToIndex=[],this.bounds=[0,0,0,0],this.options={z:[],x:[],y:[],shape:[0,0],colorLevels:[0],colorValues:[0,0,0,1]},this.heatmap=n(t.glplot,this.options),this.heatmap._trace=this}var s=o.prototype;s.handlePick=function(t){var e=this.options,r=e.shape,n=t.pointId,a=n%r[0],i=Math.floor(n/r[0]),o=n;return{trace:this,dataCoord:t.dataCoord,traceCoord:[e.x[a],e.y[i],e.z[o]],textLabel:this.textLabels[n],name:this.name,pointIndex:[i,a],hoverinfo:this.hoverinfo}},s.update=function(t,e){var r=e[0];this.index=t.index,this.name=t.name,this.hoverinfo=t.hoverinfo;var n=r.z;this.options.z=[].concat.apply([],n);var o=n[0].length,s=n.length;this.options.shape=[o,s],this.options.x=r.x,this.options.y=r.y;var l=function(t){for(var e=t.colorscale,r=t.zmin,n=t.zmax,a=e.length,o=new Array(a),s=new Array(4*a),l=0;l<a;l++){var c=e[l],u=i(c[1]);o[l]=r+c[0]*(n-r);for(var h=0;h<4;h++)s[4*l+h]=u[h]}return{colorLevels:o,colorValues:s}}(t);this.options.colorLevels=l.colorLevels,this.options.colorValues=l.colorValues,this.textLabels=[].concat.apply([],t.text),this.heatmap.update(this.options);var c=this.scene.xaxis,u=this.scene.yaxis;t._extremes[c._id]=a.findExtremes(c,r.x),t._extremes[u._id]=a.findExtremes(u,r.y)},s.dispose=function(){this.heatmap.dispose()},e.exports=function(t,e,r){var n=new o(t,e.uid);return n.update(e,r),n}},{"../../lib/str2rgbarray":751,"../../plots/cartesian/axes":776,"gl-heatmap2d":263}],1030:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../heatmap/xyz_defaults"),i=t("../../components/colorscale/defaults"),o=t("./attributes");e.exports=function(t,e,r,s){function l(r,a){return n.coerce(t,e,o,r,a)}a(t,e,l,s)?(l("text"),i(t,e,s,l,{prefix:"",cLetter:"z"})):e.visible=!1}},{"../../components/colorscale/defaults":605,"../../lib":728,"../heatmap/xyz_defaults":1027,"./attributes":1028}],1031:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),supplyDefaults:t("./defaults"),colorbar:t("../heatmap/colorbar"),calc:t("../heatmap/calc"),plot:t("./convert"),moduleType:"trace",name:"heatmapgl",basePlotModule:t("../../plots/gl2d"),categories:["gl","gl2d","2dMap"],meta:{}}},{"../../plots/gl2d":816,"../heatmap/calc":1014,"../heatmap/colorbar":1016,"./attributes":1028,"./convert":1029,"./defaults":1030}],1032:[function(t,e,r){"use strict";var n=t("../bar/attributes"),a=t("../../plots/template_attributes").hovertemplateAttrs,i=t("./bin_attributes"),o=t("./constants"),s=t("../../lib/extend").extendFlat;e.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},text:s({},n.text,{}),hovertext:s({},n.hovertext,{}),orientation:n.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:i("x",!0),nbinsy:{valType:"integer",min:0,dflt:0,editType:"calc"},ybins:i("y",!0),autobinx:{valType:"boolean",dflt:null,editType:"calc"},autobiny:{valType:"boolean",dflt:null,editType:"calc"},bingroup:{valType:"string",dflt:"",editType:"calc"},hovertemplate:a({},{keys:o.eventDataKeys}),marker:n.marker,offsetgroup:n.offsetgroup,alignmentgroup:n.alignmentgroup,selected:n.selected,unselected:n.unselected,_deprecated:{bardir:n._deprecated.bardir}}},{"../../lib/extend":719,"../../plots/template_attributes":854,"../bar/attributes":869,"./bin_attributes":1034,"./constants":1038}],1033:[function(t,e,r){"use strict";e.exports=function(t,e){for(var r=t.length,n=0,a=0;a<r;a++)e[a]?(t[a]/=e[a],n+=t[a]):t[a]=null;return n}},{}],1034:[function(t,e,r){"use strict";e.exports=function(t,e){return{start:{valType:"any",editType:"calc"},end:{valType:"any",editType:"calc"},size:{valType:"any",editType:"calc"},editType:"calc"}}},{}],1035:[function(t,e,r){"use strict";var n=t("fast-isnumeric");e.exports={count:function(t,e,r){return r[t]++,1},sum:function(t,e,r,a){var i=a[e];return n(i)?(i=Number(i),r[t]+=i,i):0},avg:function(t,e,r,a,i){var o=a[e];return n(o)&&(o=Number(o),r[t]+=o,i[t]++),0},min:function(t,e,r,a){var i=a[e];if(n(i)){if(i=Number(i),!n(r[t]))return r[t]=i,i;if(r[t]>i){var o=i-r[t];return r[t]=i,o}}return 0},max:function(t,e,r,a){var i=a[e];if(n(i)){if(i=Number(i),!n(r[t]))return r[t]=i,i;if(r[t]<i){var o=i-r[t];return r[t]=i,o}}return 0}}},{"fast-isnumeric":236}],1036:[function(t,e,r){"use strict";var n=t("../../constants/numerical"),a=n.ONEAVGYEAR,i=n.ONEAVGMONTH,o=n.ONEDAY,s=n.ONEHOUR,l=n.ONEMIN,c=n.ONESEC,u=t("../../plots/cartesian/axes").tickIncrement;function h(t,e,r,n){if(t*e<=0)return 1/0;for(var a=Math.abs(e-t),i="date"===r.type,o=f(a,i),s=0;s<10;s++){var l=f(80*o,i);if(o===l)break;if(!p(l,t,e,i,r,n))break;o=l}return o}function f(t,e){return e&&t>c?t>o?t>1.1*a?a:t>1.1*i?i:o:t>s?s:t>l?l:c:Math.pow(10,Math.floor(Math.log(t)/Math.LN10))}function p(t,e,r,n,i,s){if(n&&t>o){var l=d(e,i,s),c=d(r,i,s),u=t===a?0:1;return l[u]!==c[u]}return Math.floor(r/t)-Math.floor(e/t)>.1}function d(t,e,r){var n=e.c2d(t,a,r).split("-");return""===n[0]&&(n.unshift(),n[0]="-"+n[0]),n}e.exports=function(t,e,r,n,i){var s,l,c=-1.1*e,f=-.1*e,p=t-f,d=r[0],g=r[1],m=Math.min(h(d+f,d+p,n,i),h(g+f,g+p,n,i)),v=Math.min(h(d+c,d+f,n,i),h(g+c,g+f,n,i));if(m>v&&v<Math.abs(g-d)/4e3?(s=m,l=!1):(s=Math.min(m,v),l=!0),"date"===n.type&&s>o){var y=s===a?1:6,x=s===a?"M12":"M1";return function(e,r){var o=n.c2d(e,a,i),s=o.indexOf("-",y);s>0&&(o=o.substr(0,s));var c=n.d2c(o,0,i);if(c<e){var h=u(c,x,!1,i);(c+h)/2<e+t&&(c=h)}return r&&l?u(c,x,!0,i):c}}return function(e,r){var n=s*Math.round(e/s);return n+s/10<e&&n+.9*s<e+t&&(n+=s),r&&l&&(n-=s),n}}},{"../../constants/numerical":704,"../../plots/cartesian/axes":776}],1037:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../../lib"),i=t("../../registry"),o=t("../../plots/cartesian/axes"),s=t("../bar/arrays_to_calcdata"),l=t("./bin_functions"),c=t("./norm_functions"),u=t("./average"),h=t("./bin_label_vals");function f(t,e,r,s,l){var c,u,h,p,d,g,m,v=s+"bins",y=t._fullLayout,x=e["_"+s+"bingroup"],b=y._histogramBinOpts[x],_="overlay"===y.barmode,w=function(t){return r.r2c(t,0,p)},T=function(t){return r.c2r(t,0,p)},k="date"===r.type?function(t){return t||0===t?a.cleanDate(t,null,p):null}:function(t){return n(t)?Number(t):null};function A(t,e,r){e[t+"Found"]?(e[t]=k(e[t]),null===e[t]&&(e[t]=r[t])):(g[t]=e[t]=r[t],a.nestedProperty(u[0],v+"."+t).set(r[t]))}if(e["_"+s+"autoBinFinished"])delete e["_"+s+"autoBinFinished"];else{u=b.traces;var M=[],S=!0,E=!1,C=!1;for(c=0;c<u.length;c++)if((h=u[c]).visible){var L=b.dirs[c];d=h["_"+L+"pos0"]=r.makeCalcdata(h,L),M=a.concat(M,d),delete h["_"+s+"autoBinFinished"],!0===e.visible&&(S?S=!1:(delete h._autoBin,h["_"+s+"autoBinFinished"]=1),i.traceIs(h,"2dMap")&&(E=!0),"histogram2dcontour"===h.type&&(C=!0))}p=u[0][s+"calendar"];var P=o.autoBin(M,r,b.nbins,E,p,b.sizeFound&&b.size),I=u[0]._autoBin={};if(g=I[b.dirs[0]]={},C&&(b.size||(P.start=T(o.tickIncrement(w(P.start),P.size,!0,p))),void 0===b.end&&(P.end=T(o.tickIncrement(w(P.end),P.size,!1,p)))),_&&!i.traceIs(e,"2dMap")&&0===P._dataSpan&&"category"!==r.type&&"multicategory"!==r.type){if(l)return[P,d,!0];P=function(t,e,r,n,i){var o,s,l,c=t._fullLayout,u=function(t,e){for(var r=e.xaxis,n=e.yaxis,a=e.orientation,i=[],o=t._fullData,s=0;s<o.length;s++){var l=o[s];"histogram"===l.type&&!0===l.visible&&l.orientation===a&&l.xaxis===r&&l.yaxis===n&&i.push(l)}return i}(t,e),h=!1,p=1/0,d=[e];for(o=0;o<u.length;o++)if((s=u[o])===e)h=!0;else if(h){var g=f(t,s,r,n,!0),m=g[0],v=g[2];s["_"+n+"autoBinFinished"]=1,s["_"+n+"pos0"]=g[1],v?d.push(s):p=Math.min(p,m.size)}else l=c._histogramBinOpts[s["_"+n+"bingroup"]],p=Math.min(p,l.size||s[i].size);var y=new Array(d.length);for(o=0;o<d.length;o++)for(var x=d[o]["_"+n+"pos0"],b=0;b<x.length;b++)if(void 0!==x[b]){y[o]=x[b];break}isFinite(p)||(p=a.distinctVals(y).minDiff);for(o=0;o<d.length;o++){var _=(s=d[o])[n+"calendar"],w={start:r.c2r(y[o]-p/2,0,_),end:r.c2r(y[o]+p/2,0,_),size:p};s._input[i]=s[i]=w,(l=c._histogramBinOpts[s["_"+n+"bingroup"]])&&a.extendFlat(l,w)}return e[i]}(t,e,r,s,v)}(m=h.cumulative||{}).enabled&&"include"!==m.currentbin&&("decreasing"===m.direction?P.start=T(o.tickIncrement(w(P.start),P.size,!0,p)):P.end=T(o.tickIncrement(w(P.end),P.size,!1,p))),b.size=P.size,b.sizeFound||(g.size=P.size,a.nestedProperty(u[0],v+".size").set(P.size)),A("start",b,P),A("end",b,P)}d=e["_"+s+"pos0"],delete e["_"+s+"pos0"];var z=e._input[v]||{},O=a.extendFlat({},b),D=b.start,R=r.r2l(z.start),F=void 0!==R;if((b.startFound||F)&&R!==r.r2l(D)){var B=F?R:a.aggNums(Math.min,null,d),N={type:"category"===r.type||"multicategory"===r.type?"linear":r.type,r2l:r.r2l,dtick:b.size,tick0:D,calendar:p,range:[B,o.tickIncrement(B,b.size,!1,p)].map(r.l2r)},j=o.tickFirst(N);j>r.r2l(B)&&(j=o.tickIncrement(j,b.size,!0,p)),O.start=r.l2r(j),F||a.nestedProperty(e,v+".start").set(O.start)}var V=b.end,U=r.r2l(z.end),q=void 0!==U;if((b.endFound||q)&&U!==r.r2l(V)){var H=q?U:a.aggNums(Math.max,null,d);O.end=r.l2r(H),q||a.nestedProperty(e,v+".start").set(O.end)}var G="autobin"+s;return!1===e._input[G]&&(e._input[v]=a.extendFlat({},e[v]||{}),delete e._input[G],delete e[G]),[O,d]}e.exports={calc:function(t,e){var r,i,p,d,g=[],m=[],v=o.getFromId(t,"h"===e.orientation?e.yaxis:e.xaxis),y="h"===e.orientation?"y":"x",x={x:"y",y:"x"}[y],b=e[y+"calendar"],_=e.cumulative,w=f(t,e,v,y),T=w[0],k=w[1],A="string"==typeof T.size,M=[],S=A?M:T,E=[],C=[],L=[],P=0,I=e.histnorm,z=e.histfunc,O=-1!==I.indexOf("density");_.enabled&&O&&(I=I.replace(/ ?density$/,""),O=!1);var D,R="max"===z||"min"===z?null:0,F=l.count,B=c[I],N=!1,j=function(t){return v.r2c(t,0,b)};for(a.isArrayOrTypedArray(e[x])&&"count"!==z&&(D=e[x],N="avg"===z,F=l[z]),r=j(T.start),p=j(T.end)+(r-o.tickIncrement(r,T.size,!1,b))/1e6;r<p&&g.length<1e6&&(i=o.tickIncrement(r,T.size,!1,b),g.push((r+i)/2),m.push(R),L.push([]),M.push(r),O&&E.push(1/(i-r)),N&&C.push(0),!(i<=r));)r=i;M.push(r),A||"date"!==v.type||(S={start:j(S.start),end:j(S.end),size:S.size}),t._fullLayout._roundFnOpts||(t._fullLayout._roundFnOpts={});var V=e["_"+y+"bingroup"],U={leftGap:1/0,rightGap:1/0};V&&(t._fullLayout._roundFnOpts[V]||(t._fullLayout._roundFnOpts[V]=U),U=t._fullLayout._roundFnOpts[V]);var q,H=m.length,G=!0,Y=U.leftGap,W=U.rightGap,Z={};for(r=0;r<k.length;r++){var X=k[r];(d=a.findBin(X,S))>=0&&d<H&&(P+=F(d,r,m,D,C),G&&L[d].length&&X!==k[L[d][0]]&&(G=!1),L[d].push(r),Z[r]=d,Y=Math.min(Y,X-M[d]),W=Math.min(W,M[d+1]-X))}U.leftGap=Y,U.rightGap=W,G||(q=function(e,r){return function(){var n=t._fullLayout._roundFnOpts[V];return h(n.leftGap,n.rightGap,M,v,b)(e,r)}}),N&&(P=u(m,C)),B&&B(m,P,E),_.enabled&&function(t,e,r){var n,a,i;function o(e){i=t[e],t[e]/=2}function s(e){a=t[e],t[e]=i+a/2,i+=a}if("half"===r)if("increasing"===e)for(o(0),n=1;n<t.length;n++)s(n);else for(o(t.length-1),n=t.length-2;n>=0;n--)s(n);else if("increasing"===e){for(n=1;n<t.length;n++)t[n]+=t[n-1];"exclude"===r&&(t.unshift(0),t.pop())}else{for(n=t.length-2;n>=0;n--)t[n]+=t[n+1];"exclude"===r&&(t.push(0),t.shift())}}(m,_.direction,_.currentbin);var J=Math.min(g.length,m.length),K=[],Q=0,$=J-1;for(r=0;r<J;r++)if(m[r]){Q=r;break}for(r=J-1;r>=Q;r--)if(m[r]){$=r;break}for(r=Q;r<=$;r++)if(n(g[r])&&n(m[r])){var tt={p:g[r],s:m[r],b:0};_.enabled||(tt.pts=L[r],G?tt.ph0=tt.ph1=L[r].length?k[L[r][0]]:g[r]:(e._computePh=!0,tt.ph0=q(M[r]),tt.ph1=q(M[r+1],!0))),K.push(tt)}return 1===K.length&&(K[0].width1=o.tickIncrement(K[0].p,T.size,!1,b)-K[0].p),s(K,e),a.isArrayOrTypedArray(e.selectedpoints)&&a.tagSelected(K,e,Z),K},calcAllAutoBins:f}},{"../../lib":728,"../../plots/cartesian/axes":776,"../../registry":859,"../bar/arrays_to_calcdata":868,"./average":1033,"./bin_functions":1035,"./bin_label_vals":1036,"./norm_functions":1044,"fast-isnumeric":236}],1038:[function(t,e,r){"use strict";e.exports={eventDataKeys:["binNumber"]}},{}],1039:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../plots/cartesian/axis_ids"),i=t("../../registry").traceIs,o=t("../bar/defaults").handleGroupingDefaults,s=n.nestedProperty,l=a.getAxisGroup,c=[{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"}],u=["x","y"];e.exports=function(t,e){var r,h,f,p,d,g,m,v=e._histogramBinOpts={},y=[],x={},b=[];function _(t,e){return n.coerce(r._input,r,r._module.attributes,t,e)}function w(t){return"v"===t.orientation?"x":"y"}function T(t,r,i){var o=t.uid+"__"+i;r||(r=o);var s=function(t,r){return a.getFromTrace({_fullLayout:e},t,r).type}(t,i),l=t[i+"calendar"]||"",c=v[r],u=!0;c&&(s===c.axType&&l===c.calendar?(u=!1,c.traces.push(t),c.dirs.push(i)):(r=o,s!==c.axType&&n.warn(["Attempted to group the bins of trace",t.index,"set on a","type:"+s,"axis","with bins on","type:"+c.axType,"axis."].join(" ")),l!==c.calendar&&n.warn(["Attempted to group the bins of trace",t.index,"set with a",l,"calendar","with bins",c.calendar?"on a "+c.calendar+" calendar":"w/o a set calendar"].join(" ")))),u&&(v[r]={traces:[t],dirs:[i],axType:s,calendar:t[i+"calendar"]||""}),t["_"+i+"bingroup"]=r}for(d=0;d<t.length;d++)r=t[d],i(r,"histogram")&&(y.push(r),delete r._xautoBinFinished,delete r._yautoBinFinished,i(r,"2dMap")||o(r._input,r,e,_));var k=e._alignmentOpts||{};for(d=0;d<y.length;d++){if(r=y[d],f="",!i(r,"2dMap")){if(p=w(r),"group"===e.barmode&&r.alignmentgroup){var A=r[p+"axis"],M=l(e,A)+r.orientation;(k[M]||{})[r.alignmentgroup]&&(f=M)}f||"overlay"===e.barmode||(f=l(e,r.xaxis)+l(e,r.yaxis)+w(r))}f?(x[f]||(x[f]=[]),x[f].push(r)):b.push(r)}for(f in x)if(1!==(h=x[f]).length){var S=!1;for(d=0;d<h.length;d++){r=h[d],S=_("bingroup");break}for(f=S||f,d=0;d<h.length;d++){var E=(r=h[d])._input.bingroup;E&&E!==f&&n.warn(["Trace",r.index,"must match","within bingroup",f+".","Ignoring its bingroup:",E,"setting."].join(" ")),r.bingroup=f,T(r,f,w(r))}}else b.push(h[0]);for(d=0;d<b.length;d++){r=b[d];var C=_("bingroup");if(i(r,"2dMap"))for(m=0;m<2;m++){var L=_((p=u[m])+"bingroup",C?C+"__"+p:null);T(r,L,p)}else T(r,C,w(r))}for(f in v){var P=v[f];for(h=P.traces,g=0;g<c.length;g++){var I,z,O=c[g],D=O.name;if("nbins"!==D||!P.sizeFound){for(d=0;d<h.length;d++){if(r=h[d],p=P.dirs[d],I=O.aStr[p],void 0!==s(r._input,I).get()){P[D]=_(I),P[D+"Found"]=!0;break}(z=(r._autoBin||{})[p]||{})[D]&&s(r,I).set(z[D])}if("start"===D||"end"===D)for(;d<h.length;d++)(r=h[d])["_"+p+"bingroup"]&&_(I,(z=(r._autoBin||{})[p]||{})[D]);"nbins"!==D||P.sizeFound||P.nbinsFound||(r=h[0],P[D]=_(I))}}}}},{"../../lib":728,"../../plots/cartesian/axis_ids":779,"../../registry":859,"../bar/defaults":873}],1040:[function(t,e,r){"use strict";var n=t("../../registry"),a=t("../../lib"),i=t("../../components/color"),o=t("../bar/style_defaults"),s=t("./attributes");e.exports=function(t,e,r,l){function c(r,n){return a.coerce(t,e,s,r,n)}var u=c("x"),h=c("y");c("cumulative.enabled")&&(c("cumulative.direction"),c("cumulative.currentbin")),c("text"),c("hovertext"),c("hovertemplate");var f=c("orientation",h&&!u?"h":"v"),p="v"===f?"x":"y",d="v"===f?"y":"x",g=u&&h?Math.min(a.minRowLength(u)&&a.minRowLength(h)):a.minRowLength(e[p]||[]);if(g){e._length=g,n.getComponentMethod("calendars","handleTraceDefaults")(t,e,["x","y"],l),e[d]&&c("histfunc"),c("histnorm"),c("autobin"+p),o(t,e,c,r,l),a.coerceSelectionMarkerOpacity(e,c);var m=(e.marker.line||{}).color,v=n.getComponentMethod("errorbars","supplyDefaults");v(t,e,m||i.defaultLine,{axis:"y"}),v(t,e,m||i.defaultLine,{axis:"x",inherit:"y"})}else e.visible=!1}},{"../../components/color":595,"../../lib":728,"../../registry":859,"../bar/style_defaults":884,"./attributes":1032}],1041:[function(t,e,r){"use strict";e.exports=function(t,e,r,n,a){if(t.x="xVal"in e?e.xVal:e.x,t.y="yVal"in e?e.yVal:e.y,"zLabelVal"in e&&(t.z=e.zLabelVal),e.xa&&(t.xaxis=e.xa),e.ya&&(t.yaxis=e.ya),!(r.cumulative||{}).enabled){var i,o=Array.isArray(a)?n[0].pts[a[0]][a[1]]:n[a].pts;if(t.pointNumbers=o,t.binNumber=t.pointNumber,delete t.pointNumber,delete t.pointIndex,r._indexToPoints){i=[];for(var s=0;s<o.length;s++)i=i.concat(r._indexToPoints[o[s]])}else i=o;t.pointIndices=i}return t}},{}],1042:[function(t,e,r){"use strict";var n=t("../bar/hover").hoverPoints,a=t("../../plots/cartesian/axes").hoverLabelText;e.exports=function(t,e,r,i){var o=n(t,e,r,i);if(o){var s=(t=o[0]).cd[t.index],l=t.cd[0].trace;if(!l.cumulative.enabled){var c="h"===l.orientation?"y":"x";t[c+"Label"]=a(t[c+"a"],s.ph0,s.ph1)}return o}}},{"../../plots/cartesian/axes":776,"../bar/hover":876}],1043:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),layoutAttributes:t("../bar/layout_attributes"),supplyDefaults:t("./defaults"),crossTraceDefaults:t("./cross_trace_defaults"),supplyLayoutDefaults:t("../bar/layout_defaults"),calc:t("./calc").calc,crossTraceCalc:t("../bar/cross_trace_calc").crossTraceCalc,plot:t("../bar/plot").plot,layerName:"barlayer",style:t("../bar/style").style,styleOnSelect:t("../bar/style").styleOnSelect,colorbar:t("../scatter/marker_colorbar"),hoverPoints:t("./hover"),selectPoints:t("../bar/select"),eventData:t("./event_data"),moduleType:"trace",name:"histogram",basePlotModule:t("../../plots/cartesian"),categories:["bar-like","cartesian","svg","bar","histogram","oriented","errorBarsOK","showLegend"],meta:{}}},{"../../plots/cartesian":789,"../bar/cross_trace_calc":872,"../bar/layout_attributes":878,"../bar/layout_defaults":879,"../bar/plot":880,"../bar/select":881,"../bar/style":883,"../scatter/marker_colorbar":1152,"./attributes":1032,"./calc":1037,"./cross_trace_defaults":1039,"./defaults":1040,"./event_data":1041,"./hover":1042}],1044:[function(t,e,r){"use strict";e.exports={percent:function(t,e){for(var r=t.length,n=100/e,a=0;a<r;a++)t[a]*=n},probability:function(t,e){for(var r=t.length,n=0;n<r;n++)t[n]/=e},density:function(t,e,r,n){var a=t.length;n=n||1;for(var i=0;i<a;i++)t[i]*=r[i]*n},"probability density":function(t,e,r,n){var a=t.length;n&&(e/=n);for(var i=0;i<a;i++)t[i]*=r[i]/e}}},{}],1045:[function(t,e,r){"use strict";var n=t("../histogram/attributes"),a=t("../histogram/bin_attributes"),i=t("../heatmap/attributes"),o=t("../../plots/attributes"),s=t("../../plots/template_attributes").hovertemplateAttrs,l=t("../../components/colorscale/attributes"),c=t("../../lib/extend").extendFlat;e.exports=c({x:n.x,y:n.y,z:{valType:"data_array",editType:"calc"},marker:{color:{valType:"data_array",editType:"calc"},editType:"calc"},histnorm:n.histnorm,histfunc:n.histfunc,nbinsx:n.nbinsx,xbins:a("x"),nbinsy:n.nbinsy,ybins:a("y"),autobinx:n.autobinx,autobiny:n.autobiny,bingroup:c({},n.bingroup,{}),xbingroup:c({},n.bingroup,{}),ybingroup:c({},n.bingroup,{}),xgap:i.xgap,ygap:i.ygap,zsmooth:i.zsmooth,zhoverformat:i.zhoverformat,hovertemplate:s({},{keys:"z"}),showlegend:c({},o.showlegend,{dflt:!1})},l("",{cLetter:"z",autoColorDflt:!1}))},{"../../components/colorscale/attributes":602,"../../lib/extend":719,"../../plots/attributes":773,"../../plots/template_attributes":854,"../heatmap/attributes":1013,"../histogram/attributes":1032,"../histogram/bin_attributes":1034}],1046:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../plots/cartesian/axes"),i=t("../histogram/bin_functions"),o=t("../histogram/norm_functions"),s=t("../histogram/average"),l=t("../histogram/bin_label_vals"),c=t("../histogram/calc").calcAllAutoBins;function u(t,e,r,n){var a,i=new Array(t);if(n)for(a=0;a<t;a++)i[a]=1/(e[a+1]-e[a]);else{var o=1/r;for(a=0;a<t;a++)i[a]=o}return i}function h(t,e){return{start:t(e.start),end:t(e.end),size:e.size}}function f(t,e,r,n,a,i){var o,s=t.length-1,c=new Array(s),u=l(r,n,t,a,i);for(o=0;o<s;o++){var h=(e||[])[o];c[o]=void 0===h?[u(t[o]),u(t[o+1],!0)]:[h,h]}return c}e.exports=function(t,e){var r,l,p,d,g=a.getFromId(t,e.xaxis),m=a.getFromId(t,e.yaxis),v=e.xcalendar,y=e.ycalendar,x=function(t){return g.r2c(t,0,v)},b=function(t){return m.r2c(t,0,y)},_=c(t,e,g,"x"),w=_[0],T=_[1],k=c(t,e,m,"y"),A=k[0],M=k[1],S=e._length;T.length>S&&T.splice(S,T.length-S),M.length>S&&M.splice(S,M.length-S);var E=[],C=[],L=[],P="string"==typeof w.size,I="string"==typeof A.size,z=[],O=[],D=P?z:w,R=I?O:A,F=0,B=[],N=[],j=e.histnorm,V=e.histfunc,U=-1!==j.indexOf("density"),q="max"===V||"min"===V?null:0,H=i.count,G=o[j],Y=!1,W=[],Z=[],X="z"in e?e.z:"marker"in e&&Array.isArray(e.marker.color)?e.marker.color:"";X&&"count"!==V&&(Y="avg"===V,H=i[V]);var J=w.size,K=x(w.start),Q=x(w.end)+(K-a.tickIncrement(K,J,!1,v))/1e6;for(r=K;r<Q;r=a.tickIncrement(r,J,!1,v))C.push(q),z.push(r),Y&&L.push(0);z.push(r);var $,tt=C.length,et=(r-K)/tt,rt=($=K+et/2,g.c2r($,0,v)),nt=A.size,at=b(A.start),it=b(A.end)+(at-a.tickIncrement(at,nt,!1,y))/1e6;for(r=at;r<it;r=a.tickIncrement(r,nt,!1,y)){E.push(C.slice()),O.push(r);var ot=new Array(tt);for(l=0;l<tt;l++)ot[l]=[];N.push(ot),Y&&B.push(L.slice())}O.push(r);var st=E.length,lt=(r-at)/st,ct=function(t){return m.c2r(t,0,y)}(at+lt/2);U&&(W=u(C.length,D,et,P),Z=u(E.length,R,lt,I)),P||"date"!==g.type||(D=h(x,D)),I||"date"!==m.type||(R=h(b,R));var ut=!0,ht=!0,ft=new Array(tt),pt=new Array(st),dt=1/0,gt=1/0,mt=1/0,vt=1/0;for(r=0;r<S;r++){var yt=T[r],xt=M[r];p=n.findBin(yt,D),d=n.findBin(xt,R),p>=0&&p<tt&&d>=0&&d<st&&(F+=H(p,r,E[d],X,B[d]),N[d][p].push(r),ut&&(void 0===ft[p]?ft[p]=yt:ft[p]!==yt&&(ut=!1)),ht&&(void 0===pt[d]?pt[d]=xt:pt[d]!==xt&&(ht=!1)),dt=Math.min(dt,yt-z[p]),gt=Math.min(gt,z[p+1]-yt),mt=Math.min(mt,xt-O[d]),vt=Math.min(vt,O[d+1]-xt))}if(Y)for(d=0;d<st;d++)F+=s(E[d],B[d]);if(G)for(d=0;d<st;d++)G(E[d],F,W,Z[d]);return{x:T,xRanges:f(z,ut&&ft,dt,gt,g,v),x0:rt,dx:et,y:M,yRanges:f(O,ht&&pt,mt,vt,m,y),y0:ct,dy:lt,z:E,pts:N}}},{"../../lib":728,"../../plots/cartesian/axes":776,"../histogram/average":1033,"../histogram/bin_functions":1035,"../histogram/bin_label_vals":1036,"../histogram/calc":1037,"../histogram/norm_functions":1044}],1047:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./sample_defaults"),i=t("../heatmap/style_defaults"),o=t("../../components/colorscale/defaults"),s=t("./attributes");e.exports=function(t,e,r,l){function c(r,a){return n.coerce(t,e,s,r,a)}a(t,e,c,l),!1!==e.visible&&(i(t,e,c,l),o(t,e,l,c,{prefix:"",cLetter:"z"}),c("hovertemplate"))}},{"../../components/colorscale/defaults":605,"../../lib":728,"../heatmap/style_defaults":1026,"./attributes":1045,"./sample_defaults":1050}],1048:[function(t,e,r){"use strict";var n=t("../heatmap/hover"),a=t("../../plots/cartesian/axes").hoverLabelText;e.exports=function(t,e,r,i,o,s){var l=n(t,e,r,i,o,s);if(l){var c=(t=l[0]).index,u=c[0],h=c[1],f=t.cd[0],p=f.xRanges[h],d=f.yRanges[u];return t.xLabel=a(t.xa,p[0],p[1]),t.yLabel=a(t.ya,d[0],d[1]),l}}},{"../../plots/cartesian/axes":776,"../heatmap/hover":1020}],1049:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),supplyDefaults:t("./defaults"),crossTraceDefaults:t("../histogram/cross_trace_defaults"),calc:t("../heatmap/calc"),plot:t("../heatmap/plot"),layerName:"heatmaplayer",colorbar:t("../heatmap/colorbar"),style:t("../heatmap/style"),hoverPoints:t("./hover"),eventData:t("../histogram/event_data"),moduleType:"trace",name:"histogram2d",basePlotModule:t("../../plots/cartesian"),categories:["cartesian","svg","2dMap","histogram","showLegend"],meta:{}}},{"../../plots/cartesian":789,"../heatmap/calc":1014,"../heatmap/colorbar":1016,"../heatmap/plot":1024,"../heatmap/style":1025,"../histogram/cross_trace_defaults":1039,"../histogram/event_data":1041,"./attributes":1045,"./defaults":1047,"./hover":1048}],1050:[function(t,e,r){"use strict";var n=t("../../registry"),a=t("../../lib");e.exports=function(t,e,r,i){var o=r("x"),s=r("y"),l=a.minRowLength(o),c=a.minRowLength(s);l&&c?(e._length=Math.min(l,c),n.getComponentMethod("calendars","handleTraceDefaults")(t,e,["x","y"],i),(r("z")||r("marker.color"))&&r("histfunc"),r("histnorm"),r("autobinx"),r("autobiny")):e.visible=!1}},{"../../lib":728,"../../registry":859}],1051:[function(t,e,r){"use strict";var n=t("../histogram2d/attributes"),a=t("../contour/attributes"),i=t("../../components/colorscale/attributes"),o=t("../../lib/extend").extendFlat;e.exports=o({x:n.x,y:n.y,z:n.z,marker:n.marker,histnorm:n.histnorm,histfunc:n.histfunc,nbinsx:n.nbinsx,xbins:n.xbins,nbinsy:n.nbinsy,ybins:n.ybins,autobinx:n.autobinx,autobiny:n.autobiny,bingroup:n.bingroup,xbingroup:n.xbingroup,ybingroup:n.ybingroup,autocontour:a.autocontour,ncontours:a.ncontours,contours:a.contours,line:{color:a.line.color,width:o({},a.line.width,{dflt:.5}),dash:a.line.dash,smoothing:a.line.smoothing,editType:"plot"},zhoverformat:n.zhoverformat,hovertemplate:n.hovertemplate},i("",{cLetter:"z",editTypeOverride:"calc"}))},{"../../components/colorscale/attributes":602,"../../lib/extend":719,"../contour/attributes":956,"../histogram2d/attributes":1045}],1052:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../histogram2d/sample_defaults"),i=t("../contour/contours_defaults"),o=t("../contour/style_defaults"),s=t("./attributes");e.exports=function(t,e,r,l){function c(r,a){return n.coerce(t,e,s,r,a)}a(t,e,c,l),!1!==e.visible&&(i(t,e,c,(function(r){return n.coerce2(t,e,s,r)})),o(t,e,c,l),c("hovertemplate"))}},{"../../lib":728,"../contour/contours_defaults":963,"../contour/style_defaults":977,"../histogram2d/sample_defaults":1050,"./attributes":1051}],1053:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),supplyDefaults:t("./defaults"),crossTraceDefaults:t("../histogram/cross_trace_defaults"),calc:t("../contour/calc"),plot:t("../contour/plot").plot,layerName:"contourlayer",style:t("../contour/style"),colorbar:t("../contour/colorbar"),hoverPoints:t("../contour/hover"),moduleType:"trace",name:"histogram2dcontour",basePlotModule:t("../../plots/cartesian"),categories:["cartesian","svg","2dMap","contour","histogram","showLegend"],meta:{}}},{"../../plots/cartesian":789,"../contour/calc":957,"../contour/colorbar":959,"../contour/hover":969,"../contour/plot":974,"../contour/style":976,"../histogram/cross_trace_defaults":1039,"./attributes":1051,"./defaults":1052}],1054:[function(t,e,r){"use strict";for(var n=t("../../plots/attributes"),a=t("../../plots/template_attributes").hovertemplateAttrs,i=t("../../lib/extend").extendFlat,o=t("./constants").colormodel,s=["rgb","rgba","hsl","hsla"],l=[],c=[],u=0;u<s.length;u++)l.push("For the”+s[u]+”colormodel, it is ["+o[s[u]].min.join(", ")+"]."),c.push("For the”+s[u]+”colormodel, it is ["+o[s[u]].max.join(", ")+"].");e.exports=i({z:{valType:"data_array",editType:"calc"},colormodel:{valType:"enumerated",values:s,dflt:"rgb",editType:"calc"},zmin:{valType:"info_array",items:[{valType:"number",editType:"calc"},{valType:"number",editType:"calc"},{valType:"number",editType:"calc"},{valType:"number",editType:"calc"}],editType:"calc"},zmax:{valType:"info_array",items:[{valType:"number",editType:"calc"},{valType:"number",editType:"calc"},{valType:"number",editType:"calc"},{valType:"number",editType:"calc"}],editType:"calc"},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes"},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes"},dx:{valType:"number",dflt:1,editType:"calc"},dy:{valType:"number",dflt:1,editType:"calc"},text:{valType:"data_array",editType:"plot"},hovertext:{valType:"data_array",editType:"plot"},hoverinfo:i({},n.hoverinfo,{flags:["x","y","z","color","name","text"],dflt:"x+y+z+text+name"}),hovertemplate:a({},{keys:["z","color","colormodel"]}),transforms:void 0})},{"../../lib/extend":719,"../../plots/attributes":773,"../../plots/template_attributes":854,"./constants":1056}],1055:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./constants"),i=t("fast-isnumeric"),o=t("../../plots/cartesian/axes"),s=t("../../lib").maxRowLength;function l(t,e,r,a){return function(i){return n.constrain((i-t)*e,r,a)}}function c(t,e){return function(r){return n.constrain(r,t,e)}}e.exports=function(t,e){var r,n=o.getFromId(t,e.xaxis||"x"),u=o.getFromId(t,e.yaxis||"y"),h=n.d2c(e.x0)-e.dx/2,f=u.d2c(e.y0)-e.dy/2,p=e.z.length,d=s(e.z),g=[h,h+d*e.dx],m=[f,f+p*e.dy];if(n&&"log"===n.type)for(r=0;r<d;r++)g.push(h+r*e.dx);if(u&&"log"===u.type)for(r=0;r<p;r++)m.push(f+r*e.dy);return e._extremes[n._id]=o.findExtremes(n,g),e._extremes[u._id]=o.findExtremes(u,m),e._scaler=function(t){var e=t.colormodel,r=e.length,n=a.colormodel[e];t._sArray=[];for(var o=0;o<r;o++)n.min[o]!==t.zmin[o]||n.max[o]!==t.zmax[o]?t._sArray.push(l(t.zmin[o],(n.max[o]-n.min[o])/(t.zmax[o]-t.zmin[o]),n.min[o],n.max[o])):t._sArray.push(c(n.min[o],n.max[o]));return function(e){for(var n=e.slice(0,r),a=0;a<r;a++){var o=n[a];if(!i(o))return!1;n[a]=t._sArray[a](o)}return n}}(e),[{x0:h,y0:f,z:e.z,w:d,h:p}]}},{"../../lib":728,"../../plots/cartesian/axes":776,"./constants":1056,"fast-isnumeric":236}],1056:[function(t,e,r){"use strict";e.exports={colormodel:{rgb:{min:[0,0,0],max:[255,255,255],fmt:function(t){return t.slice(0,3)},suffix:["","",""]},rgba:{min:[0,0,0,0],max:[255,255,255,1],fmt:function(t){return t.slice(0,4)},suffix:["","","",""]},hsl:{min:[0,0,0],max:[360,100,100],fmt:function(t){var e=t.slice(0,3);return e[1]=e[1]+"%",e[2]=e[2]+"%",e},suffix:["\xb0","%","%"]},hsla:{min:[0,0,0,0],max:[360,100,100,1],fmt:function(t){var e=t.slice(0,4);return e[1]=e[1]+"%",e[2]=e[2]+"%",e},suffix:["\xb0","%","%",""]}}}},{}],1057:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./attributes"),i=t("./constants");e.exports=function(t,e){function r(r,i){return n.coerce(t,e,a,r,i)}var o=r("z");if(void 0!==o&&o.length&&o[0]&&o[0].length){r("x0"),r("y0"),r("dx"),r("dy");var s=r("colormodel");r("zmin",i.colormodel[s].min),r("zmax",i.colormodel[s].max),r("text"),r("hovertext"),r("hovertemplate"),e._length=null}else e.visible=!1}},{"../../lib":728,"./attributes":1054,"./constants":1056}],1058:[function(t,e,r){"use strict";e.exports=function(t,e){return"xVal"in e&&(t.x=e.xVal),"yVal"in e&&(t.y=e.yVal),e.xa&&(t.xaxis=e.xa),e.ya&&(t.yaxis=e.ya),t.color=e.color,t.colormodel=e.trace.colormodel,t}},{}],1059:[function(t,e,r){"use strict";var n=t("../../components/fx"),a=t("../../lib"),i=t("./constants");e.exports=function(t,e,r){var o=t.cd[0],s=o.trace,l=t.xa,c=t.ya;if(!(n.inbox(e-o.x0,e-(o.x0+o.w*s.dx),0)>0||n.inbox(r-o.y0,r-(o.y0+o.h*s.dy),0)>0)){var u=Math.floor((e-o.x0)/s.dx),h=Math.floor(Math.abs(r-o.y0)/s.dy);if(o.z[h][u]){var f,p=o.hi||s.hoverinfo;if(p){var d=p.split("+");-1!==d.indexOf("all")&&(d=["color"]),-1!==d.indexOf("color")&&(f=!0)}var g,m=s.colormodel,v=m.length,y=s._scaler(o.z[h][u]),x=i.colormodel[m].suffix,b=[];(s.hovertemplate||f)&&(b.push("["+[y[0]+x[0],y[1]+x[1],y[2]+x[2]].join(", ")),4===v&&b.push(", "+y[3]+x[3]),b.push("]"),b=b.join(""),t.extraText=m.toUpperCase()+": "+b),Array.isArray(s.hovertext)&&Array.isArray(s.hovertext[h])?g=s.hovertext[h][u]:Array.isArray(s.text)&&Array.isArray(s.text[h])&&(g=s.text[h][u]);var _=c.c2p(o.y0+(h+.5)*s.dy),w=o.x0+(u+.5)*s.dx,T=o.y0+(h+.5)*s.dy,k="["+o.z[h][u].slice(0,s.colormodel.length).join(", ")+"]";return[a.extendFlat(t,{index:[h,u],x0:l.c2p(o.x0+u*s.dx),x1:l.c2p(o.x0+(u+1)*s.dx),y0:_,y1:_,color:y,xVal:w,xLabelVal:w,yVal:T,yLabelVal:T,zLabelVal:k,text:g,hovertemplateLabels:{zLabel:k,colorLabel:b,"color[0]Label":y[0]+x[0],"color[1]Label":y[1]+x[1],"color[2]Label":y[2]+x[2],"color[3]Label":y[3]+x[3]}})]}}}},{"../../components/fx":635,"../../lib":728,"./constants":1056}],1060:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),supplyDefaults:t("./defaults"),calc:t("./calc"),plot:t("./plot"),style:t("./style"),hoverPoints:t("./hover"),eventData:t("./event_data"),moduleType:"trace",name:"image",basePlotModule:t("../../plots/cartesian"),categories:["cartesian","svg","2dMap","noSortingByValue"],animatable:!1,meta:{}}},{"../../plots/cartesian":789,"./attributes":1054,"./calc":1055,"./defaults":1057,"./event_data":1058,"./hover":1059,"./plot":1061,"./style":1062}],1061:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../lib"),i=t("../../constants/xmlns_namespaces"),o=t("./constants");e.exports=function(t,e,r,s){var l=e.xaxis,c=e.yaxis;a.makeTraceGroups(s,r,"im").each((function(t){var e,r,s,u,h,f,p=n.select(this),d=t[0],g=d.trace,m=d.z,v=d.x0,y=d.y0,x=d.w,b=d.h,_=g.dx,w=g.dy;for(f=0;void 0===e&&f<x;)e=l.c2p(v+f*_),f++;for(f=x;void 0===r&&f>0;)r=l.c2p(v+f*_),f--;for(f=0;void 0===u&&f<b;)u=c.c2p(y+f*w),f++;for(f=b;void 0===h&&f>0;)h=c.c2p(y+f*w),f--;r<e&&(s=r,r=e,e=s),h<u&&(s=u,u=h,h=s);e=Math.max(-.5*l._length,e),r=Math.min(1.5*l._length,r),u=Math.max(-.5*c._length,u),h=Math.min(1.5*c._length,h);var T=Math.round(r-e),k=Math.round(h-u);if(T<=0||k<=0){p.selectAll("image").data([]).exit().remove()}else{var A=document.createElement("canvas");A.width=T,A.height=k;var M,S=A.getContext("2d"),E=function(t){return a.constrain(Math.round(l.c2p(v+t*_)-e),0,T)},C=function(t){return a.constrain(Math.round(c.c2p(y+t*w)-u),0,k)},L=o.colormodel[g.colormodel].fmt;for(f=0;f<d.w;f++){var P=E(f),I=E(f+1);if(I!==P&&!isNaN(I)&&!isNaN(P))for(var z=0;z<d.h;z++){var O=C(z),D=C(z+1);D===O||isNaN(D)||isNaN(O)||!m[z][f]||(M=g._scaler(m[z][f]),S.fillStyle=M?g.colormodel+"("+L(M).join(",")+")":"rgba(0,0,0,0)",S.fillRect(P,O,I-P,D-O))}}var R=p.selectAll("image").data(t);R.enter().append("svg:image").attr({xmlns:i.svg,preserveAspectRatio:"none"}),R.attr({height:k,width:T,x:e,y:u,"xlink:href":A.toDataURL("image/png")})}}))}},{"../../constants/xmlns_namespaces":705,"../../lib":728,"./constants":1056,d3:164}],1062:[function(t,e,r){"use strict";var n=t("d3");e.exports=function(t){n.select(t).selectAll(".im image").style("opacity",(function(t){return t.trace.opacity}))}},{d3:164}],1063:[function(t,e,r){"use strict";var n=t("../../lib/extend").extendFlat,a=t("../../lib/extend").extendDeep,i=t("../../plot_api/edit_types").overrideAll,o=t("../../plots/font_attributes"),s=t("../../components/color/attributes"),l=t("../../plots/domain").attributes,c=t("../../plots/cartesian/layout_attributes"),u=t("../../plot_api/plot_template").templatedArray,h=t("../../constants/delta.js"),f=(t("../../constants/docs").FORMAT_LINK,o({editType:"plot",colorEditType:"plot"})),p={color:{valType:"color",editType:"plot"},line:{color:{valType:"color",dflt:s.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"},d={valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},g=u("step",a({},p,{range:d}));e.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:l({name:"indicator",trace:!0,editType:"calc"}),title:{text:{valType:"string",editType:"plot"},align:{valType:"enumerated",values:["left","center","right"],editType:"plot"},font:n({},f,{}),editType:"plot"},number:{valueformat:{valType:"string",dflt:"",editType:"plot"},font:n({},f,{}),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"},increasing:{symbol:{valType:"string",dflt:h.INCREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:h.INCREASING.COLOR,editType:"plot"},editType:"plot"},decreasing:{symbol:{valType:"string",dflt:h.DECREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:h.DECREASING.COLOR,editType:"plot"},editType:"plot"},font:n({},f,{}),editType:"calc"},gauge:{shape:{valType:"enumerated",editType:"plot",dflt:"angular",values:["angular","bullet"]},bar:a({},p,{color:{dflt:"green"}}),bgcolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:s.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:1,editType:"plot"},axis:i({range:d,visible:n({},c.visible,{dflt:!0}),tickmode:c.tickmode,nticks:c.nticks,tick0:c.tick0,dtick:c.dtick,tickvals:c.tickvals,ticktext:c.ticktext,ticks:n({},c.ticks,{dflt:"outside"}),ticklen:c.ticklen,tickwidth:c.tickwidth,tickcolor:c.tickcolor,showticklabels:c.showticklabels,tickfont:o({}),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,showexponent:c.showexponent,editType:"plot"},"plot"),steps:g,threshold:{line:{color:n({},p.line.color,{}),width:n({},p.line.width,{dflt:1}),editType:"plot"},thickness:n({},p.thickness,{dflt:.85}),value:{valType:"number",editType:"calc",dflt:!1},editType:"plot"},editType:"plot"}}},{"../../components/color/attributes":594,"../../constants/delta.js":698,"../../constants/docs":699,"../../lib/extend":719,"../../plot_api/edit_types":759,"../../plot_api/plot_template":766,"../../plots/cartesian/layout_attributes":790,"../../plots/domain":803,"../../plots/font_attributes":804}],1064:[function(t,e,r){"use strict";var n=t("../../plots/plots");r.name="indicator",r.plot=function(t,e,a,i){n.plotBasePlot(r.name,t,e,a,i)},r.clean=function(t,e,a,i){n.cleanBasePlot(r.name,t,e,a,i)}},{"../../plots/plots":839}],1065:[function(t,e,r){"use strict";e.exports={calc:function(t,e){var r=[],n=e.value;"number"!=typeof e._lastValue&&(e._lastValue=e.value);var a=e._lastValue,i=a;return e._hasDelta&&"number"==typeof e.delta.reference&&(i=e.delta.reference),r[0]={y:n,lastY:a,delta:n-i,relativeDelta:(n-i)/i},r}}},{}],1066:[function(t,e,r){"use strict";e.exports={defaultNumberFontSize:80,bulletNumberDomainSize:.25,bulletPadding:.025,innerRadius:.75,valueThickness:.5,titlePadding:5,horizontalPadding:10}},{}],1067:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./attributes"),i=t("../../plots/domain").defaults,o=t("../../plot_api/plot_template"),s=t("../../plots/array_container_defaults"),l=t("./constants.js"),c=t("../../plots/cartesian/tick_value_defaults"),u=t("../../plots/cartesian/tick_mark_defaults"),h=t("../../plots/cartesian/tick_label_defaults");function f(t,e){function r(r,i){return n.coerce(t,e,a.gauge.steps,r,i)}r("color"),r("line.color"),r("line.width"),r("range"),r("thickness")}e.exports={supplyDefaults:function(t,e,r,p){function d(r,i){return n.coerce(t,e,a,r,i)}i(e,p,d),d("mode"),e._hasNumber=-1!==e.mode.indexOf("number"),e._hasDelta=-1!==e.mode.indexOf("delta"),e._hasGauge=-1!==e.mode.indexOf("gauge");var g=d("value");e._range=[0,"number"==typeof g?1.5*g:1];var m,v,y,x,b,_,w=new Array(2);function T(t,e){return n.coerce(y,x,a.gauge,t,e)}function k(t,e){return n.coerce(b,_,a.gauge.axis,t,e)}if(e._hasNumber&&(d("number.valueformat"),d("number.font.color",p.font.color),d("number.font.family",p.font.family),d("number.font.size"),void 0===e.number.font.size&&(e.number.font.size=l.defaultNumberFontSize,w[0]=!0),d("number.prefix"),d("number.suffix"),m=e.number.font.size),e._hasDelta&&(d("delta.font.color",p.font.color),d("delta.font.family",p.font.family),d("delta.font.size"),void 0===e.delta.font.size&&(e.delta.font.size=(e._hasNumber?.5:1)*(m||l.defaultNumberFontSize),w[1]=!0),d("delta.reference",e.value),d("delta.relative"),d("delta.valueformat",e.delta.relative?"2%":""),d("delta.increasing.symbol"),d("delta.increasing.color"),d("delta.decreasing.symbol"),d("delta.decreasing.color"),d("delta.position"),v=e.delta.font.size),e._scaleNumbers=(!e._hasNumber||w[0])&&(!e._hasDelta||w[1])||!1,d("title.font.color",p.font.color),d("title.font.family",p.font.family),d("title.font.size",.25*(m||v||l.defaultNumberFontSize)),d("title.text"),e._hasGauge){(y=t.gauge)||(y={}),x=o.newContainer(e,"gauge"),T("shape"),(e._isBullet="bullet"===e.gauge.shape)||d("title.align","center"),(e._isAngular="angular"===e.gauge.shape)||d("align","center"),T("bgcolor",p.paper_bgcolor),T("borderwidth"),T("bordercolor"),T("bar.color"),T("bar.line.color"),T("bar.line.width"),T("bar.thickness",l.valueThickness*("bullet"===e.gauge.shape?.5:1)),s(y,x,{name:"steps",handleItemDefaults:f}),T("threshold.value"),T("threshold.thickness"),T("threshold.line.width"),T("threshold.line.color"),b={},y&&(b=y.axis||{}),_=o.newContainer(x,"axis"),k("visible"),e._range=k("range",e._range);var A={outerTicks:!0};c(b,_,k,"linear"),h(b,_,k,"linear",A),u(b,_,k,A)}else d("title.align","center"),d("align","center"),e._isAngular=e._isBullet=!1;e._length=null}}},{"../../lib":728,"../../plot_api/plot_template":766,"../../plots/array_container_defaults":772,"../../plots/cartesian/tick_label_defaults":797,"../../plots/cartesian/tick_mark_defaults":798,"../../plots/cartesian/tick_value_defaults":799,"../../plots/domain":803,"./attributes":1063,"./constants.js":1066}],1068:[function(t,e,r){"use strict";e.exports={moduleType:"trace",name:"indicator",basePlotModule:t("./base_plot"),categories:["svg","noOpacity","noHover"],animatable:!0,attributes:t("./attributes"),supplyDefaults:t("./defaults").supplyDefaults,calc:t("./calc").calc,plot:t("./plot"),meta:{}}},{"./attributes":1063,"./base_plot":1064,"./calc":1065,"./defaults":1067,"./plot":1069}],1069:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../lib"),i=a.rad2deg,o=t("../../constants/alignment").MID_SHIFT,s=t("../../components/drawing"),l=t("./constants"),c=t("../../lib/svg_text_utils"),u=t("../../plots/cartesian/axes"),h=t("../../plots/cartesian/axis_defaults"),f=t("../../plots/cartesian/position_defaults"),p=t("../../plots/cartesian/layout_attributes"),d=t("../../components/color"),g={left:"start",center:"middle",right:"end"},m={left:0,center:.5,right:1},v=/[yzafpn\xb5mkMGTPEZY]/;function y(t){return t&&t.duration>0}function x(t){t.each((function(t){d.stroke(n.select(this),t.line.color)})).each((function(t){d.fill(n.select(this),t.color)})).style("stroke-width",(function(t){return t.line.width}))}function b(t,e,r){var n=t._fullLayout,i=a.extendFlat({type:"linear",ticks:"outside",range:r,showline:!0},e),o={type:"linear",_id:"x"+e._id},s={letter:"x",font:n.font,noHover:!0,noTickson:!0};function l(t,e){return a.coerce(i,o,p,t,e)}return h(i,o,l,s,n),f(i,o,l,s),o}function _(t,e){return"translate("+t+","+e+")"}function w(t,e,r){return[Math.min(e/t.width,r/t.height),t,e+"x"+r]}function T(t,e,r,a){var i=document.createElementNS("http://www.w3.org/2000/svg","text"),o=n.select(i);return o.text(t).attr("x",0).attr("y",0).attr("text-anchor",r).attr("data-unformatted",t).call(c.convertToTspans,a).call(s.font,e),s.bBox(o.node())}function k(t,e,r,n,i,o){var s="_cache"+e;t[s]&&t[s].key===i||(t[s]={key:i,value:r});var l=a.aggNums(o,null,[t[s].value,n],2);return t[s].value=l,l}e.exports=function(t,e,r,h){var f,p=t._fullLayout;y(r)&&h&&(f=h()),a.makeTraceGroups(p._indicatorlayer,e,"trace").each((function(e){var h,A,M,S,E,C=e[0].trace,L=n.select(this),P=C._hasGauge,I=C._isAngular,z=C._isBullet,O=C.domain,D={w:p._size.w*(O.x[1]-O.x[0]),h:p._size.h*(O.y[1]-O.y[0]),l:p._size.l+p._size.w*O.x[0],r:p._size.r+p._size.w*(1-O.x[1]),t:p._size.t+p._size.h*(1-O.y[1]),b:p._size.b+p._size.h*O.y[0]},R=D.l+D.w/2,F=D.t+D.h/2,B=Math.min(D.w/2,D.h),N=l.innerRadius*B,j=C.align||"center";if(A=F,P){if(I&&(h=R,A=F+B/2,M=function(t){return function(t,e){var r=Math.sqrt(t.width/2*(t.width/2)+t.height*t.height);return[e/r,t,e]}(t,.9*N)}),z){var V=l.bulletPadding,U=1-l.bulletNumberDomainSize+V;h=D.l+(U+(1-U)*m[j])*D.w,M=function(t){return w(t,(l.bulletNumberDomainSize-V)*D.w,D.h)}}}else h=D.l+m[j]*D.w,M=function(t){return w(t,D.w,D.h)};!function(t,e,r,i){var o,l,h,f=r[0].trace,p=i.numbersX,x=i.numbersY,w=f.align||"center",A=g[w],M=i.transitionOpts,S=i.onComplete,E=a.ensureSingle(e,"g","numbers"),C=[];f._hasNumber&&C.push("number");f._hasDelta&&(C.push("delta"),"left"===f.delta.position&&C.reverse());var L=E.selectAll("text").data(C);function P(e,r,n,a){if(!e.match("s")||n>=0==a>=0||r(n).slice(-1).match(v)||r(a).slice(-1).match(v))return r;var i=e.slice().replace("s","f").replace(/\d+/,(function(t){return parseInt(t)-1})),o=b(t,{tickformat:i});return function(t){return Math.abs(t)<1?u.tickText(o,t).text:r(t)}}L.enter().append("text"),L.attr("text-anchor",(function(){return A})).attr("class",(function(t){return t})).attr("x",null).attr("y",null).attr("dx",null).attr("dy",null),L.exit().remove();var I,z=f.mode+f.align;f._hasDelta&&(I=function(){var e=b(t,{tickformat:f.delta.valueformat},f._range);e.setScale(),u.prepTicks(e);var a=function(t){return u.tickText(e,t).text},i=function(t){return f.delta.relative?t.relativeDelta:t.delta},o=function(t,e){return 0===t||"number"!=typeof t||isNaN(t)?"-":(t>0?f.delta.increasing.symbol:f.delta.decreasing.symbol)+e(t)},h=function(t){return t.delta>=0?f.delta.increasing.color:f.delta.decreasing.color};void 0===f._deltaLastValue&&(f._deltaLastValue=i(r[0]));var p=E.select("text.delta");function g(){p.text(o(i(r[0]),a)).call(d.fill,h(r[0])).call(c.convertToTspans,t)}return p.call(s.font,f.delta.font).call(d.fill,h({delta:f._deltaLastValue})),y(M)?p.transition().duration(M.duration).ease(M.easing).tween("text",(function(){var t=n.select(this),e=i(r[0]),s=f._deltaLastValue,l=P(f.delta.valueformat,a,s,e),c=n.interpolateNumber(s,e);return f._deltaLastValue=e,function(e){t.text(o(c(e),l)),t.call(d.fill,h({delta:c(e)}))}})).each("end",(function(){g(),S&&S()})).each("interrupt",(function(){g(),S&&S()})):g(),l=T(o(i(r[0]),a),f.delta.font,A,t),p}(),z+=f.delta.position+f.delta.font.size+f.delta.font.family+f.delta.valueformat,z+=f.delta.increasing.symbol+f.delta.decreasing.symbol,h=l);f._hasNumber&&(!function(){var e=b(t,{tickformat:f.number.valueformat},f._range);e.setScale(),u.prepTicks(e);var a=function(t){return u.tickText(e,t).text},i=f.number.suffix,l=f.number.prefix,h=E.select("text.number");function p(){var e="number"==typeof r[0].y?l+a(r[0].y)+i:"-";h.text(e).call(s.font,f.number.font).call(c.convertToTspans,t)}y(M)?h.transition().duration(M.duration).ease(M.easing).each("end",(function(){p(),S&&S()})).each("interrupt",(function(){p(),S&&S()})).attrTween("text",(function(){var t=n.select(this),e=n.interpolateNumber(r[0].lastY,r[0].y);f._lastValue=r[0].y;var o=P(f.number.valueformat,a,r[0].lastY,r[0].y);return function(r){t.text(l+o(e(r))+i)}})):p(),o=T(l+a(r[0].y)+i,f.number.font,A,t)}(),z+=f.number.font.size+f.number.font.family+f.number.valueformat+f.number.suffix+f.number.prefix,h=o);if(f._hasDelta&&f._hasNumber){var O,D,R=[(o.left+o.right)/2,(o.top+o.bottom)/2],F=[(l.left+l.right)/2,(l.top+l.bottom)/2],B=.75*f.delta.font.size;"left"===f.delta.position&&(O=k(f,"deltaPos",0,-1*(o.width*m[f.align]+l.width*(1-m[f.align])+B),z,Math.min),D=R[1]-F[1],h={width:o.width+l.width+B,height:Math.max(o.height,l.height),left:l.left+O,right:o.right,top:Math.min(o.top,l.top+D),bottom:Math.max(o.bottom,l.bottom+D)}),"right"===f.delta.position&&(O=k(f,"deltaPos",0,o.width*(1-m[f.align])+l.width*m[f.align]+B,z,Math.max),D=R[1]-F[1],h={width:o.width+l.width+B,height:Math.max(o.height,l.height),left:o.left,right:l.right+O,top:Math.min(o.top,l.top+D),bottom:Math.max(o.bottom,l.bottom+D)}),"bottom"===f.delta.position&&(O=null,D=l.height,h={width:Math.max(o.width,l.width),height:o.height+l.height,left:Math.min(o.left,l.left),right:Math.max(o.right,l.right),top:o.bottom-o.height,bottom:o.bottom+l.height}),"top"===f.delta.position&&(O=null,D=o.top,h={width:Math.max(o.width,l.width),height:o.height+l.height,left:Math.min(o.left,l.left),right:Math.max(o.right,l.right),top:o.bottom-o.height-l.height,bottom:o.bottom}),I.attr({dx:O,dy:D})}(f._hasNumber||f._hasDelta)&&E.attr("transform",(function(){var t=i.numbersScaler(h);z+=t[2];var e,r=k(f,"numbersScale",1,t[0],z,Math.min);f._scaleNumbers||(r=1),e=f._isAngular?x-r*h.bottom:x-r*(h.top+h.bottom)/2,f._numbersTop=r*h.top+e;var n=h[w];"center"===w&&(n=(h.left+h.right)/2);var a=p-r*n;return _(a=k(f,"numbersTranslate",0,a,z,Math.max),e)+" scale("+r+")"}))}(t,L,e,{numbersX:h,numbersY:A,numbersScaler:M,transitionOpts:r,onComplete:f}),P&&(S={range:C.gauge.axis.range,color:C.gauge.bgcolor,line:{color:C.gauge.bordercolor,width:0},thickness:1},E={range:C.gauge.axis.range,color:"rgba(0, 0, 0, 0)",line:{color:C.gauge.bordercolor,width:C.gauge.borderwidth},thickness:1});var q=L.selectAll("g.angular").data(I?e:[]);q.exit().remove();var H=L.selectAll("g.angularaxis").data(I?e:[]);H.exit().remove(),I&&function(t,e,r,a){var s,l,c,h,f=r[0].trace,p=a.size,d=a.radius,g=a.innerRadius,m=a.gaugeBg,v=a.gaugeOutline,w=[p.l+p.w/2,p.t+p.h/2+d/2],T=a.gauge,k=a.layer,A=a.transitionOpts,M=a.onComplete,S=Math.PI/2;function E(t){var e=f.gauge.axis.range[0],r=(t-e)/(f.gauge.axis.range[1]-e)*Math.PI-S;return r<-S?-S:r>S?S:r}function C(t){return n.svg.arc().innerRadius((g+d)/2-t/2*(d-g)).outerRadius((g+d)/2+t/2*(d-g)).startAngle(-S)}function L(t){t.attr("d",(function(t){return C(t.thickness).startAngle(E(t.range[0])).endAngle(E(t.range[1]))()}))}T.enter().append("g").classed("angular",!0),T.attr("transform",_(w[0],w[1])),k.enter().append("g").classed("angularaxis",!0).classed("crisp",!0),k.selectAll("g.xangularaxistick,path,text").remove(),(s=b(t,f.gauge.axis)).type="linear",s.range=f.gauge.axis.range,s._id="xangularaxis",s.setScale();var P=function(t){return(s.range[0]-t.x)/(s.range[1]-s.range[0])*Math.PI+Math.PI},I={},z=u.makeLabelFns(s,0).labelStandoff;I.xFn=function(t){var e=P(t);return Math.cos(e)*z},I.yFn=function(t){var e=P(t),r=Math.sin(e)>0?.2:1;return-Math.sin(e)*(z+t.fontSize*r)+Math.abs(Math.cos(e))*(t.fontSize*o)},I.anchorFn=function(t){var e=P(t),r=Math.cos(e);return Math.abs(r)<.1?"middle":r>0?"start":"end"},I.heightFn=function(t,e,r){var n=P(t);return-.5*(1+Math.sin(n))*r};var O=function(t){return _(w[0]+d*Math.cos(t),w[1]-d*Math.sin(t))};c=function(t){return O(P(t))};if(l=u.calcTicks(s),h=u.getTickSigns(s)[2],s.visible){h="inside"===s.ticks?-1:1;var D=(s.linewidth||1)/2;u.drawTicks(t,s,{vals:l,layer:k,path:"M"+h*D+",0h"+h*s.ticklen,transFn:function(t){var e=P(t);return O(e)+"rotate("+-i(e)+")"}}),u.drawLabels(t,s,{vals:l,layer:k,transFn:c,labelFns:I})}var R=[m].concat(f.gauge.steps),F=T.selectAll("g.bg-arc").data(R);F.enter().append("g").classed("bg-arc",!0).append("path"),F.select("path").call(L).call(x),F.exit().remove();var B=C(f.gauge.bar.thickness),N=T.selectAll("g.value-arc").data([f.gauge.bar]);N.enter().append("g").classed("value-arc",!0).append("path");var j=N.select("path");y(A)?(j.transition().duration(A.duration).ease(A.easing).each("end",(function(){M&&M()})).each("interrupt",(function(){M&&M()})).attrTween("d",(V=B,U=E(r[0].lastY),q=E(r[0].y),function(){var t=n.interpolate(U,q);return function(e){return V.endAngle(t(e))()}})),f._lastValue=r[0].y):j.attr("d","number"==typeof r[0].y?B.endAngle(E(r[0].y)):"M0,0Z");var V,U,q;j.call(x),N.exit().remove(),R=[];var H=f.gauge.threshold.value;H&&R.push({range:[H,H],color:f.gauge.threshold.color,line:{color:f.gauge.threshold.line.color,width:f.gauge.threshold.line.width},thickness:f.gauge.threshold.thickness});var G=T.selectAll("g.threshold-arc").data(R);G.enter().append("g").classed("threshold-arc",!0).append("path"),G.select("path").call(L).call(x),G.exit().remove();var Y=T.selectAll("g.gauge-outline").data([v]);Y.enter().append("g").classed("gauge-outline",!0).append("path"),Y.select("path").call(L).call(x),Y.exit().remove()}(t,0,e,{radius:B,innerRadius:N,gauge:q,layer:H,size:D,gaugeBg:S,gaugeOutline:E,transitionOpts:r,onComplete:f});var G=L.selectAll("g.bullet").data(z?e:[]);G.exit().remove();var Y=L.selectAll("g.bulletaxis").data(z?e:[]);Y.exit().remove(),z&&function(t,e,r,n){var a,i,o,s,c,h=r[0].trace,f=n.gauge,p=n.layer,g=n.gaugeBg,m=n.gaugeOutline,v=n.size,_=h.domain,w=n.transitionOpts,T=n.onComplete;f.enter().append("g").classed("bullet",!0),f.attr("transform","translate("+v.l+", "+v.t+")"),p.enter().append("g").classed("bulletaxis",!0).classed("crisp",!0),p.selectAll("g.xbulletaxistick,path,text").remove();var k=v.h,A=h.gauge.bar.thickness*k,M=_.x[0],S=_.x[0]+(_.x[1]-_.x[0])*(h._hasNumber||h._hasDelta?1-l.bulletNumberDomainSize:1);(a=b(t,h.gauge.axis))._id="xbulletaxis",a.domain=[M,S],a.setScale(),i=u.calcTicks(a),o=u.makeTransFn(a),s=u.getTickSigns(a)[2],c=v.t+v.h,a.visible&&(u.drawTicks(t,a,{vals:"inside"===a.ticks?u.clipEnds(a,i):i,layer:p,path:u.makeTickPath(a,c,s),transFn:o}),u.drawLabels(t,a,{vals:i,layer:p,transFn:o,labelFns:u.makeLabelFns(a,c)}));function E(t){t.attr("width",(function(t){return Math.max(0,a.c2p(t.range[1])-a.c2p(t.range[0]))})).attr("x",(function(t){return a.c2p(t.range[0])})).attr("y",(function(t){return.5*(1-t.thickness)*k})).attr("height",(function(t){return t.thickness*k}))}var C=[g].concat(h.gauge.steps),L=f.selectAll("g.bg-bullet").data(C);L.enter().append("g").classed("bg-bullet",!0).append("rect"),L.select("rect").call(E).call(x),L.exit().remove();var P=f.selectAll("g.value-bullet").data([h.gauge.bar]);P.enter().append("g").classed("value-bullet",!0).append("rect"),P.select("rect").attr("height",A).attr("y",(k-A)/2).call(x),y(w)?P.select("rect").transition().duration(w.duration).ease(w.easing).each("end",(function(){T&&T()})).each("interrupt",(function(){T&&T()})).attr("width",Math.max(0,a.c2p(Math.min(h.gauge.axis.range[1],r[0].y)))):P.select("rect").attr("width","number"==typeof r[0].y?Math.max(0,a.c2p(Math.min(h.gauge.axis.range[1],r[0].y))):0);P.exit().remove();var I=r.filter((function(){return h.gauge.threshold.value})),z=f.selectAll("g.threshold-bullet").data(I);z.enter().append("g").classed("threshold-bullet",!0).append("line"),z.select("line").attr("x1",a.c2p(h.gauge.threshold.value)).attr("x2",a.c2p(h.gauge.threshold.value)).attr("y1",(1-h.gauge.threshold.thickness)/2*k).attr("y2",(1-(1-h.gauge.threshold.thickness)/2)*k).call(d.stroke,h.gauge.threshold.line.color).style("stroke-width",h.gauge.threshold.line.width),z.exit().remove();var O=f.selectAll("g.gauge-outline").data([m]);O.enter().append("g").classed("gauge-outline",!0).append("rect"),O.select("rect").call(E).call(x),O.exit().remove()}(t,0,e,{gauge:G,layer:Y,size:D,gaugeBg:S,gaugeOutline:E,transitionOpts:r,onComplete:f});var W=L.selectAll("text.title").data(e);W.exit().remove(),W.enter().append("text").classed("title",!0),W.attr("text-anchor",(function(){return z?g.right:g[C.title.align]})).text(C.title.text).call(s.font,C.title.font).call(c.convertToTspans,t),W.attr("transform",(function(){var t,e=D.l+D.w*m[C.title.align],r=l.titlePadding,n=s.bBox(W.node());if(P){if(I)if(C.gauge.axis.visible)t=s.bBox(H.node()).top-r-n.bottom;else t=D.t+D.h/2-B/2-n.bottom-r;z&&(t=A-(n.top+n.bottom)/2,e=D.l-l.bulletPadding*D.w)}else t=C._numbersTop-r-n.bottom;return _(e,t)}))}))}},{"../../components/color":595,"../../components/drawing":617,"../../constants/alignment":697,"../../lib":728,"../../lib/svg_text_utils":752,"../../plots/cartesian/axes":776,"../../plots/cartesian/axis_defaults":778,"../../plots/cartesian/layout_attributes":790,"../../plots/cartesian/position_defaults":793,"./constants":1066,d3:164}],1070:[function(t,e,r){"use strict";var n=t("../../components/colorscale/attributes"),a=t("../../plots/template_attributes").hovertemplateAttrs,i=t("../mesh3d/attributes"),o=t("../../plots/attributes"),s=t("../../lib/extend").extendFlat,l=t("../../plot_api/edit_types").overrideAll;var c=e.exports=l(s({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:{show:{valType:"boolean",dflt:!1},locations:{valType:"data_array",dflt:[]},fill:{valType:"number",min:0,max:1,dflt:1}},y:{show:{valType:"boolean",dflt:!1},locations:{valType:"data_array",dflt:[]},fill:{valType:"number",min:0,max:1,dflt:1}},z:{show:{valType:"boolean",dflt:!1},locations:{valType:"data_array",dflt:[]},fill:{valType:"number",min:0,max:1,dflt:1}}},caps:{x:{show:{valType:"boolean",dflt:!0},fill:{valType:"number",min:0,max:1,dflt:1}},y:{show:{valType:"boolean",dflt:!0},fill:{valType:"number",min:0,max:1,dflt:1}},z:{show:{valType:"boolean",dflt:!0},fill:{valType:"number",min:0,max:1,dflt:1}}},text:{valType:"string",dflt:"",arrayOk:!0},hovertext:{valType:"string",dflt:"",arrayOk:!0},hovertemplate:a(),showlegend:s({},o.showlegend,{dflt:!1})},n("",{colorAttr:"value",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:i.opacity,lightposition:i.lightposition,lighting:i.lighting,flatshading:i.flatshading,contour:i.contour,hoverinfo:s({},o.hoverinfo)}),"calc","nested");c.flatshading.dflt=!0,c.lighting.facenormalsepsilon.dflt=0,c.x.editType=c.y.editType=c.z.editType=c.value.editType="calc+clearAxisTypes",c.transforms=void 0},{"../../components/colorscale/attributes":602,"../../lib/extend":719,"../../plot_api/edit_types":759,"../../plots/attributes":773,"../../plots/template_attributes":854,"../mesh3d/attributes":1075}],1071:[function(t,e,r){"use strict";var n=t("../../components/colorscale/calc"),a=t("../streamtube/calc").processGrid,i=t("../streamtube/calc").filter;e.exports=function(t,e){e._len=Math.min(e.x.length,e.y.length,e.z.length,e.value.length),e._x=i(e.x,e._len),e._y=i(e.y,e._len),e._z=i(e.z,e._len),e._value=i(e.value,e._len);var r=a(e);e._gridFill=r.fill,e._Xs=r.Xs,e._Ys=r.Ys,e._Zs=r.Zs,e._len=r.len;for(var o=1/0,s=-1/0,l=0;l<e._len;l++){var c=e._value[l];o=Math.min(o,c),s=Math.max(s,c)}e._minValues=o,e._maxValues=s,e._vMin=void 0===e.isomin||null===e.isomin?o:e.isomin,e._vMax=void 0===e.isomax||null===e.isomin?s:e.isomax,n(t,e,{vals:[e._vMin,e._vMax],containerStr:"",cLetter:"c"})}},{"../../components/colorscale/calc":603,"../streamtube/calc":1241}],1072:[function(t,e,r){"use strict";var n=t("gl-mesh3d"),a=t("../../lib/gl_format_color").parseColorScale,i=t("../../lib/str2rgbarray"),o=t("../../components/colorscale").extractOpts,s=t("../../plots/gl3d/zip3"),l=function(t,e){for(var r=e.length-1;r>0;r--){var n=Math.min(e[r],e[r-1]),a=Math.max(e[r],e[r-1]);if(a>n&&n<t&&t<=a)return{id:r,distRatio:(a-t)/(a-n)}}return{id:0,distRatio:0}};function c(t,e,r){this.scene=t,this.uid=r,this.mesh=e,this.name="",this.data=null,this.showContour=!1}var u=c.prototype;u.handlePick=function(t){if(t.object===this.mesh){var e=t.data.index,r=this.data._meshX[e],n=this.data._meshY[e],a=this.data._meshZ[e],i=this.data._Ys.length,o=this.data._Zs.length,s=l(r,this.data._Xs).id,c=l(n,this.data._Ys).id,u=l(a,this.data._Zs).id,h=t.index=u+o*c+o*i*s;t.traceCoordinate=[this.data._meshX[h],this.data._meshY[h],this.data._meshZ[h],this.data._value[h]];var f=this.data.hovertext||this.data.text;return Array.isArray(f)&&void 0!==f[h]?t.textLabel=f[h]:f&&(t.textLabel=f),!0}},u.update=function(t){var e=this.scene,r=e.fullSceneLayout;function n(t,e,r,n){return e.map((function(e){return t.d2l(e,0,n)*r}))}this.data=f(t);var l={positions:s(n(r.xaxis,t._meshX,e.dataScale[0],t.xcalendar),n(r.yaxis,t._meshY,e.dataScale[1],t.ycalendar),n(r.zaxis,t._meshZ,e.dataScale[2],t.zcalendar)),cells:s(t._meshI,t._meshJ,t._meshK),lightPosition:[t.lightposition.x,t.lightposition.y,t.lightposition.z],ambient:t.lighting.ambient,diffuse:t.lighting.diffuse,specular:t.lighting.specular,roughness:t.lighting.roughness,fresnel:t.lighting.fresnel,vertexNormalsEpsilon:t.lighting.vertexnormalsepsilon,faceNormalsEpsilon:t.lighting.facenormalsepsilon,opacity:t.opacity,contourEnable:t.contour.show,contourColor:i(t.contour.color).slice(0,3),contourWidth:t.contour.width,useFacetNormals:t.flatshading},c=o(t);l.vertexIntensity=t._meshIntensity,l.vertexIntensityBounds=[c.min,c.max],l.colormap=a(t),this.mesh.update(l)},u.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};var h=["xyz","xzy","yxz","yzx","zxy","zyx"];function f(t){t._meshI=[],t._meshJ=[],t._meshK=[];var e,r,n,a,i,o,s,c=t.surface.show,u=t.spaceframe.show,f=t.surface.fill,p=t.spaceframe.fill,d=!1,g=!1,m=0,v=t._Xs,y=t._Ys,x=t._Zs,b=v.length,_=y.length,w=x.length,T=h.indexOf(t._gridFill.replace(/-/g,"").replace(/\+/g,"")),k=function(t,e,r){switch(T){case 5:return r+w*e+w*_*t;case 4:return r+w*t+w*b*e;case 3:return e+_*r+_*w*t;case 2:return e+_*t+_*b*r;case 1:return t+b*r+b*w*e;default:return t+b*e+b*_*r}},A=t._minValues,M=t._maxValues,S=t._vMin,E=t._vMax;function C(t,e,s){for(var l=o.length,c=r;c<l;c++)if(t===n[c]&&e===a[c]&&s===i[c])return c;return-1}function L(){r=e}function P(){n=[],a=[],i=[],o=[],e=0,L()}function I(t,r,s,l){return n.push(t),a.push(r),i.push(s),o.push(l),++e-1}function z(t,e,r){for(var n=[],a=0;a<t.length;a++)n[a]=t[a]*(1-r)+r*e[a];return n}function O(t){s=t}function D(t,e){return"all"===t||null===t||t.indexOf(e)>-1}function R(t,e){return null===t?e:t}function F(e,r,n){L();var a,i,o,l=[r],c=[n];if(s>=1)l=[r],c=[n];else if(s>0){var u=function(t,e){var r=t[0],n=t[1],a=t[2],i=function(t,e,r){for(var n=[],a=0;a<t.length;a++)n[a]=(t[a]+e[a]+r[a])/3;return n}(r,n,a),o=Math.sqrt(1-s),l=z(i,r,o),c=z(i,n,o),u=z(i,a,o),h=e[0],f=e[1],p=e[2];return{xyzv:[[r,n,c],[c,l,r],[n,a,u],[u,c,n],[a,r,l],[l,u,a]],abc:[[h,f,-1],[-1,-1,h],[f,p,-1],[-1,-1,f],[p,h,-1],[-1,-1,p]]}}(r,n);l=u.xyzv,c=u.abc}for(var h=0;h<l.length;h++){r=l[h],n=c[h];for(var f=[],p=0;p<3;p++){var d=r[p][0],g=r[p][1],v=r[p][2],y=r[p][3],x=n[p]>-1?n[p]:C(d,g,v);f[p]=x>-1?x:I(d,g,v,R(e,y))}a=f[0],i=f[1],o=f[2],t._meshI.push(a),t._meshJ.push(i),t._meshK.push(o),++m}}function B(t,e,r,n){var a=t[3];a<r&&(a=r),a>n&&(a=n);for(var i=(t[3]-a)/(t[3]-e[3]+1e-9),o=[],s=0;s<4;s++)o[s]=(1-i)*t[s]+i*e[s];return o}function N(t,e,r){return t>=e&&t<=r}function j(t){var e=.001*(E-S);return t>=S-e&&t<=E+e}function V(e){for(var r=[],n=0;n<4;n++){var a=e[n];r.push([t._x[a],t._y[a],t._z[a],t._value[a]])}return r}function U(t,e,r,n,a,i){i||(i=1),r=[-1,-1,-1];var o=!1,s=[N(e[0][3],n,a),N(e[1][3],n,a),N(e[2][3],n,a)];if(!s[0]&&!s[1]&&!s[2])return!1;var l=function(t,e,r){return j(e[0][3])&&j(e[1][3])&&j(e[2][3])?(F(t,e,r),!0):i<3&&U(t,e,r,S,E,++i)};if(s[0]&&s[1]&&s[2])return l(t,e,r)||o;var c=!1;return[[0,1,2],[2,0,1],[1,2,0]].forEach((function(i){if(s[i[0]]&&s[i[1]]&&!s[i[2]]){var u=e[i[0]],h=e[i[1]],f=e[i[2]],p=B(f,u,n,a),d=B(f,h,n,a);o=l(t,[d,p,u],[-1,-1,r[i[0]]])||o,o=l(t,[u,h,d],[r[i[0]],r[i[1]],-1])||o,c=!0}})),c||[[0,1,2],[1,2,0],[2,0,1]].forEach((function(i){if(s[i[0]]&&!s[i[1]]&&!s[i[2]]){var u=e[i[0]],h=e[i[1]],f=e[i[2]],p=B(h,u,n,a),d=B(f,u,n,a);o=l(t,[d,p,u],[-1,-1,r[i[0]]])||o,c=!0}})),o}function q(t,e,r,n){var a=!1,i=V(e),o=[N(i[0][3],r,n),N(i[1][3],r,n),N(i[2][3],r,n),N(i[3][3],r,n)];if(!(o[0]||o[1]||o[2]||o[3]))return a;if(o[0]&&o[1]&&o[2]&&o[3])return g&&(a=function(t,e,r){var n=function(n,a,i){F(t,[e[n],e[a],e[i]],[r[n],r[a],r[i]])};n(0,1,2),n(3,0,1),n(2,3,0),n(1,2,3)}(t,i,e)||a),a;var s=!1;return[[0,1,2,3],[3,0,1,2],[2,3,0,1],[1,2,3,0]].forEach((function(l){if(o[l[0]]&&o[l[1]]&&o[l[2]]&&!o[l[3]]){var c=i[l[0]],u=i[l[1]],h=i[l[2]],f=i[l[3]];if(g)a=F(t,[c,u,h],[e[l[0]],e[l[1]],e[l[2]]])||a;else{var p=B(f,c,r,n),d=B(f,u,r,n),m=B(f,h,r,n);a=F(null,[p,d,m],[-1,-1,-1])||a}s=!0}})),s?a:([[0,1,2,3],[1,2,3,0],[2,3,0,1],[3,0,1,2],[0,2,3,1],[1,3,2,0]].forEach((function(l){if(o[l[0]]&&o[l[1]]&&!o[l[2]]&&!o[l[3]]){var c=i[l[0]],u=i[l[1]],h=i[l[2]],f=i[l[3]],p=B(h,c,r,n),d=B(h,u,r,n),m=B(f,u,r,n),v=B(f,c,r,n);g?(a=F(t,[c,v,p],[e[l[0]],-1,-1])||a,a=F(t,[u,d,m],[e[l[1]],-1,-1])||a):a=function(t,e,r){var n=function(n,a,i){F(t,[e[n],e[a],e[i]],[r[n],r[a],r[i]])};n(0,1,2),n(2,3,0)}(null,[p,d,m,v],[-1,-1,-1,-1])||a,s=!0}})),s||[[0,1,2,3],[1,2,3,0],[2,3,0,1],[3,0,1,2]].forEach((function(l){if(o[l[0]]&&!o[l[1]]&&!o[l[2]]&&!o[l[3]]){var c=i[l[0]],u=i[l[1]],h=i[l[2]],f=i[l[3]],p=B(u,c,r,n),d=B(h,c,r,n),m=B(f,c,r,n);g?(a=F(t,[c,p,d],[e[l[0]],-1,-1])||a,a=F(t,[c,d,m],[e[l[0]],-1,-1])||a,a=F(t,[c,m,p],[e[l[0]],-1,-1])||a):a=F(null,[p,d,m],[-1,-1,-1])||a,s=!0}})),a)}function H(t,e,r,n,a,i,o,s,l,c,u){var h=!1;return d&&(D(t,"A")&&(h=q(null,[e,r,n,i],c,u)||h),D(t,"B")&&(h=q(null,[r,n,a,l],c,u)||h),D(t,"C")&&(h=q(null,[r,i,o,l],c,u)||h),D(t,"D")&&(h=q(null,[n,i,s,l],c,u)||h),D(t,"E")&&(h=q(null,[r,n,i,l],c,u)||h)),g&&(h=q(t,[r,n,i,l],c,u)||h),h}function G(t,e,r,n,a,i,o,s){return[!0===s[0]||U(t,V([e,r,n]),[e,r,n],i,o),!0===s[1]||U(t,V([n,a,e]),[n,a,e],i,o)]}function Y(t,e,r,n,a,i,o,s,l){return s?G(t,e,r,a,n,i,o,l):G(t,r,a,n,e,i,o,l)}function W(t,e,r,n,a,i,o){var s,l,c,u,h=!1,f=function(){h=U(t,[s,l,c],[-1,-1,-1],a,i)||h,h=U(t,[c,u,s],[-1,-1,-1],a,i)||h},p=o[0],d=o[1],g=o[2];return p&&(s=z(V([k(e,r-0,n-0)])[0],V([k(e-1,r-0,n-0)])[0],p),l=z(V([k(e,r-0,n-1)])[0],V([k(e-1,r-0,n-1)])[0],p),c=z(V([k(e,r-1,n-1)])[0],V([k(e-1,r-1,n-1)])[0],p),u=z(V([k(e,r-1,n-0)])[0],V([k(e-1,r-1,n-0)])[0],p),f()),d&&(s=z(V([k(e-0,r,n-0)])[0],V([k(e-0,r-1,n-0)])[0],d),l=z(V([k(e-0,r,n-1)])[0],V([k(e-0,r-1,n-1)])[0],d),c=z(V([k(e-1,r,n-1)])[0],V([k(e-1,r-1,n-1)])[0],d),u=z(V([k(e-1,r,n-0)])[0],V([k(e-1,r-1,n-0)])[0],d),f()),g&&(s=z(V([k(e-0,r-0,n)])[0],V([k(e-0,r-0,n-1)])[0],g),l=z(V([k(e-0,r-1,n)])[0],V([k(e-0,r-1,n-1)])[0],g),c=z(V([k(e-1,r-1,n)])[0],V([k(e-1,r-1,n-1)])[0],g),u=z(V([k(e-1,r-0,n)])[0],V([k(e-1,r-0,n-1)])[0],g),f()),h}function Z(t,e,r,n,a,i,o,s,l,c,u,h){var f=t;return h?(d&&"even"===t&&(f=null),H(f,e,r,n,a,i,o,s,l,c,u)):(d&&"odd"===t&&(f=null),H(f,l,s,o,i,a,n,r,e,c,u))}function X(t,e,r,n,a){for(var i=[],o=0,s=0;s<e.length;s++)for(var l=e[s],c=1;c<w;c++)for(var u=1;u<_;u++)i.push(Y(t,k(l,u-1,c-1),k(l,u-1,c),k(l,u,c-1),k(l,u,c),r,n,(l+u+c)%2,a&&a[o]?a[o]:[])),o++;return i}function J(t,e,r,n,a){for(var i=[],o=0,s=0;s<e.length;s++)for(var l=e[s],c=1;c<b;c++)for(var u=1;u<w;u++)i.push(Y(t,k(c-1,l,u-1),k(c,l,u-1),k(c-1,l,u),k(c,l,u),r,n,(c+l+u)%2,a&&a[o]?a[o]:[])),o++;return i}function K(t,e,r,n,a){for(var i=[],o=0,s=0;s<e.length;s++)for(var l=e[s],c=1;c<_;c++)for(var u=1;u<b;u++)i.push(Y(t,k(u-1,c-1,l),k(u-1,c,l),k(u,c-1,l),k(u,c,l),r,n,(u+c+l)%2,a&&a[o]?a[o]:[])),o++;return i}function Q(t,e,r){for(var n=1;n<w;n++)for(var a=1;a<_;a++)for(var i=1;i<b;i++)Z(t,k(i-1,a-1,n-1),k(i-1,a-1,n),k(i-1,a,n-1),k(i-1,a,n),k(i,a-1,n-1),k(i,a-1,n),k(i,a,n-1),k(i,a,n),e,r,(i+a+n)%2)}function $(t,e,r){d=!0,Q(t,e,r),d=!1}function tt(t,e,r,n,a,i){for(var o=[],s=0,l=0;l<e.length;l++)for(var c=e[l],u=1;u<w;u++)for(var h=1;h<_;h++)o.push(W(t,c,h,u,r,n,a[l],i&&i[s]&&i[s])),s++;return o}function et(t,e,r,n,a,i){for(var o=[],s=0,l=0;l<e.length;l++)for(var c=e[l],u=1;u<b;u++)for(var h=1;h<w;h++)o.push(W(t,u,c,h,r,n,a[l],i&&i[s]&&i[s])),s++;return o}function rt(t,e,r,n,a,i){for(var o=[],s=0,l=0;l<e.length;l++)for(var c=e[l],u=1;u<_;u++)for(var h=1;h<b;h++)o.push(W(t,h,u,c,r,n,a[l],i&&i[s]&&i[s])),s++;return o}function nt(t,e){for(var r=[],n=t;n<e;n++)r.push(n);return r}return function(){if(P(),function(){for(var e=0;e<b;e++)for(var r=0;r<_;r++)for(var n=0;n<w;n++){var a=k(e,r,n);I(t._x[a],t._y[a],t._z[a],t._value[a])}}(),u&&p&&(O(p),g=!0,Q(null,S,E),g=!1),c&&f){O(f);for(var e=t.surface.pattern,r=t.surface.count,s=0;s<r;s++){var h=1===r?.5:s/(r-1),d=(1-h)*S+h*E,T=Math.abs(d-A)>Math.abs(d-M)?[A,d]:[d,M];$(e,T[0],T[1])}}var C=[[Math.min(S,M),Math.max(S,M)],[Math.min(A,E),Math.max(A,E)]];["x","y","z"].forEach((function(e){for(var r=[],n=0;n<C.length;n++){var a=0,i=C[n][0],o=C[n][1],s=t.slices[e];if(s.show&&s.fill){O(s.fill);var c=[],u=[],h=[];if(s.locations.length)for(var f=0;f<s.locations.length;f++){var p=l(s.locations[f],"x"===e?v:"y"===e?y:x);0===p.distRatio?c.push(p.id):p.id>0&&(u.push(p.id),"x"===e?h.push([p.distRatio,0,0]):"y"===e?h.push([0,p.distRatio,0]):h.push([0,0,p.distRatio]))}else c=nt(1,"x"===e?b-1:"y"===e?_-1:w-1);u.length>0&&(r[a]="x"===e?tt(null,u,i,o,h,r[a]):"y"===e?et(null,u,i,o,h,r[a]):rt(null,u,i,o,h,r[a]),a++),c.length>0&&(r[a]="x"===e?X(null,c,i,o,r[a]):"y"===e?J(null,c,i,o,r[a]):K(null,c,i,o,r[a]),a++)}var d=t.caps[e];d.show&&d.fill&&(O(d.fill),r[a]="x"===e?X(null,[0,b-1],i,o,r[a]):"y"===e?J(null,[0,_-1],i,o,r[a]):K(null,[0,w-1],i,o,r[a]),a++)}})),0===m&&P(),t._meshX=n,t._meshY=a,t._meshZ=i,t._meshIntensity=o,t._Xs=v,t._Ys=y,t._Zs=x}(),t}e.exports={findNearestOnAxis:l,generateIsoMeshes:f,createIsosurfaceTrace:function(t,e){var r=t.glplot.gl,a=n({gl:r}),i=new c(t,a,e.uid);return a._trace=i,i.update(e),t.glplot.add(a),i}}},{"../../components/colorscale":607,"../../lib/gl_format_color":725,"../../lib/str2rgbarray":751,"../../plots/gl3d/zip3":829,"gl-mesh3d":287}],1073:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../registry"),i=t("./attributes"),o=t("../../components/colorscale/defaults");function s(t,e,r,n,i){var s=i("isomin"),l=i("isomax");null!=l&&null!=s&&s>l&&(e.isomin=null,e.isomax=null);var c=i("x"),u=i("y"),h=i("z"),f=i("value");c&&c.length&&u&&u.length&&h&&h.length&&f&&f.length?(a.getComponentMethod("calendars","handleTraceDefaults")(t,e,["x","y","z"],n),["x","y","z"].forEach((function(t){var e="caps."+t;i(e+".show")&&i(e+".fill");var r="slices."+t;i(r+".show")&&(i(r+".fill"),i(r+".locations"))})),i("spaceframe.show")&&i("spaceframe.fill"),i("surface.show")&&(i("surface.count"),i("surface.fill"),i("surface.pattern")),i("contour.show")&&(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(t){i(t)})),o(t,e,n,i,{prefix:"",cLetter:"c"}),e._length=null):e.visible=!1}e.exports={supplyDefaults:function(t,e,r,a){s(t,e,r,a,(function(r,a){return n.coerce(t,e,i,r,a)}))},supplyIsoDefaults:s}},{"../../components/colorscale/defaults":605,"../../lib":728,"../../registry":859,"./attributes":1070}],1074:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),supplyDefaults:t("./defaults").supplyDefaults,calc:t("./calc"),colorbar:{min:"cmin",max:"cmax"},plot:t("./convert").createIsosurfaceTrace,moduleType:"trace",name:"isosurface",basePlotModule:t("../../plots/gl3d"),categories:["gl3d","showLegend"],meta:{}}},{"../../plots/gl3d":818,"./attributes":1070,"./calc":1071,"./convert":1072,"./defaults":1073}],1075:[function(t,e,r){"use strict";var n=t("../../components/colorscale/attributes"),a=t("../../plots/template_attributes").hovertemplateAttrs,i=t("../surface/attributes"),o=t("../../plots/attributes"),s=t("../../lib/extend").extendFlat;e.exports=s({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:a({editType:"calc"}),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"},transforms:void 0},n("",{colorAttr:"intensity",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:i.opacity,flatshading:{valType:"boolean",dflt:!1,editType:"calc"},contour:{show:s({},i.contours.x.show,{}),color:i.contours.x.color,width:i.contours.x.width,editType:"calc"},lightposition:{x:s({},i.lightposition.x,{dflt:1e5}),y:s({},i.lightposition.y,{dflt:1e5}),z:s({},i.lightposition.z,{dflt:0}),editType:"calc"},lighting:s({vertexnormalsepsilon:{valType:"number",min:0,max:1,dflt:1e-12,editType:"calc"},facenormalsepsilon:{valType:"number",min:0,max:1,dflt:1e-6,editType:"calc"},editType:"calc"},i.lighting),hoverinfo:s({},o.hoverinfo,{editType:"calc"}),showlegend:s({},o.showlegend,{dflt:!1})})},{"../../components/colorscale/attributes":602,"../../lib/extend":719,"../../plots/attributes":773,"../../plots/template_attributes":854,"../surface/attributes":1257}],1076:[function(t,e,r){"use strict";var n=t("../../components/colorscale/calc");e.exports=function(t,e){e.intensity&&n(t,e,{vals:e.intensity,containerStr:"",cLetter:"c"})}},{"../../components/colorscale/calc":603}],1077:[function(t,e,r){"use strict";var n=t("gl-mesh3d"),a=t("delaunay-triangulate"),i=t("alpha-shape"),o=t("convex-hull"),s=t("../../lib/gl_format_color").parseColorScale,l=t("../../lib/str2rgbarray"),c=t("../../components/colorscale").extractOpts,u=t("../../plots/gl3d/zip3");function h(t,e,r){this.scene=t,this.uid=r,this.mesh=e,this.name="",this.color="#fff",this.data=null,this.showContour=!1}var f=h.prototype;function p(t){for(var e=[],r=t.length,n=0;n<r;n++)e[n]=l(t[n]);return e}function d(t,e,r,n){for(var a=[],i=e.length,o=0;o<i;o++)a[o]=t.d2l(e[o],0,n)*r;return a}function g(t){for(var e=[],r=t.length,n=0;n<r;n++)e[n]=Math.round(t[n]);return e}function m(t,e){for(var r=t.length,n=0;n<r;n++)if(t[n]<=-.5||t[n]>=e-.5)return!1;return!0}f.handlePick=function(t){if(t.object===this.mesh){var e=t.index=t.data.index;t.data._cellCenter?t.traceCoordinate=t.data.dataCoordinate:t.traceCoordinate=[this.data.x[e],this.data.y[e],this.data.z[e]];var r=this.data.hovertext||this.data.text;return Array.isArray(r)&&void 0!==r[e]?t.textLabel=r[e]:r&&(t.textLabel=r),!0}},f.update=function(t){var e=this.scene,r=e.fullSceneLayout;this.data=t;var n,h=t.x.length,f=u(d(r.xaxis,t.x,e.dataScale[0],t.xcalendar),d(r.yaxis,t.y,e.dataScale[1],t.ycalendar),d(r.zaxis,t.z,e.dataScale[2],t.zcalendar));if(t.i&&t.j&&t.k){if(t.i.length!==t.j.length||t.j.length!==t.k.length||!m(t.i,h)||!m(t.j,h)||!m(t.k,h))return;n=u(g(t.i),g(t.j),g(t.k))}else n=0===t.alphahull?o(f):t.alphahull>0?i(t.alphahull,f):function(t,e){for(var r=["x","y","z"].indexOf(t),n=[],i=e.length,o=0;o<i;o++)n[o]=[e[o][(r+1)%3],e[o][(r+2)%3]];return a(n)}(t.delaunayaxis,f);var v={positions:f,cells:n,lightPosition:[t.lightposition.x,t.lightposition.y,t.lightposition.z],ambient:t.lighting.ambient,diffuse:t.lighting.diffuse,specular:t.lighting.specular,roughness:t.lighting.roughness,fresnel:t.lighting.fresnel,vertexNormalsEpsilon:t.lighting.vertexnormalsepsilon,faceNormalsEpsilon:t.lighting.facenormalsepsilon,opacity:t.opacity,contourEnable:t.contour.show,contourColor:l(t.contour.color).slice(0,3),contourWidth:t.contour.width,useFacetNormals:t.flatshading};if(t.intensity){var y=c(t);this.color="#fff";var x=t.intensitymode;v[x+"Intensity"]=t.intensity,v[x+"IntensityBounds"]=[y.min,y.max],v.colormap=s(t)}else t.vertexcolor?(this.color=t.vertexcolor[0],v.vertexColors=p(t.vertexcolor)):t.facecolor?(this.color=t.facecolor[0],v.cellColors=p(t.facecolor)):(this.color=t.color,v.meshColor=l(t.color));this.mesh.update(v)},f.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()},e.exports=function(t,e){var r=t.glplot.gl,a=n({gl:r}),i=new h(t,a,e.uid);return a._trace=i,i.update(e),t.glplot.add(a),i}},{"../../components/colorscale":607,"../../lib/gl_format_color":725,"../../lib/str2rgbarray":751,"../../plots/gl3d/zip3":829,"alpha-shape":67,"convex-hull":132,"delaunay-triangulate":166,"gl-mesh3d":287}],1078:[function(t,e,r){"use strict";var n=t("../../registry"),a=t("../../lib"),i=t("../../components/colorscale/defaults"),o=t("./attributes");e.exports=function(t,e,r,s){function l(r,n){return a.coerce(t,e,o,r,n)}function c(t){var e=t.map((function(t){var e=l(t);return e&&a.isArrayOrTypedArray(e)?e:null}));return e.every((function(t){return t&&t.length===e[0].length}))&&e}c(["x","y","z"])?(c(["i","j","k"]),(!e.i||e.j&&e.k)&&(!e.j||e.k&&e.i)&&(!e.k||e.i&&e.j)?(n.getComponentMethod("calendars","handleTraceDefaults")(t,e,["x","y","z"],s),["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(t){l(t)})),l("contour.show")&&(l("contour.color"),l("contour.width")),"intensity"in t?(l("intensity"),l("intensitymode"),i(t,e,s,l,{prefix:"",cLetter:"c"})):(e.showscale=!1,"facecolor"in t?l("facecolor"):"vertexcolor"in t?l("vertexcolor"):l("color",r)),l("text"),l("hovertext"),l("hovertemplate"),e._length=null):e.visible=!1):e.visible=!1}},{"../../components/colorscale/defaults":605,"../../lib":728,"../../registry":859,"./attributes":1075}],1079:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),supplyDefaults:t("./defaults"),calc:t("./calc"),colorbar:{min:"cmin",max:"cmax"},plot:t("./convert"),moduleType:"trace",name:"mesh3d",basePlotModule:t("../../plots/gl3d"),categories:["gl3d","showLegend"],meta:{}}},{"../../plots/gl3d":818,"./attributes":1075,"./calc":1076,"./convert":1077,"./defaults":1078}],1080:[function(t,e,r){"use strict";var n=t("../../lib").extendFlat,a=t("../scatter/attributes"),i=t("../../components/drawing/attributes").dash,o=t("../../components/fx/attributes"),s=t("../../constants/delta.js"),l=s.INCREASING.COLOR,c=s.DECREASING.COLOR,u=a.line;function h(t){return{line:{color:n({},u.color,{dflt:t}),width:u.width,dash:i,editType:"style"},editType:"style"}}e.exports={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:n({},u.width,{}),dash:n({},i,{}),editType:"style"},increasing:h(l),decreasing:h(c),text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},tickwidth:{valType:"number",min:0,max:.5,dflt:.3,editType:"calc"},hoverlabel:n({},o.hoverlabel,{split:{valType:"boolean",dflt:!1,editType:"style"}})}},{"../../components/drawing/attributes":616,"../../components/fx/attributes":626,"../../constants/delta.js":698,"../../lib":728,"../scatter/attributes":1134}],1081:[function(t,e,r){"use strict";var n=t("../../lib"),a=n._,i=t("../../plots/cartesian/axes"),o=t("../../constants/numerical").BADNUM;function s(t,e,r,n){return{o:t,h:e,l:r,c:n}}function l(t,e,r,s,l){for(var c=s.makeCalcdata(e,"open"),u=s.makeCalcdata(e,"high"),h=s.makeCalcdata(e,"low"),f=s.makeCalcdata(e,"close"),p=Array.isArray(e.text),d=Array.isArray(e.hovertext),g=!0,m=null,v=[],y=0;y<r.length;y++){var x=r[y],b=c[y],_=u[y],w=h[y],T=f[y];if(x!==o&&b!==o&&_!==o&&w!==o&&T!==o){T===b?null!==m&&T!==m&&(g=T>m):g=T>b,m=T;var k=l(b,_,w,T);k.pos=x,k.yc=(b+T)/2,k.i=y,k.dir=g?"increasing":"decreasing",k.x=k.pos,k.y=[w,_],p&&(k.tx=e.text[y]),d&&(k.htx=e.hovertext[y]),v.push(k)}else v.push({pos:x,empty:!0})}return e._extremes[s._id]=i.findExtremes(s,n.concat(h,u),{padded:!0}),v.length&&(v[0].t={labels:{open:a(t,"open:")+" ",high:a(t,"high:")+" ",low:a(t,"low:")+" ",close:a(t,"close:")+" "}}),v}e.exports={calc:function(t,e){var r=i.getFromId(t,e.xaxis),a=i.getFromId(t,e.yaxis),o=function(t,e,r){var a=r._minDiff;if(!a){var i,o=t._fullData,s=[];for(a=1/0,i=0;i<o.length;i++){var l=o[i];if("ohlc"===l.type&&!0===l.visible&&l.xaxis===e._id){s.push(l);var c=e.makeCalcdata(l,"x");l._xcalc=c;var u=n.distinctVals(c).minDiff;u&&isFinite(u)&&(a=Math.min(a,u))}}for(a===1/0&&(a=1),i=0;i<s.length;i++)s[i]._minDiff=a}return a*r.tickwidth}(t,r,e),c=e._minDiff;e._minDiff=null;var u=e._xcalc;e._xcalc=null;var h=l(t,e,u,a,s);return e._extremes[r._id]=i.findExtremes(r,u,{vpad:c/2}),h.length?(n.extendFlat(h[0].t,{wHover:c/2,tickLen:o}),h):[{t:{empty:!0}}]},calcCommon:l}},{"../../constants/numerical":704,"../../lib":728,"../../plots/cartesian/axes":776}],1082:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./ohlc_defaults"),i=t("./attributes");function o(t,e,r,n){r(n+".line.color"),r(n+".line.width",e.line.width),r(n+".line.dash",e.line.dash)}e.exports=function(t,e,r,s){function l(r,a){return n.coerce(t,e,i,r,a)}a(t,e,l,s)?(l("line.width"),l("line.dash"),o(t,e,l,"increasing"),o(t,e,l,"decreasing"),l("text"),l("hovertext"),l("tickwidth"),s._requestRangeslider[e.xaxis]=!0):e.visible=!1}},{"../../lib":728,"./attributes":1080,"./ohlc_defaults":1085}],1083:[function(t,e,r){"use strict";var n=t("../../plots/cartesian/axes"),a=t("../../lib"),i=t("../../components/fx"),o=t("../../components/color"),s=t("../../lib").fillText,l=t("../../constants/delta.js"),c={increasing:l.INCREASING.SYMBOL,decreasing:l.DECREASING.SYMBOL};function u(t,e,r,n){var a,s,l=t.cd,c=t.xa,u=l[0].trace,h=l[0].t,f=u.type,p="ohlc"===f?"l":"min",d="ohlc"===f?"h":"max",g=h.bPos||0,m=h.bdPos||h.tickLen,v=h.wHover,y=Math.min(1,m/Math.abs(c.r2c(c.range[1])-c.r2c(c.range[0])));function x(t){var r=function(t){return t.pos+g-e}(t);return i.inbox(r-v,r+v,a)}function b(t){var e=t[p],n=t[d];return e===n||i.inbox(e-r,n-r,a)}function _(t){return(x(t)+b(t))/2}a=t.maxHoverDistance-y,s=t.maxSpikeDistance-y;var w=i.getDistanceFunction(n,x,b,_);if(i.getClosest(l,w,t),!1===t.index)return null;var T=l[t.index];if(T.empty)return null;var k=u[T.dir],A=k.line.color;return o.opacity(A)&&k.line.width?t.color=A:t.color=k.fillcolor,t.x0=c.c2p(T.pos+g-m,!0),t.x1=c.c2p(T.pos+g+m,!0),t.xLabelVal=T.pos,t.spikeDistance=_(T)*s/a,t.xSpike=c.c2p(T.pos,!0),t}function h(t,e,r,i){var o=t.cd,s=t.ya,l=o[0].trace,c=o[0].t,h=[],f=u(t,e,r,i);if(!f)return[];var p=o[f.index].hi||l.hoverinfo,d=p.split("+");if(!("all"===p||-1!==d.indexOf("y")))return[];for(var g=["high","open","close","low"],m={},v=0;v<g.length;v++){var y,x=g[v],b=l[x][f.index],_=s.c2p(b,!0);b in m?(y=m[b]).yLabel+="<br>"+c.labels[x]+n.hoverLabelText(s,b):((y=a.extendFlat({},f)).y0=y.y1=_,y.yLabelVal=b,y.yLabel=c.labels[x]+n.hoverLabelText(s,b),y.name="",h.push(y),m[b]=y)}return h}function f(t,e,r,a){var i=t.cd,o=t.ya,l=i[0].trace,h=i[0].t,f=u(t,e,r,a);if(!f)return[];var p=i[f.index],d=f.index=p.i,g=p.dir;function m(t){return h.labels[t]+n.hoverLabelText(o,l[t][d])}var v=p.hi||l.hoverinfo,y=v.split("+"),x="all"===v,b=x||-1!==y.indexOf("y"),_=x||-1!==y.indexOf("text"),w=b?[m("open"),m("high"),m("low"),m("close")+" "+c[g]]:[];return _&&s(p,l,w),f.extraText=w.join("<br>"),f.y0=f.y1=o.c2p(p.yc,!0),[f]}e.exports={hoverPoints:function(t,e,r,n){return t.cd[0].trace.hoverlabel.split?h(t,e,r,n):f(t,e,r,n)},hoverSplit:h,hoverOnPoints:f}},{"../../components/color":595,"../../components/fx":635,"../../constants/delta.js":698,"../../lib":728,"../../plots/cartesian/axes":776}],1084:[function(t,e,r){"use strict";e.exports={moduleType:"trace",name:"ohlc",basePlotModule:t("../../plots/cartesian"),categories:["cartesian","svg","showLegend"],meta:{},attributes:t("./attributes"),supplyDefaults:t("./defaults"),calc:t("./calc").calc,plot:t("./plot"),style:t("./style"),hoverPoints:t("./hover").hoverPoints,selectPoints:t("./select")}},{"../../plots/cartesian":789,"./attributes":1080,"./calc":1081,"./defaults":1082,"./hover":1083,"./plot":1086,"./select":1087,"./style":1088}],1085:[function(t,e,r){"use strict";var n=t("../../registry"),a=t("../../lib");e.exports=function(t,e,r,i){var o=r("x"),s=r("open"),l=r("high"),c=r("low"),u=r("close");if(r("hoverlabel.split"),n.getComponentMethod("calendars","handleTraceDefaults")(t,e,["x"],i),s&&l&&c&&u){var h=Math.min(s.length,l.length,c.length,u.length);return o&&(h=Math.min(h,a.minRowLength(o))),e._length=h,h}}},{"../../lib":728,"../../registry":859}],1086:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../lib");e.exports=function(t,e,r,i){var o=e.yaxis,s=e.xaxis,l=!!s.rangebreaks;a.makeTraceGroups(i,r,"trace ohlc").each((function(t){var e=n.select(this),r=t[0],i=r.t;if(!0!==r.trace.visible||i.empty)e.remove();else{var c=i.tickLen,u=e.selectAll("path").data(a.identity);u.enter().append("path"),u.exit().remove(),u.attr("d",(function(t){if(t.empty)return"M0,0Z";var e=s.c2p(t.pos-c,!0),r=s.c2p(t.pos+c,!0),n=l?(e+r)/2:s.c2p(t.pos,!0);return"M"+e+","+o.c2p(t.o,!0)+"H"+n+"M"+n+","+o.c2p(t.h,!0)+"V"+o.c2p(t.l,!0)+"M"+r+","+o.c2p(t.c,!0)+"H"+n}))}}))}},{"../../lib":728,d3:164}],1087:[function(t,e,r){"use strict";e.exports=function(t,e){var r,n=t.cd,a=t.xaxis,i=t.yaxis,o=[],s=n[0].t.bPos||0;if(!1===e)for(r=0;r<n.length;r++)n[r].selected=0;else for(r=0;r<n.length;r++){var l=n[r];e.contains([a.c2p(l.pos+s),i.c2p(l.yc)],null,l.i,t)?(o.push({pointNumber:l.i,x:a.c2d(l.pos),y:i.c2d(l.yc)}),l.selected=1):l.selected=0}return o}},{}],1088:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../components/drawing"),i=t("../../components/color");e.exports=function(t,e,r){var o=r||n.select(t).selectAll("g.ohlclayer").selectAll("g.trace");o.style("opacity",(function(t){return t[0].trace.opacity})),o.each((function(t){var e=t[0].trace;n.select(this).selectAll("path").each((function(t){if(!t.empty){var r=e[t.dir].line;n.select(this).style("fill","none").call(i.stroke,r.color).call(a.dashLine,r.dash,r.width).style("opacity",e.selectedpoints&&!t.selected?.3:1)}}))}))}},{"../../components/color":595,"../../components/drawing":617,d3:164}],1089:[function(t,e,r){"use strict";var n=t("../../lib/extend").extendFlat,a=t("../../plots/attributes"),i=t("../../plots/font_attributes"),o=t("../../components/colorscale/attributes"),s=t("../../plots/template_attributes").hovertemplateAttrs,l=t("../../plots/domain").attributes,c=n({editType:"calc"},o("line",{editTypeOverride:"calc"}),{shape:{valType:"enumerated",values:["linear","hspline"],dflt:"linear",editType:"plot"},hovertemplate:s({editType:"plot",arrayOk:!1},{keys:["count","probability"]})});e.exports={domain:l({name:"parcats",trace:!0,editType:"calc"}),hoverinfo:n({},a.hoverinfo,{flags:["count","probability"],editType:"plot",arrayOk:!1}),hoveron:{valType:"enumerated",values:["category","color","dimension"],dflt:"category",editType:"plot"},hovertemplate:s({editType:"plot",arrayOk:!1},{keys:["count","probability","category","categorycount","colorcount","bandcolorcount"]}),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:i({editType:"calc"}),tickfont:i({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:c,counts:{valType:"number",min:0,dflt:1,arrayOk:!0,editType:"calc"},customdata:void 0,hoverlabel:void 0,ids:void 0,legendgroup:void 0,opacity:void 0,selectedpoints:void 0,showlegend:void 0}},{"../../components/colorscale/attributes":602,"../../lib/extend":719,"../../plots/attributes":773,"../../plots/domain":803,"../../plots/font_attributes":804,"../../plots/template_attributes":854}],1090:[function(t,e,r){"use strict";var n=t("../../plots/get_data").getModuleCalcData,a=t("./plot");r.name="parcats",r.plot=function(t,e,r,i){var o=n(t.calcdata,"parcats");if(o.length){var s=o[0];a(t,s,r,i)}},r.clean=function(t,e,r,n){var a=n._has&&n._has("parcats"),i=e._has&&e._has("parcats");a&&!i&&n._paperdiv.selectAll(".parcats").remove()}},{"../../plots/get_data":813,"./plot":1095}],1091:[function(t,e,r){"use strict";var n=t("../../lib/gup").wrap,a=t("../../components/colorscale/helpers").hasColorscale,i=t("../../components/colorscale/calc"),o=t("../../lib/filter_unique.js"),s=t("../../components/drawing"),l=t("../../lib"),c=t("fast-isnumeric");function u(t,e,r){t.valueInds.push(e),t.count+=r}function h(t,e,r){return{categoryInds:t,color:e,rawColor:r,valueInds:[],count:0}}function f(t,e,r){t.valueInds.push(e),t.count+=r}e.exports=function(t,e){var r=l.filterVisible(e.dimensions);if(0===r.length)return[];var p,d,g,m=r.map((function(t){var e;if("trace"===t.categoryorder)e=null;else if("array"===t.categoryorder)e=t.categoryarray;else{e=o(t.values);for(var r=!0,n=0;n<e.length;n++)if(!c(e[n])){r=!1;break}e.sort(r?l.sorterAsc:void 0),"category descending"===t.categoryorder&&(e=e.reverse())}return function(t,e){e=null==e?[]:e.map((function(t){return t}));var r={},n={},a=[];e.forEach((function(t,e){r[t]=0,n[t]=e}));for(var i=0;i<t.length;i++){var o,s=t[i];void 0===r[s]?(r[s]=1,o=e.push(s)-1,n[s]=o):(r[s]++,o=n[s]),a.push(o)}var l=e.map((function(t){return r[t]}));return{uniqueValues:e,uniqueCounts:l,inds:a}}(t.values,e)}));p=l.isArrayOrTypedArray(e.counts)?e.counts:[e.counts],function(t){var e;if(function(t){for(var e=new Array(t.length),r=0;r<t.length;r++){if(t[r]<0||t[r]>=t.length)return!1;if(void 0!==e[t[r]])return!1;e[t[r]]=!0}return!0}(t.map((function(t){return t.displayindex}))))for(e=0;e<t.length;e++)t[e]._displayindex=t[e].displayindex;else for(e=0;e<t.length;e++)t[e]._displayindex=e}(r),r.forEach((function(t,e){!function(t,e){t._categoryarray=e.uniqueValues,null===t.ticktext||void 0===t.ticktext?t._ticktext=[]:t._ticktext=t.ticktext.slice();for(var r=t._ticktext.length;r<e.uniqueValues.length;r++)t._ticktext.push(e.uniqueValues[r])}(t,m[e])}));var v,y=e.line;y?(a(e,"line")&&i(t,e,{vals:e.line.color,containerStr:"line",cLetter:"c"}),v=s.tryColorscale(y)):v=l.identity;var x,b,_,w,T,k=r[0].values.length,A={},M=m.map((function(t){return t.inds}));for(g=0,x=0;x<k;x++){var S=[];for(b=0;b<M.length;b++)S.push(M[b][x]);d=p[x%p.length],g+=d;var E=(_=x,w=void 0,T=void 0,l.isArrayOrTypedArray(y.color)?T=w=y.color[_%y.color.length]:w=y.color,{color:v(w),rawColor:T}),C=S+"-"+E.rawColor;void 0===A[C]&&(A[C]=h(S,E.color,E.rawColor)),f(A[C],x,d)}var L,P=r.map((function(t,e){return function(t,e,r,n,a){return{dimensionInd:t,containerInd:e,displayInd:r,dimensionLabel:n,count:a,categories:[],dragX:null}}(e,t._index,t._displayindex,t.label,g)}));for(x=0;x<k;x++)for(d=p[x%p.length],b=0;b<P.length;b++){var I=P[b].containerInd,z=m[b].inds[x],O=P[b].categories;if(void 0===O[z]){var D=e.dimensions[I]._categoryarray[z],R=e.dimensions[I]._ticktext[z];O[z]={dimensionInd:b,categoryInd:L=z,categoryValue:D,displayInd:L,categoryLabel:R,valueInds:[],count:0,dragY:null}}u(O[z],x,d)}return n(function(t,e,r){var n=t.map((function(t){return t.categories.length})).reduce((function(t,e){return Math.max(t,e)}));return{dimensions:t,paths:e,trace:void 0,maxCats:n,count:r}}(P,A,g))}},{"../../components/colorscale/calc":603,"../../components/colorscale/helpers":606,"../../components/drawing":617,"../../lib":728,"../../lib/filter_unique.js":720,"../../lib/gup":726,"fast-isnumeric":236}],1092:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../components/colorscale/helpers").hasColorscale,i=t("../../components/colorscale/defaults"),o=t("../../plots/domain").defaults,s=t("../../plots/array_container_defaults"),l=t("./attributes"),c=t("../parcoords/merge_length");function u(t,e){function r(r,a){return n.coerce(t,e,l.dimensions,r,a)}var a=r("values"),i=r("visible");if(a&&a.length||(i=e.visible=!1),i){r("label"),r("displayindex",e._index);var o,s=t.categoryarray,c=Array.isArray(s)&&s.length>0;c&&(o="array");var u=r("categoryorder",o);"array"===u?(r("categoryarray"),r("ticktext")):(delete t.categoryarray,delete t.ticktext),c||"array"!==u||(e.categoryorder="trace")}}e.exports=function(t,e,r,h){function f(r,a){return n.coerce(t,e,l,r,a)}var p=s(t,e,{name:"dimensions",handleItemDefaults:u}),d=function(t,e,r,o,s){s("line.shape"),s("line.hovertemplate");var l=s("line.color",o.colorway[0]);if(a(t,"line")&&n.isArrayOrTypedArray(l)){if(l.length)return s("line.colorscale"),i(t,e,o,s,{prefix:"line.",cLetter:"c"}),l.length;e.line.color=r}return 1/0}(t,e,r,h,f);o(e,h,f),Array.isArray(p)&&p.length||(e.visible=!1),c(e,p,"values",d),f("hoveron"),f("hovertemplate"),f("arrangement"),f("bundlecolors"),f("sortpaths"),f("counts");var g={family:h.font.family,size:Math.round(h.font.size),color:h.font.color};n.coerceFont(f,"labelfont",g);var m={family:h.font.family,size:Math.round(h.font.size/1.2),color:h.font.color};n.coerceFont(f,"tickfont",m)}},{"../../components/colorscale/defaults":605,"../../components/colorscale/helpers":606,"../../lib":728,"../../plots/array_container_defaults":772,"../../plots/domain":803,"../parcoords/merge_length":1105,"./attributes":1089}],1093:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),supplyDefaults:t("./defaults"),calc:t("./calc"),plot:t("./plot"),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcats",basePlotModule:t("./base_plot"),categories:["noOpacity"],meta:{}}},{"./attributes":1089,"./base_plot":1090,"./calc":1091,"./defaults":1092,"./plot":1095}],1094:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../plot_api/plot_api"),i=t("../../components/fx"),o=t("../../lib"),s=t("../../components/drawing"),l=t("tinycolor2"),c=t("../../lib/svg_text_utils");function u(t,e,r,a){var i=t.map(D.bind(0,e,r)),l=a.selectAll("g.parcatslayer").data([null]);l.enter().append("g").attr("class","parcatslayer").style("pointer-events","all");var u=l.selectAll("g.trace.parcats").data(i,h),m=u.enter().append("g").attr("class","trace parcats");u.attr("transform",(function(t){return"translate("+t.x+", "+t.y+")"})),m.append("g").attr("class","paths");var v=u.select("g.paths").selectAll("path.path").data((function(t){return t.paths}),h);v.attr("fill",(function(t){return t.model.color}));var b=v.enter().append("path").attr("class","path").attr("stroke-opacity",0).attr("fill",(function(t){return t.model.color})).attr("fill-opacity",0);x(b),v.attr("d",(function(t){return t.svgD})),b.empty()||v.sort(p),v.exit().remove(),v.on("mouseover",d).on("mouseout",g).on("click",y),m.append("g").attr("class","dimensions");var T=u.select("g.dimensions").selectAll("g.dimension").data((function(t){return t.dimensions}),h);T.enter().append("g").attr("class","dimension"),T.attr("transform",(function(t){return"translate("+t.x+", 0)"})),T.exit().remove();var k=T.selectAll("g.category").data((function(t){return t.categories}),h),A=k.enter().append("g").attr("class","category");k.attr("transform",(function(t){return"translate(0, "+t.y+")"})),A.append("rect").attr("class","catrect").attr("pointer-events","none"),k.select("rect.catrect").attr("fill","none").attr("width",(function(t){return t.width})).attr("height",(function(t){return t.height})),_(A);var M=k.selectAll("rect.bandrect").data((function(t){return t.bands}),h);M.each((function(){o.raiseToTop(this)})),M.attr("fill",(function(t){return t.color}));var I=M.enter().append("rect").attr("class","bandrect").attr("stroke-opacity",0).attr("fill",(function(t){return t.color})).attr("fill-opacity",0);M.attr("fill",(function(t){return t.color})).attr("width",(function(t){return t.width})).attr("height",(function(t){return t.height})).attr("y",(function(t){return t.y})).attr("cursor",(function(t){return"fixed"===t.parcatsViewModel.arrangement?"default":"perpendicular"===t.parcatsViewModel.arrangement?"ns-resize":"move"})),w(I),M.exit().remove(),A.append("text").attr("class","catlabel").attr("pointer-events","none");var z=e._fullLayout.paper_bgcolor;k.select("text.catlabel").attr("text-anchor",(function(t){return f(t)?"start":"end"})).attr("alignment-baseline","middle").style("text-shadow",z+" -1px 1px 2px, "+z+" 1px 1px 2px, "+z+" 1px -1px 2px, "+z+" -1px -1px 2px").style("fill","rgb(0, 0, 0)").attr("x",(function(t){return f(t)?t.width+5:-5})).attr("y",(function(t){return t.height/2})).text((function(t){return t.model.categoryLabel})).each((function(t){s.font(n.select(this),t.parcatsViewModel.categorylabelfont),c.convertToTspans(n.select(this),e)})),A.append("text").attr("class","dimlabel"),k.select("text.dimlabel").attr("text-anchor","middle").attr("alignment-baseline","baseline").attr("cursor",(function(t){return"fixed"===t.parcatsViewModel.arrangement?"default":"ew-resize"})).attr("x",(function(t){return t.width/2})).attr("y",-5).text((function(t,e){return 0===e?t.parcatsViewModel.model.dimensions[t.model.dimensionInd].dimensionLabel:null})).each((function(t){s.font(n.select(this),t.parcatsViewModel.labelfont)})),k.selectAll("rect.bandrect").on("mouseover",S).on("mouseout",E),k.exit().remove(),T.call(n.behavior.drag().origin((function(t){return{x:t.x,y:0}})).on("dragstart",C).on("drag",L).on("dragend",P)),u.each((function(t){t.traceSelection=n.select(this),t.pathSelection=n.select(this).selectAll("g.paths").selectAll("path.path"),t.dimensionSelection=n.select(this).selectAll("g.dimensions").selectAll("g.dimension")})),u.exit().remove()}function h(t){return t.key}function f(t){var e=t.parcatsViewModel.dimensions.length,r=t.parcatsViewModel.dimensions[e-1].model.dimensionInd;return t.model.dimensionInd===r}function p(t,e){return t.model.rawColor>e.model.rawColor?1:t.model.rawColor<e.model.rawColor?-1:0}function d(t){if(!t.parcatsViewModel.dragDimension&&-1===t.parcatsViewModel.hoverinfoItems.indexOf("skip")){o.raiseToTop(this),b(n.select(this));var e=m(t),r=v(t);if(t.parcatsViewModel.graphDiv.emit("plotly_hover",{points:e,event:n.event,constraints:r}),-1===t.parcatsViewModel.hoverinfoItems.indexOf("none")){var a,s,c,u=n.mouse(this)[0],h=t.parcatsViewModel.graphDiv,f=t.parcatsViewModel.trace,p=h._fullLayout,d=p._paperdiv.node().getBoundingClientRect(),g=t.parcatsViewModel.graphDiv.getBoundingClientRect();for(c=0;c<t.leftXs.length-1;c++)if(t.leftXs[c]+t.dimWidths[c]-2<=u&&u<=t.leftXs[c+1]+2){var y=t.parcatsViewModel.dimensions[c],x=t.parcatsViewModel.dimensions[c+1];a=(y.x+y.width+x.x)/2,s=(t.topYs[c]+t.topYs[c+1]+t.height)/2;break}var _=t.parcatsViewModel.x+a,w=t.parcatsViewModel.y+s,T=l.mostReadable(t.model.color,["black","white"]),k=t.model.count,A=k/t.parcatsViewModel.model.count,M={countLabel:k,probabilityLabel:A.toFixed(3)},S=[];-1!==t.parcatsViewModel.hoverinfoItems.indexOf("count")&&S.push(["Count:",M.countLabel].join(" ")),-1!==t.parcatsViewModel.hoverinfoItems.indexOf("probability")&&S.push(["P:",M.probabilityLabel].join(" "));var E=S.join("<br>"),C=n.mouse(h)[0];i.loneHover({trace:f,x:_-d.left+g.left,y:w-d.top+g.top,text:E,color:t.model.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:10,fontColor:T,idealAlign:C<_?"right":"left",hovertemplate:(f.line||{}).hovertemplate,hovertemplateLabels:M,eventData:[{data:f._input,fullData:f,count:k,probability:A}]},{container:p._hoverlayer.node(),outerContainer:p._paper.node(),gd:h})}}}function g(t){if(!t.parcatsViewModel.dragDimension&&(x(n.select(this)),i.loneUnhover(t.parcatsViewModel.graphDiv._fullLayout._hoverlayer.node()),t.parcatsViewModel.pathSelection.sort(p),-1===t.parcatsViewModel.hoverinfoItems.indexOf("skip"))){var e=m(t),r=v(t);t.parcatsViewModel.graphDiv.emit("plotly_unhover",{points:e,event:n.event,constraints:r})}}function m(t){for(var e=[],r=I(t.parcatsViewModel),n=0;n<t.model.valueInds.length;n++){var a=t.model.valueInds[n];e.push({curveNumber:r,pointNumber:a})}return e}function v(t){for(var e={},r=t.parcatsViewModel.model.dimensions,n=0;n<r.length;n++){var a=r[n],i=a.categories[t.model.categoryInds[n]];e[a.containerInd]=i.categoryValue}return void 0!==t.model.rawColor&&(e.color=t.model.rawColor),e}function y(t){if(-1===t.parcatsViewModel.hoverinfoItems.indexOf("skip")){var e=m(t),r=v(t);t.parcatsViewModel.graphDiv.emit("plotly_click",{points:e,event:n.event,constraints:r})}}function x(t){t.attr("fill",(function(t){return t.model.color})).attr("fill-opacity",.6).attr("stroke","lightgray").attr("stroke-width",.2).attr("stroke-opacity",1)}function b(t){t.attr("fill-opacity",.8).attr("stroke",(function(t){return l.mostReadable(t.model.color,["black","white"])})).attr("stroke-width",.3)}function _(t){t.select("rect.catrect").attr("stroke","black").attr("stroke-width",1).attr("stroke-opacity",1)}function w(t){t.attr("stroke","black").attr("stroke-width",.2).attr("stroke-opacity",1).attr("fill-opacity",1)}function T(t){var e=t.parcatsViewModel.pathSelection,r=t.categoryViewModel.model.dimensionInd,n=t.categoryViewModel.model.categoryInd;return e.filter((function(e){return e.model.categoryInds[r]===n&&e.model.color===t.color}))}function k(t,e,r){var a=n.select(t).datum(),i=a.categoryViewModel.model,o=a.parcatsViewModel.graphDiv,s=n.select(t.parentNode).selectAll("rect.bandrect"),l=[];s.each((function(t){T(t).each((function(t){Array.prototype.push.apply(l,m(t))}))}));var c={};c[i.dimensionInd]=i.categoryValue,o.emit(e,{points:l,event:r,constraints:c})}function A(t,e,r){var a=n.select(t).datum(),i=a.categoryViewModel.model,o=a.parcatsViewModel.graphDiv,s=T(a),l=[];s.each((function(t){Array.prototype.push.apply(l,m(t))}));var c={};c[i.dimensionInd]=i.categoryValue,void 0!==a.rawColor&&(c.color=a.rawColor),o.emit(e,{points:l,event:r,constraints:c})}function M(t,e){var r,a,i=n.select(e.parentNode).select("rect.catrect"),o=i.node().getBoundingClientRect(),s=i.datum(),l=s.parcatsViewModel,c=l.model.dimensions[s.model.dimensionInd],u=l.trace,h=o.top+o.height/2;l.dimensions.length>1&&c.displayInd===l.dimensions.length-1?(r=o.left,a="left"):(r=o.left+o.width,a="right");var f=s.model.count,p=s.model.categoryLabel,d=f/s.parcatsViewModel.model.count,g={countLabel:f,categoryLabel:p,probabilityLabel:d.toFixed(3)},m=[];-1!==s.parcatsViewModel.hoverinfoItems.indexOf("count")&&m.push(["Count:",g.countLabel].join(" ")),-1!==s.parcatsViewModel.hoverinfoItems.indexOf("probability")&&m.push(["P("+g.categoryLabel+"):",g.probabilityLabel].join(" "));var v=m.join("<br>");return{trace:u,x:r-t.left,y:h-t.top,text:v,color:"lightgray",borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:12,fontColor:"black",idealAlign:a,hovertemplate:u.hovertemplate,hovertemplateLabels:g,eventData:[{data:u._input,fullData:u,count:f,category:p,probability:d}]}}function S(t){if(!t.parcatsViewModel.dragDimension&&-1===t.parcatsViewModel.hoverinfoItems.indexOf("skip")){if(n.mouse(this)[1]<-1)return;var e,r=t.parcatsViewModel.graphDiv,a=r._fullLayout,s=a._paperdiv.node().getBoundingClientRect(),c=t.parcatsViewModel.hoveron;if("color"===c?(!function(t){var e=n.select(t).datum(),r=T(e);b(r),r.each((function(){o.raiseToTop(this)})),n.select(t.parentNode).selectAll("rect.bandrect").filter((function(t){return t.color===e.color})).each((function(){o.raiseToTop(this),n.select(this).attr("stroke","black").attr("stroke-width",1.5)}))}(this),A(this,"plotly_hover",n.event)):(!function(t){n.select(t.parentNode).selectAll("rect.bandrect").each((function(t){var e=T(t);b(e),e.each((function(){o.raiseToTop(this)}))})),n.select(t.parentNode).select("rect.catrect").attr("stroke","black").attr("stroke-width",2.5)}(this),k(this,"plotly_hover",n.event)),-1===t.parcatsViewModel.hoverinfoItems.indexOf("none"))"category"===c?e=M(s,this):"color"===c?e=function(t,e){var r,a,i=e.getBoundingClientRect(),o=n.select(e).datum(),s=o.categoryViewModel,c=s.parcatsViewModel,u=c.model.dimensions[s.model.dimensionInd],h=c.trace,f=i.y+i.height/2;c.dimensions.length>1&&u.displayInd===c.dimensions.length-1?(r=i.left,a="left"):(r=i.left+i.width,a="right");var p=s.model.categoryLabel,d=o.parcatsViewModel.model.count,g=0;o.categoryViewModel.bands.forEach((function(t){t.color===o.color&&(g+=t.count)}));var m=s.model.count,v=0;c.pathSelection.each((function(t){t.model.color===o.color&&(v+=t.model.count)}));var y=g/d,x=g/v,b=g/m,_={countLabel:d,categoryLabel:p,probabilityLabel:y.toFixed(3)},w=[];-1!==s.parcatsViewModel.hoverinfoItems.indexOf("count")&&w.push(["Count:",_.countLabel].join(" ")),-1!==s.parcatsViewModel.hoverinfoItems.indexOf("probability")&&(w.push("P(color \u2229 "+p+"): "+_.probabilityLabel),w.push("P("+p+" | color): "+x.toFixed(3)),w.push("P(color | "+p+"): "+b.toFixed(3)));var T=w.join("<br>"),k=l.mostReadable(o.color,["black","white"]);return{trace:h,x:r-t.left,y:f-t.top,text:T,color:o.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontColor:k,fontSize:10,idealAlign:a,hovertemplate:h.hovertemplate,hovertemplateLabels:_,eventData:[{data:h._input,fullData:h,category:p,count:d,probability:y,categorycount:m,colorcount:v,bandcolorcount:g}]}}(s,this):"dimension"===c&&(e=function(t,e){var r=[];return n.select(e.parentNode.parentNode).selectAll("g.category").select("rect.catrect").each((function(){r.push(M(t,this))})),r}(s,this)),e&&i.loneHover(e,{container:a._hoverlayer.node(),outerContainer:a._paper.node(),gd:r})}}function E(t){var e=t.parcatsViewModel;if(!e.dragDimension&&(x(e.pathSelection),_(e.dimensionSelection.selectAll("g.category")),w(e.dimensionSelection.selectAll("g.category").selectAll("rect.bandrect")),i.loneUnhover(e.graphDiv._fullLayout._hoverlayer.node()),e.pathSelection.sort(p),-1===e.hoverinfoItems.indexOf("skip"))){"color"===t.parcatsViewModel.hoveron?A(this,"plotly_unhover",n.event):k(this,"plotly_unhover",n.event)}}function C(t){"fixed"!==t.parcatsViewModel.arrangement&&(t.dragDimensionDisplayInd=t.model.displayInd,t.initialDragDimensionDisplayInds=t.parcatsViewModel.model.dimensions.map((function(t){return t.displayInd})),t.dragHasMoved=!1,t.dragCategoryDisplayInd=null,n.select(this).selectAll("g.category").select("rect.catrect").each((function(e){var r=n.mouse(this)[0],a=n.mouse(this)[1];-2<=r&&r<=e.width+2&&-2<=a&&a<=e.height+2&&(t.dragCategoryDisplayInd=e.model.displayInd,t.initialDragCategoryDisplayInds=t.model.categories.map((function(t){return t.displayInd})),e.model.dragY=e.y,o.raiseToTop(this.parentNode),n.select(this.parentNode).selectAll("rect.bandrect").each((function(e){e.y<a&&a<=e.y+e.height&&(t.potentialClickBand=this)})))})),t.parcatsViewModel.dragDimension=t,i.loneUnhover(t.parcatsViewModel.graphDiv._fullLayout._hoverlayer.node()))}function L(t){if("fixed"!==t.parcatsViewModel.arrangement&&(t.dragHasMoved=!0,null!==t.dragDimensionDisplayInd)){var e=t.dragDimensionDisplayInd,r=e-1,a=e+1,i=t.parcatsViewModel.dimensions[e];if(null!==t.dragCategoryDisplayInd){var o=i.categories[t.dragCategoryDisplayInd];o.model.dragY+=n.event.dy;var s=o.model.dragY,l=o.model.displayInd,c=i.categories,u=c[l-1],h=c[l+1];void 0!==u&&s<u.y+u.height/2&&(o.model.displayInd=u.model.displayInd,u.model.displayInd=l),void 0!==h&&s+o.height>h.y+h.height/2&&(o.model.displayInd=h.model.displayInd,h.model.displayInd=l),t.dragCategoryDisplayInd=o.model.displayInd}if(null===t.dragCategoryDisplayInd||"freeform"===t.parcatsViewModel.arrangement){i.model.dragX=n.event.x;var f=t.parcatsViewModel.dimensions[r],p=t.parcatsViewModel.dimensions[a];void 0!==f&&i.model.dragX<f.x+f.width&&(i.model.displayInd=f.model.displayInd,f.model.displayInd=e),void 0!==p&&i.model.dragX+i.width>p.x&&(i.model.displayInd=p.model.displayInd,p.model.displayInd=t.dragDimensionDisplayInd),t.dragDimensionDisplayInd=i.model.displayInd}B(t.parcatsViewModel),F(t.parcatsViewModel),O(t.parcatsViewModel),z(t.parcatsViewModel)}}function P(t){if("fixed"!==t.parcatsViewModel.arrangement&&null!==t.dragDimensionDisplayInd){n.select(this).selectAll("text").attr("font-weight","normal");var e={},r=I(t.parcatsViewModel),i=t.parcatsViewModel.model.dimensions.map((function(t){return t.displayInd})),o=t.initialDragDimensionDisplayInds.some((function(t,e){return t!==i[e]}));o&&i.forEach((function(r,n){var a=t.parcatsViewModel.model.dimensions[n].containerInd;e["dimensions["+a+"].displayindex"]=r}));var s=!1;if(null!==t.dragCategoryDisplayInd){var l=t.model.categories.map((function(t){return t.displayInd}));if(s=t.initialDragCategoryDisplayInds.some((function(t,e){return t!==l[e]}))){var c=t.model.categories.slice().sort((function(t,e){return t.displayInd-e.displayInd})),u=c.map((function(t){return t.categoryValue})),h=c.map((function(t){return t.categoryLabel}));e["dimensions["+t.model.containerInd+"].categoryarray"]=[u],e["dimensions["+t.model.containerInd+"].ticktext"]=[h],e["dimensions["+t.model.containerInd+"].categoryorder"]="array"}}if(-1===t.parcatsViewModel.hoverinfoItems.indexOf("skip")&&!t.dragHasMoved&&t.potentialClickBand&&("color"===t.parcatsViewModel.hoveron?A(t.potentialClickBand,"plotly_click",n.event.sourceEvent):k(t.potentialClickBand,"plotly_click",n.event.sourceEvent)),t.model.dragX=null,null!==t.dragCategoryDisplayInd)t.parcatsViewModel.dimensions[t.dragDimensionDisplayInd].categories[t.dragCategoryDisplayInd].model.dragY=null,t.dragCategoryDisplayInd=null;t.dragDimensionDisplayInd=null,t.parcatsViewModel.dragDimension=null,t.dragHasMoved=null,t.potentialClickBand=null,B(t.parcatsViewModel),F(t.parcatsViewModel),n.transition().duration(300).ease("cubic-in-out").each((function(){O(t.parcatsViewModel,!0),z(t.parcatsViewModel,!0)})).each("end",(function(){(o||s)&&a.restyle(t.parcatsViewModel.graphDiv,e,[r])}))}}function I(t){for(var e,r=t.graphDiv._fullData,n=0;n<r.length;n++)if(t.key===r[n].uid){e=n;break}return e}function z(t,e){var r;void 0===e&&(e=!1),t.pathSelection.data((function(t){return t.paths}),h),(r=t.pathSelection,e?r.transition():r).attr("d",(function(t){return t.svgD}))}function O(t,e){function r(t){return e?t.transition():t}void 0===e&&(e=!1),t.dimensionSelection.data((function(t){return t.dimensions}),h);var a=t.dimensionSelection.selectAll("g.category").data((function(t){return t.categories}),h);r(t.dimensionSelection).attr("transform",(function(t){return"translate("+t.x+", 0)"})),r(a).attr("transform",(function(t){return"translate(0, "+t.y+")"})),a.select(".dimlabel").text((function(t,e){return 0===e?t.parcatsViewModel.model.dimensions[t.model.dimensionInd].dimensionLabel:null})),a.select(".catlabel").attr("text-anchor",(function(t){return f(t)?"start":"end"})).attr("x",(function(t){return f(t)?t.width+5:-5})).each((function(t){var e,r;f(t)?(e=t.width+5,r="start"):(e=-5,r="end"),n.select(this).selectAll("tspan").attr("x",e).attr("text-anchor",r)}));var i=a.selectAll("rect.bandrect").data((function(t){return t.bands}),h),s=i.enter().append("rect").attr("class","bandrect").attr("cursor","move").attr("stroke-opacity",0).attr("fill",(function(t){return t.color})).attr("fill-opacity",0);i.attr("fill",(function(t){return t.color})).attr("width",(function(t){return t.width})).attr("height",(function(t){return t.height})).attr("y",(function(t){return t.y})),w(s),i.each((function(){o.raiseToTop(this)})),i.exit().remove()}function D(t,e,r){var n,a=r[0],i=e.margin||{l:80,r:80,t:100,b:80},o=a.trace,s=o.domain,l=e.width,c=e.height,u=Math.floor(l*(s.x[1]-s.x[0])),h=Math.floor(c*(s.y[1]-s.y[0])),f=s.x[0]*l+i.l,p=e.height-s.y[1]*e.height+i.t,d=o.line.shape;n="all"===o.hoverinfo?["count","probability"]:(o.hoverinfo||"").split("+");var g={trace:o,key:o.uid,model:a,x:f,y:p,width:u,height:h,hoveron:o.hoveron,hoverinfoItems:n,arrangement:o.arrangement,bundlecolors:o.bundlecolors,sortpaths:o.sortpaths,labelfont:o.labelfont,categorylabelfont:o.tickfont,pathShape:d,dragDimension:null,margin:i,paths:[],dimensions:[],graphDiv:t,traceSelection:null,pathSelection:null,dimensionSelection:null};return a.dimensions&&(B(g),F(g)),g}function R(t,e,r,a,i){var o,s,l=[],c=[];for(s=0;s<r.length-1;s++)o=n.interpolateNumber(r[s]+t[s],t[s+1]),l.push(o(i)),c.push(o(1-i));var u="M "+t[0]+","+e[0];for(u+="l"+r[0]+",0 ",s=1;s<r.length;s++)u+="C"+l[s-1]+","+e[s-1]+" "+c[s-1]+","+e[s]+" "+t[s]+","+e[s],u+="l"+r[s]+",0 ";for(u+="l0,"+a+" ",u+="l -"+r[r.length-1]+",0 ",s=r.length-2;s>=0;s--)u+="C"+c[s]+","+(e[s+1]+a)+" "+l[s]+","+(e[s]+a)+" "+(t[s]+r[s])+","+(e[s]+a),u+="l-"+r[s]+",0 ";return u+="Z"}function F(t){var e=t.dimensions,r=t.model,n=e.map((function(t){return t.categories.map((function(t){return t.y}))})),a=t.model.dimensions.map((function(t){return t.categories.map((function(t){return t.displayInd}))})),i=t.model.dimensions.map((function(t){return t.displayInd})),o=t.dimensions.map((function(t){return t.model.dimensionInd})),s=e.map((function(t){return t.x})),l=e.map((function(t){return t.width})),c=[];for(var u in r.paths)r.paths.hasOwnProperty(u)&&c.push(r.paths[u]);function h(t){var e=t.categoryInds.map((function(t,e){return a[e][t]}));return o.map((function(t){return e[t]}))}c.sort((function(e,r){var n=h(e),a=h(r);return"backward"===t.sortpaths&&(n.reverse(),a.reverse()),n.push(e.valueInds[0]),a.push(r.valueInds[0]),t.bundlecolors&&(n.unshift(e.rawColor),a.unshift(r.rawColor)),n<a?-1:n>a?1:0}));for(var f=new Array(c.length),p=e[0].model.count,d=e[0].categories.map((function(t){return t.height})).reduce((function(t,e){return t+e})),g=0;g<c.length;g++){var m,v=c[g];m=p>0?d*(v.count/p):0;for(var y,x=new Array(n.length),b=0;b<v.categoryInds.length;b++){var _=v.categoryInds[b],w=a[b][_],T=i[b];x[T]=n[T][w],n[T][w]+=m;var k=t.dimensions[T].categories[w],A=k.bands.length,M=k.bands[A-1];if(void 0===M||v.rawColor!==M.rawColor){var S=void 0===M?0:M.y+M.height;k.bands.push({key:S,color:v.color,rawColor:v.rawColor,height:m,width:k.width,count:v.count,y:S,categoryViewModel:k,parcatsViewModel:t})}else{var E=k.bands[A-1];E.height+=m,E.count+=v.count}}y="hspline"===t.pathShape?R(s,x,l,m,.5):R(s,x,l,m,0),f[g]={key:v.valueInds[0],model:v,height:m,leftXs:s,topYs:x,dimWidths:l,svgD:y,parcatsViewModel:t}}t.paths=f}function B(t){var e=t.model.dimensions.map((function(t){return{displayInd:t.displayInd,dimensionInd:t.dimensionInd}}));e.sort((function(t,e){return t.displayInd-e.displayInd}));var r=[];for(var n in e){var a=e[n].dimensionInd,i=t.model.dimensions[a];r.push(N(t,i))}t.dimensions=r}function N(t,e){var r,n=t.model.dimensions.length,a=e.displayInd;r=40+(n>1?(t.width-80-16)/(n-1):0)*a;var i,o,s,l,c,u=[],h=t.model.maxCats,f=e.categories.length,p=e.count,d=t.height-8*(h-1),g=8*(h-f)/2,m=e.categories.map((function(t){return{displayInd:t.displayInd,categoryInd:t.categoryInd}}));for(m.sort((function(t,e){return t.displayInd-e.displayInd})),c=0;c<f;c++)l=m[c].categoryInd,o=e.categories[l],i=p>0?o.count/p*d:0,s={key:o.valueInds[0],model:o,width:16,height:i,y:null!==o.dragY?o.dragY:g,bands:[],parcatsViewModel:t},g=g+i+8,u.push(s);return{key:e.dimensionInd,x:null!==e.dragX?e.dragX:r,y:0,width:16,model:e,categories:u,parcatsViewModel:t,dragCategoryDisplayInd:null,dragDimensionDisplayInd:null,initialDragDimensionDisplayInds:null,initialDragCategoryDisplayInds:null,dragHasMoved:null,potentialClickBand:null}}e.exports=function(t,e,r,n){u(r,t,n,e)}},{"../../components/drawing":617,"../../components/fx":635,"../../lib":728,"../../lib/svg_text_utils":752,"../../plot_api/plot_api":763,d3:164,tinycolor2:528}],1095:[function(t,e,r){"use strict";var n=t("./parcats");e.exports=function(t,e,r,a){var i=t._fullLayout,o=i._paper,s=i._size;n(t,o,e,{width:s.w,height:s.h,margin:{t:s.t,r:s.r,b:s.b,l:s.l}},r,a)}},{"./parcats":1094}],1096:[function(t,e,r){"use strict";var n=t("../../components/colorscale/attributes"),a=t("../../plots/cartesian/layout_attributes"),i=t("../../plots/font_attributes"),o=t("../../plots/domain").attributes,s=t("../../lib/extend").extendFlat,l=t("../../plot_api/plot_template").templatedArray;e.exports={domain:o({name:"parcoords",trace:!0,editType:"plot"}),labelangle:{valType:"angle",dflt:0,editType:"plot"},labelside:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},labelfont:i({editType:"plot"}),tickfont:i({editType:"plot"}),rangefont:i({editType:"plot"}),dimensions:l("dimension",{label:{valType:"string",editType:"plot"},tickvals:s({},a.tickvals,{editType:"plot"}),ticktext:s({},a.ticktext,{editType:"plot"}),tickformat:s({},a.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:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},multiselect:{valType:"boolean",dflt:!0,editType:"plot"},values:{valType:"data_array",editType:"calc"},editType:"calc"}),line:s({editType:"calc"},n("line",{colorscaleDflt:"Viridis",autoColorDflt:!1,editTypeOverride:"calc"}))}},{"../../components/colorscale/attributes":602,"../../lib/extend":719,"../../plot_api/plot_template":766,"../../plots/cartesian/layout_attributes":790,"../../plots/domain":803,"../../plots/font_attributes":804}],1097:[function(t,e,r){"use strict";var n=t("./constants"),a=t("d3"),i=t("../../lib/gup").keyFun,o=t("../../lib/gup").repeat,s=t("../../lib").sorterAsc,l=n.bar.snapRatio;function c(t,e){return t*(1-l)+e*l}var u=n.bar.snapClose;function h(t,e){return t*(1-u)+e*u}function f(t,e,r,n){if(function(t,e){for(var r=0;r<e.length;r++)if(t>=e[r][0]&&t<=e[r][1])return!0;return!1}(r,n))return r;var a=t?-1:1,i=0,o=e.length-1;if(a<0){var s=i;i=o,o=s}for(var l=e[i],u=l,f=i;a*f<a*o;f+=a){var p=f+a,d=e[p];if(a*r<a*h(l,d))return c(l,u);if(a*r<a*d||p===o)return c(d,l);u=l,l=d}}function p(t){t.attr("x",-n.bar.captureWidth/2).attr("width",n.bar.captureWidth)}function d(t){t.attr("visibility","visible").style("visibility","visible").attr("fill","yellow").attr("opacity",0)}function g(t){if(!t.brush.filterSpecified)return"0,"+t.height;for(var e,r,n,a=m(t.brush.filter.getConsolidated(),t.height),i=[0],o=a.length?a[0][0]:null,s=0;s<a.length;s++)r=(e=a[s])[1]-e[0],i.push(o),i.push(r),(n=s+1)<a.length&&(o=a[n][0]-e[1]);return i.push(t.height),i}function m(t,e){return t.map((function(t){return t.map((function(t){return Math.max(0,t*e)})).sort(s)}))}function v(){a.select(document.body).style("cursor",null)}function y(t){t.attr("stroke-dasharray",g)}function x(t,e){var r=a.select(t).selectAll(".highlight, .highlight-shadow");y(e?r.transition().duration(n.bar.snapDuration).each("end",e):r)}function b(t,e){var r,a=t.brush,i=NaN,o={};if(a.filterSpecified){var s=t.height,l=a.filter.getConsolidated(),c=m(l,s),u=NaN,h=NaN,f=NaN;for(r=0;r<=c.length;r++){var p=c[r];if(p&&p[0]<=e&&e<=p[1]){u=r;break}if(h=r?r-1:NaN,p&&p[0]>e){f=r;break}}if(i=u,isNaN(i)&&(i=isNaN(h)||isNaN(f)?isNaN(h)?f:h:e-c[h][1]<c[f][0]-e?h:f),!isNaN(i)){var d=c[i],g=function(t,e){var r=n.bar.handleHeight;if(!(e>t[1]+r||e<t[0]-r))return e>=.9*t[1]+.1*t[0]?"n":e<=.9*t[0]+.1*t[1]?"s":"ns"}(d,e);g&&(o.interval=l[i],o.intervalPix=d,o.region=g)}}if(t.ordinal&&!o.region){var v=t.unitTickvals,y=t.unitToPaddedPx.invert(e);for(r=0;r<v.length;r++){var x=[.25*v[Math.max(r-1,0)]+.75*v[r],.25*v[Math.min(r+1,v.length-1)]+.75*v[r]];if(y>=x[0]&&y<=x[1]){o.clickableOrdinalRange=x;break}}}return o}function _(t,e){a.event.sourceEvent.stopPropagation();var r=e.height-a.mouse(t)[1]-2*n.verticalPadding,i=e.brush.svgBrush;i.wasDragged=!0,i._dragging=!0,i.grabbingBar?i.newExtent=[r-i.grabPoint,r+i.barLength-i.grabPoint].map(e.unitToPaddedPx.invert):i.newExtent=[i.startExtent,e.unitToPaddedPx.invert(r)].sort(s),e.brush.filterSpecified=!0,i.extent=i.stayingIntervals.concat([i.newExtent]),i.brushCallback(e),x(t.parentNode)}function w(t,e){var r=b(e,e.height-a.mouse(t)[1]-2*n.verticalPadding),i="crosshair";r.clickableOrdinalRange?i="pointer":r.region&&(i=r.region+"-resize"),a.select(document.body).style("cursor",i)}function T(t){t.on("mousemove",(function(t){a.event.preventDefault(),t.parent.inBrushDrag||w(this,t)})).on("mouseleave",(function(t){t.parent.inBrushDrag||v()})).call(a.behavior.drag().on("dragstart",(function(t){!function(t,e){a.event.sourceEvent.stopPropagation();var r=e.height-a.mouse(t)[1]-2*n.verticalPadding,i=e.unitToPaddedPx.invert(r),o=e.brush,s=b(e,r),l=s.interval,c=o.svgBrush;if(c.wasDragged=!1,c.grabbingBar="ns"===s.region,c.grabbingBar){var u=l.map(e.unitToPaddedPx);c.grabPoint=r-u[0]-n.verticalPadding,c.barLength=u[1]-u[0]}c.clickableOrdinalRange=s.clickableOrdinalRange,c.stayingIntervals=e.multiselect&&o.filterSpecified?o.filter.getConsolidated():[],l&&(c.stayingIntervals=c.stayingIntervals.filter((function(t){return t[0]!==l[0]&&t[1]!==l[1]}))),c.startExtent=s.region?l["s"===s.region?1:0]:i,e.parent.inBrushDrag=!0,c.brushStartCallback()}(this,t)})).on("drag",(function(t){_(this,t)})).on("dragend",(function(t){!function(t,e){var r=e.brush,n=r.filter,i=r.svgBrush;i._dragging||(w(t,e),_(t,e),e.brush.svgBrush.wasDragged=!1),i._dragging=!1,a.event.sourceEvent.stopPropagation();var o=i.grabbingBar;if(i.grabbingBar=!1,i.grabLocation=void 0,e.parent.inBrushDrag=!1,v(),!i.wasDragged)return i.wasDragged=void 0,i.clickableOrdinalRange?r.filterSpecified&&e.multiselect?i.extent.push(i.clickableOrdinalRange):(i.extent=[i.clickableOrdinalRange],r.filterSpecified=!0):o?(i.extent=i.stayingIntervals,0===i.extent.length&&A(r)):A(r),i.brushCallback(e),x(t.parentNode),void i.brushEndCallback(r.filterSpecified?n.getConsolidated():[]);var s=function(){n.set(n.getConsolidated())};if(e.ordinal){var l=e.unitTickvals;l[l.length-1]<l[0]&&l.reverse(),i.newExtent=[f(0,l,i.newExtent[0],i.stayingIntervals),f(1,l,i.newExtent[1],i.stayingIntervals)];var c=i.newExtent[1]>i.newExtent[0];i.extent=i.stayingIntervals.concat(c?[i.newExtent]:[]),i.extent.length||A(r),i.brushCallback(e),c?x(t.parentNode,s):(s(),x(t.parentNode))}else s();i.brushEndCallback(r.filterSpecified?n.getConsolidated():[])}(this,t)})))}function k(t,e){return t[0]-e[0]}function A(t){t.filterSpecified=!1,t.svgBrush.extent=[[-1/0,1/0]]}function M(t){for(var e,r=t.slice(),n=[],a=r.shift();a;){for(e=a.slice();(a=r.shift())&&a[0]<=e[1];)e[1]=Math.max(e[1],a[1]);n.push(e)}return 1===n.length&&n[0][0]>n[0][1]&&(n=[]),n}e.exports={makeBrush:function(t,e,r,n,a,i){var o,l=function(){var t,e,r=[];return{set:function(n){1===(r=n.map((function(t){return t.slice().sort(s)})).sort(k)).length&&r[0][0]===-1/0&&r[0][1]===1/0&&(r=[[0,-1]]),t=M(r),e=r.reduce((function(t,e){return[Math.min(t[0],e[0]),Math.max(t[1],e[1])]}),[1/0,-1/0])},get:function(){return r.slice()},getConsolidated:function(){return t},getBounds:function(){return e}}}();return l.set(r),{filter:l,filterSpecified:e,svgBrush:{extent:[],brushStartCallback:n,brushCallback:(o=a,function(t){var e=t.brush,r=function(t){return t.svgBrush.extent.map((function(t){return t.slice()}))}(e).slice();e.filter.set(r),o()}),brushEndCallback:i}}},ensureAxisBrush:function(t){var e=t.selectAll("."+n.cn.axisBrush).data(o,i);e.enter().append("g").classed(n.cn.axisBrush,!0),function(t){var e=t.selectAll(".background").data(o);e.enter().append("rect").classed("background",!0).call(p).call(d).style("pointer-events","auto").attr("transform","translate(0 "+n.verticalPadding+")"),e.call(T).attr("height",(function(t){return t.height-n.verticalPadding}));var r=t.selectAll(".highlight-shadow").data(o);r.enter().append("line").classed("highlight-shadow",!0).attr("x",-n.bar.width/2).attr("stroke-width",n.bar.width+n.bar.strokeWidth).attr("stroke",n.bar.strokeColor).attr("opacity",n.bar.strokeOpacity).attr("stroke-linecap","butt"),r.attr("y1",(function(t){return t.height})).call(y);var a=t.selectAll(".highlight").data(o);a.enter().append("line").classed("highlight",!0).attr("x",-n.bar.width/2).attr("stroke-width",n.bar.width-n.bar.strokeWidth).attr("stroke",n.bar.fillColor).attr("opacity",n.bar.fillOpacity).attr("stroke-linecap","butt"),a.attr("y1",(function(t){return t.height})).call(y)}(e)},cleanRanges:function(t,e){if(Array.isArray(t[0])?(t=t.map((function(t){return t.sort(s)})),t=e.multiselect?M(t.sort(k)):[t[0]]):t=[t.sort(s)],e.tickvals){var r=e.tickvals.slice().sort(s);if(!(t=t.map((function(t){var e=[f(0,r,t[0],[]),f(1,r,t[1],[])];if(e[1]>e[0])return e})).filter((function(t){return t}))).length)return}return t.length>1?t:t[0]}}},{"../../lib":728,"../../lib/gup":726,"./constants":1100,d3:164}],1098:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../plots/get_data").getModuleCalcData,i=t("./plot"),o=t("../../constants/xmlns_namespaces");r.name="parcoords",r.plot=function(t){var e=a(t.calcdata,"parcoords")[0];e.length&&i(t,e)},r.clean=function(t,e,r,n){var a=n._has&&n._has("parcoords"),i=e._has&&e._has("parcoords");a&&!i&&(n._paperdiv.selectAll(".parcoords").remove(),n._glimages.selectAll("*").remove())},r.toSVG=function(t){var e=t._fullLayout._glimages,r=n.select(t).selectAll(".svg-container");r.filter((function(t,e){return e===r.size()-1})).selectAll(".gl-canvas-context, .gl-canvas-focus").each((function(){var t=this.toDataURL("image/png");e.append("svg:image").attr({xmlns:o.svg,"xlink:href":t,preserveAspectRatio:"none",x:0,y:0,width:this.width,height:this.height})})),window.setTimeout((function(){n.selectAll("#filterBarPattern").attr("id","filterBarPattern")}),60)}},{"../../constants/xmlns_namespaces":705,"../../plots/get_data":813,"./plot":1107,d3:164}],1099:[function(t,e,r){"use strict";var n=t("../../lib").isArrayOrTypedArray,a=t("../../components/colorscale"),i=t("../../lib/gup").wrap;e.exports=function(t,e){var r,o;return a.hasColorscale(e,"line")&&n(e.line.color)?(r=e.line.color,o=a.extractOpts(e.line).colorscale,a.calc(t,e,{vals:r,containerStr:"line",cLetter:"c"})):(r=function(t){for(var e=new Array(t),r=0;r<t;r++)e[r]=.5;return e}(e._length),o=[[0,e.line.color],[1,e.line.color]]),i({lineColor:r,cscale:o})}},{"../../components/colorscale":607,"../../lib":728,"../../lib/gup":726}],1100:[function(t,e,r){"use strict";e.exports={maxDimensionCount:60,overdrag:45,verticalPadding:2,tickDistance:50,canvasPixelRatio:1,blockLineCount:5e3,layers:["contextLineLayer","focusLineLayer","pickLineLayer"],axisTitleOffset:28,axisExtentOffset:10,deselectedLineColor:"#777",bar:{width:4,captureWidth:10,fillColor:"magenta",fillOpacity:1,snapDuration:150,snapRatio:.25,snapClose:.01,strokeColor:"white",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"}}},{}],1101:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../components/colorscale/helpers").hasColorscale,i=t("../../components/colorscale/defaults"),o=t("../../plots/domain").defaults,s=t("../../plots/array_container_defaults"),l=t("../../plots/cartesian/axes"),c=t("./attributes"),u=t("./axisbrush"),h=t("./constants").maxDimensionCount,f=t("./merge_length");function p(t,e,r,a){function i(r,a){return n.coerce(t,e,c.dimensions,r,a)}var o=i("values"),s=i("visible");if(o&&o.length||(s=e.visible=!1),s){i("label"),i("tickvals"),i("ticktext"),i("tickformat");var h=i("range");e._ax={_id:"y",type:"linear",showexponent:"all",exponentformat:"B",range:h},l.setConvert(e._ax,a.layout),i("multiselect");var f=i("constraintrange");f&&(e.constraintrange=u.cleanRanges(f,e))}}e.exports=function(t,e,r,l){function u(r,a){return n.coerce(t,e,c,r,a)}var d=t.dimensions;Array.isArray(d)&&d.length>h&&(n.log("parcoords traces support up to "+h+" dimensions at the moment"),d.splice(h));var g=s(t,e,{name:"dimensions",layout:l,handleItemDefaults:p}),m=function(t,e,r,o,s){var l=s("line.color",r);if(a(t,"line")&&n.isArrayOrTypedArray(l)){if(l.length)return s("line.colorscale"),i(t,e,o,s,{prefix:"line.",cLetter:"c"}),l.length;e.line.color=r}return 1/0}(t,e,r,l,u);o(e,l,u),Array.isArray(g)&&g.length||(e.visible=!1),f(e,g,"values",m);var v={family:l.font.family,size:Math.round(l.font.size/1.2),color:l.font.color};n.coerceFont(u,"labelfont",v),n.coerceFont(u,"tickfont",v),n.coerceFont(u,"rangefont",v),u("labelangle"),u("labelside")}},{"../../components/colorscale/defaults":605,"../../components/colorscale/helpers":606,"../../lib":728,"../../plots/array_container_defaults":772,"../../plots/cartesian/axes":776,"../../plots/domain":803,"./attributes":1096,"./axisbrush":1097,"./constants":1100,"./merge_length":1105}],1102:[function(t,e,r){"use strict";var n=t("../../lib").isTypedArray;r.convertTypedArray=function(t){return n(t)?Array.prototype.slice.call(t):t},r.isOrdinal=function(t){return!!t.tickvals},r.isVisible=function(t){return t.visible||!("visible"in t)}},{"../../lib":728}],1103:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),supplyDefaults:t("./defaults"),calc:t("./calc"),plot:t("./plot"),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcoords",basePlotModule:t("./base_plot"),categories:["gl","regl","noOpacity","noHover"],meta:{}}},{"./attributes":1096,"./base_plot":1098,"./calc":1099,"./defaults":1101,"./plot":1107}],1104:[function(t,e,r){"use strict";var n=t("glslify"),a=n(["precision highp float;\n#define GLSLIFY 1\n\nvarying vec4 fragColor;\n\nattribute vec4 p01_04, p05_08, p09_12, p13_16,\n p17_20, p21_24, p25_28, p29_32,\n p33_36, p37_40, p41_44, p45_48,\n p49_52, p53_56, p57_60, colors;\n\nuniform mat4 dim0A, dim1A, dim0B, dim1B, dim0C, dim1C, dim0D, dim1D,\n loA, hiA, loB, hiB, loC, hiC, loD, hiD;\n\nuniform vec2 resolution, viewBoxPos, viewBoxSize;\nuniform sampler2D mask, palette;\nuniform float maskHeight;\nuniform float drwLayer; // 0: context, 1: focus, 2: pick\nuniform vec4 contextColor;\n\nbool isPick = (drwLayer > 1.5);\nbool isContext = (drwLayer < 0.5);\n\nconst vec4 ZEROS = vec4(0.0, 0.0, 0.0, 0.0);\nconst vec4 UNITS = vec4(1.0, 1.0, 1.0, 1.0);\n\nfloat val(mat4 p, mat4 v) {\n return dot(matrixCompMult(p, v) * UNITS, UNITS);\n}\n\nfloat axisY(float ratio, mat4 A, mat4 B, mat4 C, mat4 D) {\n float y1 = val(A, dim0A) + val(B, dim0B) + val(C, dim0C) + val(D, dim0D);\n float y2 = val(A, dim1A) + val(B, dim1B) + val(C, dim1C) + val(D, dim1D);\n return y1 * (1.0 - ratio) + y2 * ratio;\n}\n\nint iMod(int a, int b) {\n return a - b * (a / b);\n}\n\nbool fOutside(float p, float lo, float hi) {\n return (lo < hi) && (lo > p || p > hi);\n}\n\nbool vOutside(vec4 p, vec4 lo, vec4 hi) {\n return (\n fOutside(p[0], lo[0], hi[0]) ||\n fOutside(p[1], lo[1], hi[1]) ||\n fOutside(p[2], lo[2], hi[2]) ||\n fOutside(p[3], lo[3], hi[3])\n );\n}\n\nbool mOutside(mat4 p, mat4 lo, mat4 hi) {\n return (\n vOutside(p[0], lo[0], hi[0]) ||\n vOutside(p[1], lo[1], hi[1]) ||\n vOutside(p[2], lo[2], hi[2]) ||\n vOutside(p[3], lo[3], hi[3])\n );\n}\n\nbool outsideBoundingBox(mat4 A, mat4 B, mat4 C, mat4 D) {\n return mOutside(A, loA, hiA) ||\n mOutside(B, loB, hiB) ||\n mOutside(C, loC, hiC) ||\n mOutside(D, loD, hiD);\n}\n\nbool outsideRasterMask(mat4 A, mat4 B, mat4 C, mat4 D) {\n mat4 pnts[4];\n pnts[0] = A;\n pnts[1] = B;\n pnts[2] = C;\n pnts[3] = D;\n\n for(int i = 0; i < 4; ++i) {\n for(int j = 0; j < 4; ++j) {\n for(int k = 0; k < 4; ++k) {\n if(0 == iMod(\n int(255.0 * texture2D(mask,\n vec2(\n (float(i * 2 + j / 2) + 0.5) / 8.0,\n (pnts[i][j][k] * (maskHeight - 1.0) + 1.0) / maskHeight\n ))[3]\n ) / int(pow(2.0, float(iMod(j * 4 + k, 8)))),\n 2\n )) return true;\n }\n }\n }\n return false;\n}\n\nvec4 position(bool isContext, float v, mat4 A, mat4 B, mat4 C, mat4 D) {\n float x = 0.5 * sign(v) + 0.5;\n float y = axisY(x, A, B, C, D);\n float z = 1.0 - abs(v);\n\n z += isContext ? 0.0 : 2.0 * float(\n outsideBoundingBox(A, B, C, D) ||\n outsideRasterMask(A, B, C, D)\n );\n\n return vec4(\n 2.0 * (vec2(x, y) * viewBoxSize + viewBoxPos) / resolution - 1.0,\n z,\n 1.0\n );\n}\n\nvoid main() {\n mat4 A = mat4(p01_04, p05_08, p09_12, p13_16);\n mat4 B = mat4(p17_20, p21_24, p25_28, p29_32);\n mat4 C = mat4(p33_36, p37_40, p41_44, p45_48);\n mat4 D = mat4(p49_52, p53_56, p57_60, ZEROS);\n\n float v = colors[3];\n\n gl_Position = position(isContext, v, A, B, C, D);\n\n fragColor =\n isContext ? vec4(contextColor) :\n isPick ? vec4(colors.rgb, 1.0) : texture2D(palette, vec2(abs(v), 0.5));\n}\n"]),i=n(["precision highp float;\n#define GLSLIFY 1\n\nvarying vec4 fragColor;\n\nvoid main() {\n gl_FragColor = fragColor;\n}\n"]),o=t("./constants").maxDimensionCount,s=t("../../lib"),l=new Uint8Array(4),c=new Uint8Array(4),u={shape:[256,1],format:"rgba",type:"uint8",mag:"nearest",min:"nearest"};function h(t,e,r,n,a){var i=t._gl;i.enable(i.SCISSOR_TEST),i.scissor(e,r,n,a),t.clear({color:[0,0,0,0],depth:1})}function f(t,e,r,n,a,i){var o=i.key;r.drawCompleted||(!function(t){t.read({x:0,y:0,width:1,height:1,data:l})}(t),r.drawCompleted=!0),function s(l){var c=Math.min(n,a-l*n);0===l&&(window.cancelAnimationFrame(r.currentRafs[o]),delete r.currentRafs[o],h(t,i.scissorX,i.scissorY,i.scissorWidth,i.viewBoxSize[1])),r.clearOnly||(i.count=2*c,i.offset=2*l*n,e(i),l*n+c<a&&(r.currentRafs[o]=window.requestAnimationFrame((function(){s(l+1)}))),r.drawCompleted=!1)}(0)}function p(t,e){for(var r=new Array(256),n=0;n<256;n++)r[n]=t(n/255).concat(e);return r}function d(t,e){return(t>>>8*e)%256/255}function g(t,e,r){for(var n=new Array(8*e),a=0,i=0;i<e;i++)for(var o=0;o<2;o++)for(var s=0;s<4;s++){var l=4*t+s,c=r[64*i+l];63===l&&0===o&&(c*=-1),n[a++]=c}return n}function m(t){var e="0"+t;return e.substr(e.length-2)}function v(t){return t<o?"p"+m(t+1)+"_"+m(t+4):"colors"}function y(t,e,r,n,a,i,o,l,c,u,h,f,p){for(var d=[[],[]],g=0;g<64;g++)d[0][g]=g===a?1:0,d[1][g]=g===i?1:0;var m=t.lines.canvasOverdrag,v=t.domain,y=t.canvasWidth,x=t.canvasHeight,b=t.deselectedLines.color;return s.extendFlat({key:h,resolution:[y,x],viewBoxPos:[o+m,l],viewBoxSize:[c,u],i0:a,i1:i,dim0A:d[0].slice(0,16),dim0B:d[0].slice(16,32),dim0C:d[0].slice(32,48),dim0D:d[0].slice(48,64),dim1A:d[1].slice(0,16),dim1B:d[1].slice(16,32),dim1C:d[1].slice(32,48),dim1D:d[1].slice(48,64),drwLayer:f,contextColor:[b[0]/255,b[1]/255,b[2]/255,b[3]<1?b[3]:Math.max(1/255,Math.pow(1/t.lines.color.length,1/3))],scissorX:(n===e?0:o+m)+(t.pad.l-m)+t.layoutWidth*v.x[0],scissorWidth:(n===r?y-o+m:c+.5)+(n===e?o+m:0),scissorY:l+t.pad.b+t.layoutHeight*v.y[0],scissorHeight:u,viewportX:t.pad.l-m+t.layoutWidth*v.x[0],viewportY:t.pad.b+t.layoutHeight*v.y[0],viewportWidth:y,viewportHeight:x},p)}function x(t){var e=Math.max(0,Math.floor(2047*t[0]),0),r=Math.min(2047,Math.ceil(2047*t[1]),2047);return[Math.min(e,r),Math.max(e,r)]}e.exports=function(t,e){var r,n,l,m,b,_=e.context,w=e.pick,T=e.regl,k={currentRafs:{},drawCompleted:!0,clearOnly:!1},A=function(t){for(var e={},r=0;r<=o;r+=4)e[v(r)]=t.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)});return e}(T),M=T.texture(u),S=[];C(e);var E=T({profile:!1,blend:{enable:_,func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:1,dstAlpha:1},equation:{rgb:"add",alpha:"add"},color:[0,0,0,0]},depth:{enable:!_,mask:!0,func:"less",range:[0,1]},cull:{enable:!0,face:"back"},scissor:{enable:!0,box:{x:T.prop("scissorX"),y:T.prop("scissorY"),width:T.prop("scissorWidth"),height:T.prop("scissorHeight")}},viewport:{x:T.prop("viewportX"),y:T.prop("viewportY"),width:T.prop("viewportWidth"),height:T.prop("viewportHeight")},dither:!1,vert:a,frag:i,primitive:"lines",lineWidth:1,attributes:A,uniforms:{resolution:T.prop("resolution"),viewBoxPos:T.prop("viewBoxPos"),viewBoxSize:T.prop("viewBoxSize"),dim0A:T.prop("dim0A"),dim1A:T.prop("dim1A"),dim0B:T.prop("dim0B"),dim1B:T.prop("dim1B"),dim0C:T.prop("dim0C"),dim1C:T.prop("dim1C"),dim0D:T.prop("dim0D"),dim1D:T.prop("dim1D"),loA:T.prop("loA"),hiA:T.prop("hiA"),loB:T.prop("loB"),hiB:T.prop("hiB"),loC:T.prop("loC"),hiC:T.prop("hiC"),loD:T.prop("loD"),hiD:T.prop("hiD"),palette:M,contextColor:T.prop("contextColor"),mask:T.prop("maskTexture"),drwLayer:T.prop("drwLayer"),maskHeight:T.prop("maskHeight")},offset:T.prop("offset"),count:T.prop("count")});function C(t){r=t.model,n=t.viewModel,l=n.dimensions.slice(),m=l[0]?l[0].values.length:0;var e=r.lines,a=w?e.color.map((function(t,r){return r/e.color.length})):e.color,i=function(t,e,r){for(var n,a=new Array(t*(o+4)),i=0,s=0;s<t;s++){for(var l=0;l<o;l++)a[i++]=l<e.length?e[l].paddedUnitValues[s]:.5;a[i++]=d(s,2),a[i++]=d(s,1),a[i++]=d(s,0),a[i++]=(n=r[s],Math.max(1e-6,Math.min(.999999,n)))}return a}(m,l,a);!function(t,e,r){for(var n=0;n<=o;n+=4)t[v(n)](g(n/4,e,r))}(A,m,i),_||w||(M=T.texture(s.extendFlat({data:p(r.unitToColor,255)},u)))}return{render:function(t,e,n){var a,i,o,s=t.length,c=1/0,u=-1/0;for(a=0;a<s;a++)t[a].dim0.canvasX<c&&(c=t[a].dim0.canvasX,i=a),t[a].dim1.canvasX>u&&(u=t[a].dim1.canvasX,o=a);0===s&&h(T,0,0,r.canvasWidth,r.canvasHeight);var p=function(t){var e,r,n,a=[[],[]];for(n=0;n<64;n++){var i=!t&&n<l.length?l[n].brush.filter.getBounds():[-1/0,1/0];a[0][n]=i[0],a[1][n]=i[1]}var o=new Array(16384);for(e=0;e<16384;e++)o[e]=255;if(!t)for(e=0;e<l.length;e++){var s=e%8,c=(e-s)/8,u=Math.pow(2,s),h=l[e].brush.filter.get();if(!(h.length<2)){var f=x(h[0])[1];for(r=1;r<h.length;r++){var p=x(h[r]);for(n=f+1;n<p[0];n++)o[8*n+c]&=~u;f=Math.max(f,p[1])}}}var d={shape:[8,2048],format:"alpha",type:"uint8",mag:"nearest",min:"nearest",data:o};return b?b(d):b=T.texture(d),{maskTexture:b,maskHeight:2048,loA:a[0].slice(0,16),loB:a[0].slice(16,32),loC:a[0].slice(32,48),loD:a[0].slice(48,64),hiA:a[1].slice(0,16),hiB:a[1].slice(16,32),hiC:a[1].slice(32,48),hiD:a[1].slice(48,64)}}(_);for(a=0;a<s;a++){var d=t[a],g=d.dim0.crossfilterDimensionIndex,v=d.dim1.crossfilterDimensionIndex,A=d.canvasX,M=d.canvasY,C=A+d.panelSizeX;if(e||!S[g]||S[g][0]!==A||S[g][1]!==C){S[g]=[A,C];var L=y(r,i,o,a,g,v,A,M,d.panelSizeX,d.panelSizeY,d.dim0.crossfilterDimensionIndex,_?0:w?2:1,p);k.clearOnly=n;var P=e?r.lines.blockLineCount:m;f(T,E,k,P,m,L)}}},readPixel:function(t,e){return T.read({x:t,y:e,width:1,height:1,data:c}),c},readPixels:function(t,e,r,n){var a=new Uint8Array(4*r*n);return T.read({x:t,y:e,width:r,height:n,data:a}),a},destroy:function(){for(var e in t.style["pointer-events"]="none",M.destroy(),b&&b.destroy(),A)A[e].destroy()},update:C}}},{"../../lib":728,"./constants":1100,glslify:408}],1105:[function(t,e,r){"use strict";e.exports=function(t,e,r,n){var a,i;for(n||(n=1/0),a=0;a<e.length;a++)(i=e[a]).visible&&(n=Math.min(n,i[r].length));for(n===1/0&&(n=0),t._length=n,a=0;a<e.length;a++)(i=e[a]).visible&&(i._length=n);return n}},{}],1106:[function(t,e,r){"use strict";var n=t("d3"),a=t("color-rgba"),i=t("../../plots/cartesian/axes"),o=t("../../lib"),s=t("../../lib/svg_text_utils"),l=t("../../components/drawing"),c=t("../../components/colorscale"),u=t("../../lib/gup"),h=u.keyFun,f=u.repeat,p=u.unwrap,d=t("./helpers"),g=t("./constants"),m=t("./axisbrush"),v=t("./lines");function y(t,e,r){return o.aggNums(t,null,e,r)}function x(t,e){return _(y(Math.min,t,e),y(Math.max,t,e))}function b(t){var e=t.range;return e?_(e[0],e[1]):x(t.values,t._length)}function _(t,e){return!isNaN(t)&&isFinite(t)||(t=0),!isNaN(e)&&isFinite(e)||(e=0),t===e&&(0===t?(t-=1,e+=1):(t*=.9,e*=1.1)),[t,e]}function w(t,e,r,a,i){var o,s,l=b(r);return a?n.scale.ordinal().domain(a.map((o=n.format(r.tickformat),s=i,s?function(t,e){var r=s[e];return null==r?o(t):r}:o))).range(a.map((function(r){var n=(r-l[0])/(l[1]-l[0]);return t-e+n*(2*e-t)}))):n.scale.linear().domain(l).range([t-e,e])}function T(t){if(t.tickvals){var e=b(t);return n.scale.ordinal().domain(t.tickvals).range(t.tickvals.map((function(t){return(t-e[0])/(e[1]-e[0])})))}}function k(t){var e=t.map((function(t){return t[0]})),r=t.map((function(t){var e=a(t[1]);return n.rgb("rgb("+e[0]+","+e[1]+","+e[2]+")")})),i="rgb".split("").map((function(t){return n.scale.linear().clamp(!0).domain(e).range(r.map((a=t,function(t){return t[a]})));var a}));return function(t){return i.map((function(e){return e(t)}))}}function A(t){return t.dimensions.some((function(t){return t.brush.filterSpecified}))}function M(t,e,r){var i=p(e),s=i.trace,l=d.convertTypedArray(i.lineColor),u=s.line,h={color:a(g.deselectedLineColor)},f=c.extractOpts(u),m=f.reversescale?c.flipScale(i.cscale):i.cscale,v=s.domain,y=s.dimensions,x=t.width,_=s.labelangle,w=s.labelside,T=s.labelfont,A=s.tickfont,M=s.rangefont,S=o.extendDeepNoArrays({},u,{color:l.map(n.scale.linear().domain(b({values:l,range:[f.min,f.max],_length:s._length}))),blockLineCount:g.blockLineCount,canvasOverdrag:g.overdrag*g.canvasPixelRatio}),E=Math.floor(x*(v.x[1]-v.x[0])),C=Math.floor(t.height*(v.y[1]-v.y[0])),L=t.margin||{l:80,r:80,t:100,b:80},P=E,I=C;return{key:r,colCount:y.filter(d.isVisible).length,dimensions:y,tickDistance:g.tickDistance,unitToColor:k(m),lines:S,deselectedLines:h,labelAngle:_,labelSide:w,labelFont:T,tickFont:A,rangeFont:M,layoutWidth:x,layoutHeight:t.height,domain:v,translateX:v.x[0]*x,translateY:t.height-v.y[1]*t.height,pad:L,canvasWidth:P*g.canvasPixelRatio+2*S.canvasOverdrag,canvasHeight:I*g.canvasPixelRatio,width:P,height:I,canvasPixelRatio:g.canvasPixelRatio}}function S(t,e,r){var a=r.width,i=r.height,s=r.dimensions,l=r.canvasPixelRatio,c=function(t){return a*t/Math.max(1,r.colCount-1)},u=g.verticalPadding/i,h=function(t,e){return n.scale.linear().range([e,t-e])}(i,g.verticalPadding),f={key:r.key,xScale:c,model:r,inBrushDrag:!1},p={};return f.dimensions=s.filter(d.isVisible).map((function(a,s){var v=function(t,e){return n.scale.linear().domain(b(t)).range([e,1-e])}(a,u),y=p[a.label];p[a.label]=(y||0)+1;var x=a.label+(y?"__"+y:""),_=a.constraintrange,k=_&&_.length;k&&!Array.isArray(_[0])&&(_=[_]);var M=k?_.map((function(t){return t.map(v)})):[[-1/0,1/0]],S=a.values;S.length>a._length&&(S=S.slice(0,a._length));var E,C=a.tickvals;function L(t,e){return{val:t,text:E[e]}}function P(t,e){return t.val-e.val}if(Array.isArray(C)&&C.length){E=a.ticktext,Array.isArray(E)&&E.length?E.length>C.length?E=E.slice(0,C.length):C.length>E.length&&(C=C.slice(0,E.length)):E=C.map(n.format(a.tickformat));for(var I=1;I<C.length;I++)if(C[I]<C[I-1]){for(var z=C.map(L).sort(P),O=0;O<C.length;O++)C[O]=z[O].val,E[O]=z[O].text;break}}else C=void 0;return S=d.convertTypedArray(S),{key:x,label:a.label,tickFormat:a.tickformat,tickvals:C,ticktext:E,ordinal:d.isOrdinal(a),multiselect:a.multiselect,xIndex:s,crossfilterDimensionIndex:s,visibleIndex:a._index,height:i,values:S,paddedUnitValues:S.map(v),unitTickvals:C&&C.map(v),xScale:c,x:c(s),canvasX:c(s)*l,unitToPaddedPx:h,domainScale:w(i,g.verticalPadding,a,C,E),ordinalScale:T(a),parent:f,model:r,brush:m.makeBrush(t,k,M,(function(){t.linePickActive(!1)}),(function(){var e=f;e.focusLayer&&e.focusLayer.render(e.panels,!0);var r=A(e);!t.contextShown()&&r?(e.contextLayer&&e.contextLayer.render(e.panels,!0),t.contextShown(!0)):t.contextShown()&&!r&&(e.contextLayer&&e.contextLayer.render(e.panels,!0,!0),t.contextShown(!1))}),(function(r){if(f.focusLayer.render(f.panels,!0),f.pickLayer&&f.pickLayer.render(f.panels,!0),t.linePickActive(!0),e&&e.filterChanged){var n=v.invert,i=r.map((function(t){return t.map(n).sort(o.sorterAsc)})).sort((function(t,e){return t[0]-e[0]}));e.filterChanged(f.key,a._index,i)}}))}})),f}function E(t){t.classed(g.cn.axisExtentText,!0).attr("text-anchor","middle").style("cursor","default").style("user-select","none")}function C(t,e){var r="top"===e?1:-1,n=t*Math.PI/180;return{dir:r,dx:Math.sin(n),dy:Math.cos(n),degrees:t}}function L(t,e){for(var r=e.panels||(e.panels=[]),n=t.data(),a=0;a<n.length-1;a++){var i=r[a]||(r[a]={}),o=n[a],s=n[a+1];i.dim0=o,i.dim1=s,i.canvasX=o.canvasX,i.panelSizeX=s.canvasX-o.canvasX,i.panelSizeY=e.model.canvasHeight,i.y=0,i.canvasY=0}}function P(t,e){return i.tickText(t._ax,e,!1).text}function I(t,e){if(t.ordinal)return"";var r=t.domainScale.domain(),n=r[e?r.length-1:0];return P(t.model.dimensions[t.visibleIndex],n)}e.exports=function(t,e,r,a){var c=t._fullLayout,u=c._toppaper,y=c._glcontainer;!function(t){for(var e=0;e<t.length;e++)for(var r=0;r<t[e].length;r++)for(var n=t[e][r].trace,a=n.dimensions,o=0;o<a.length;o++){var s=a[o].values,l=a[o]._ax;l&&(l.range?l.range=_(l.range[0],l.range[1]):l.range=x(s,n._length),l.dtick||(l.dtick=.01*(Math.abs(l.range[1]-l.range[0])||1)),l.tickformat=a[o].tickformat,i.calcTicks(l),l.cleanRange())}}(e);var b,w,T=(b=!0,w=!1,{linePickActive:function(t){return arguments.length?b=!!t:b},contextShown:function(t){return arguments.length?w=!!t:w}}),k=e.filter((function(t){return p(t).trace.visible})).map(M.bind(0,r)).map(S.bind(0,T,a));y.each((function(t,e){return o.extendFlat(t,k[e])}));var z=y.selectAll(".gl-canvas").each((function(t){t.viewModel=k[0],t.model=t.viewModel?t.viewModel.model:null})),O=null;z.filter((function(t){return t.pick})).style("pointer-events","auto").on("mousemove",(function(t){if(T.linePickActive()&&t.lineLayer&&a&&a.hover){var e=n.event,r=this.width,i=this.height,o=n.mouse(this),s=o[0],l=o[1];if(s<0||l<0||s>=r||l>=i)return;var c=t.lineLayer.readPixel(s,i-1-l),u=0!==c[3],h=u?c[2]+256*(c[1]+256*c[0]):null,f={x:s,y:l,clientX:e.clientX,clientY:e.clientY,dataIndex:t.model.key,curveNumber:h};h!==O&&(u?a.hover(f):a.unhover&&a.unhover(f),O=h)}})),z.style("opacity",(function(t){return t.pick?0:1})),u.style("background","rgba(255, 255, 255, 0)");var D=u.selectAll("."+g.cn.parcoords).data(k,h);D.exit().remove(),D.enter().append("g").classed(g.cn.parcoords,!0).style("shape-rendering","crispEdges").style("pointer-events","none"),D.attr("transform",(function(t){return"translate("+t.model.translateX+","+t.model.translateY+")"}));var R=D.selectAll("."+g.cn.parcoordsControlView).data(f,h);R.enter().append("g").classed(g.cn.parcoordsControlView,!0),R.attr("transform",(function(t){return"translate("+t.model.pad.l+","+t.model.pad.t+")"}));var F=R.selectAll("."+g.cn.yAxis).data((function(t){return t.dimensions}),h);F.enter().append("g").classed(g.cn.yAxis,!0),R.each((function(t){L(F,t)})),z.each((function(t){if(t.viewModel){!t.lineLayer||a?t.lineLayer=v(this,t):t.lineLayer.update(t),(t.key||0===t.key)&&(t.viewModel[t.key]=t.lineLayer);var e=!t.context||a;t.lineLayer.render(t.viewModel.panels,e)}})),F.attr("transform",(function(t){return"translate("+t.xScale(t.xIndex)+", 0)"})),F.call(n.behavior.drag().origin((function(t){return t})).on("drag",(function(t){var e=t.parent;T.linePickActive(!1),t.x=Math.max(-g.overdrag,Math.min(t.model.width+g.overdrag,n.event.x)),t.canvasX=t.x*t.model.canvasPixelRatio,F.sort((function(t,e){return t.x-e.x})).each((function(e,r){e.xIndex=r,e.x=t===e?e.x:e.xScale(e.xIndex),e.canvasX=e.x*e.model.canvasPixelRatio})),L(F,e),F.filter((function(e){return 0!==Math.abs(t.xIndex-e.xIndex)})).attr("transform",(function(t){return"translate("+t.xScale(t.xIndex)+", 0)"})),n.select(this).attr("transform","translate("+t.x+", 0)"),F.each((function(r,n,a){a===t.parent.key&&(e.dimensions[n]=r)})),e.contextLayer&&e.contextLayer.render(e.panels,!1,!A(e)),e.focusLayer.render&&e.focusLayer.render(e.panels)})).on("dragend",(function(t){var e=t.parent;t.x=t.xScale(t.xIndex),t.canvasX=t.x*t.model.canvasPixelRatio,L(F,e),n.select(this).attr("transform",(function(t){return"translate("+t.x+", 0)"})),e.contextLayer&&e.contextLayer.render(e.panels,!1,!A(e)),e.focusLayer&&e.focusLayer.render(e.panels),e.pickLayer&&e.pickLayer.render(e.panels,!0),T.linePickActive(!0),a&&a.axesMoved&&a.axesMoved(e.key,e.dimensions.map((function(t){return t.crossfilterDimensionIndex})))}))),F.exit().remove();var B=F.selectAll("."+g.cn.axisOverlays).data(f,h);B.enter().append("g").classed(g.cn.axisOverlays,!0),B.selectAll("."+g.cn.axis).remove();var N=B.selectAll("."+g.cn.axis).data(f,h);N.enter().append("g").classed(g.cn.axis,!0),N.each((function(t){var e=t.model.height/t.model.tickDistance,r=t.domainScale,a=r.domain();n.select(this).call(n.svg.axis().orient("left").tickSize(4).outerTickSize(2).ticks(e,t.tickFormat).tickValues(t.ordinal?a:null).tickFormat((function(e){return d.isOrdinal(t)?e:P(t.model.dimensions[t.visibleIndex],e)})).scale(r)),l.font(N.selectAll("text"),t.model.tickFont)})),N.selectAll(".domain, .tick>line").attr("fill","none").attr("stroke","black").attr("stroke-opacity",.25).attr("stroke-width","1px"),N.selectAll("text").style("text-shadow","1px 1px 1px #fff, -1px -1px 1px #fff, 1px -1px 1px #fff, -1px 1px 1px #fff").style("cursor","default").style("user-select","none");var j=B.selectAll("."+g.cn.axisHeading).data(f,h);j.enter().append("g").classed(g.cn.axisHeading,!0);var V=j.selectAll("."+g.cn.axisTitle).data(f,h);V.enter().append("text").classed(g.cn.axisTitle,!0).attr("text-anchor","middle").style("cursor","ew-resize").style("user-select","none").style("pointer-events","auto"),V.text((function(t){return t.label})).each((function(e){var r=n.select(this);l.font(r,e.model.labelFont),s.convertToTspans(r,t)})).attr("transform",(function(t){var e=C(t.model.labelAngle,t.model.labelSide),r=g.axisTitleOffset;return(e.dir>0?"":"translate(0,"+(2*r+t.model.height)+")")+"rotate("+e.degrees+")translate("+-r*e.dx+","+-r*e.dy+")"})).attr("text-anchor",(function(t){var e=C(t.model.labelAngle,t.model.labelSide);return 2*Math.abs(e.dx)>Math.abs(e.dy)?e.dir*e.dx<0?"start":"end":"middle"}));var U=B.selectAll("."+g.cn.axisExtent).data(f,h);U.enter().append("g").classed(g.cn.axisExtent,!0);var q=U.selectAll("."+g.cn.axisExtentTop).data(f,h);q.enter().append("g").classed(g.cn.axisExtentTop,!0),q.attr("transform","translate(0,"+-g.axisExtentOffset+")");var H=q.selectAll("."+g.cn.axisExtentTopText).data(f,h);H.enter().append("text").classed(g.cn.axisExtentTopText,!0).call(E),H.text((function(t){return I(t,!0)})).each((function(t){l.font(n.select(this),t.model.rangeFont)}));var G=U.selectAll("."+g.cn.axisExtentBottom).data(f,h);G.enter().append("g").classed(g.cn.axisExtentBottom,!0),G.attr("transform",(function(t){return"translate(0,"+(t.model.height+g.axisExtentOffset)+")"}));var Y=G.selectAll("."+g.cn.axisExtentBottomText).data(f,h);Y.enter().append("text").classed(g.cn.axisExtentBottomText,!0).attr("dy","0.75em").call(E),Y.text((function(t){return I(t,!1)})).each((function(t){l.font(n.select(this),t.model.rangeFont)})),m.ensureAxisBrush(B)}},{"../../components/colorscale":607,"../../components/drawing":617,"../../lib":728,"../../lib/gup":726,"../../lib/svg_text_utils":752,"../../plots/cartesian/axes":776,"./axisbrush":1097,"./constants":1100,"./helpers":1102,"./lines":1104,"color-rgba":124,d3:164}],1107:[function(t,e,r){"use strict";var n=t("./parcoords"),a=t("../../lib/prepare_regl"),i=t("./helpers").isVisible;function o(t,e,r){var n=e.indexOf(r),a=t.indexOf(n);return-1===a&&(a+=e.length),a}e.exports=function(t,e){var r=t._fullLayout;if(a(t)){var s={},l={},c={},u={},h=r._size;e.forEach((function(e,r){var n=e[0].trace;c[r]=n.index;var a=u[r]=n._fullInput.index;s[r]=t.data[a].dimensions,l[r]=t.data[a].dimensions.slice()}));n(t,e,{width:h.w,height:h.h,margin:{t:h.t,r:h.r,b:h.b,l:h.l}},{filterChanged:function(e,n,a){var i=l[e][n],o=a.map((function(t){return t.slice()})),s="dimensions["+n+"].constraintrange",h=r._tracePreGUI[t._fullData[c[e]]._fullInput.uid];if(void 0===h[s]){var f=i.constraintrange;h[s]=f||null}var p=t._fullData[c[e]].dimensions[n];o.length?(1===o.length&&(o=o[0]),i.constraintrange=o,p.constraintrange=o.slice(),o=[o]):(delete i.constraintrange,delete p.constraintrange,o=null);var d={};d[s]=o,t.emit("plotly_restyle",[d,[u[e]]])},hover:function(e){t.emit("plotly_hover",e)},unhover:function(e){t.emit("plotly_unhover",e)},axesMoved:function(e,r){var n=function(t,e){return function(r,n){return o(t,e,r)-o(t,e,n)}}(r,l[e].filter(i));s[e].sort(n),l[e].filter((function(t){return!i(t)})).sort((function(t){return l[e].indexOf(t)})).forEach((function(t){s[e].splice(s[e].indexOf(t),1),s[e].splice(l[e].indexOf(t),0,t)})),t.emit("plotly_restyle",[{dimensions:[s[e]]},[u[e]]])}})}}},{"../../lib/prepare_regl":741,"./helpers":1102,"./parcoords":1106}],1108:[function(t,e,r){"use strict";var n=t("../../plots/attributes"),a=t("../../plots/domain").attributes,i=t("../../plots/font_attributes"),o=t("../../components/color/attributes"),s=t("../../plots/template_attributes").hovertemplateAttrs,l=t("../../plots/template_attributes").texttemplateAttrs,c=t("../../lib/extend").extendFlat,u=i({editType:"plot",arrayOk:!0,colorEditType:"plot"});e.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:o.defaultLine,arrayOk:!0,editType:"style"},width:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"style"},editType:"calc"},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:c({},n.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:s({},{keys:["label","color","value","percent","text"]}),texttemplate:l({editType:"plot"},{keys:["label","color","value","percent","text"]}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"plot"},textfont:c({},u,{}),insidetextorientation:{valType:"enumerated",values:["horizontal","radial","tangential","auto"],dflt:"auto",editType:"plot"},insidetextfont:c({},u,{}),outsidetextfont:c({},u,{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},title:{text:{valType:"string",dflt:"",editType:"plot"},font:c({},u,{}),position:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"plot"},editType:"plot"},domain:a({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:"number",min:-360,max:360,dflt:0,editType:"calc"},pull:{valType:"number",min:0,max:1,dflt:0,arrayOk:!0,editType:"calc"},_deprecated:{title:{valType:"string",dflt:"",editType:"calc"},titlefont:c({},u,{}),titleposition:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"calc"}}}},{"../../components/color/attributes":594,"../../lib/extend":719,"../../plots/attributes":773,"../../plots/domain":803,"../../plots/font_attributes":804,"../../plots/template_attributes":854}],1109:[function(t,e,r){"use strict";var n=t("../../plots/plots");r.name="pie",r.plot=function(t,e,a,i){n.plotBasePlot(r.name,t,e,a,i)},r.clean=function(t,e,a,i){n.cleanBasePlot(r.name,t,e,a,i)}},{"../../plots/plots":839}],1110:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("tinycolor2"),i=t("../../components/color"),o={};function s(t){return function(e,r){return!!e&&(!!(e=a(e)).isValid()&&(e=i.addOpacity(e,e.getAlpha()),t[r]||(t[r]=e),e))}}function l(t,e){var r,n=JSON.stringify(t),i=e[n];if(!i){for(i=t.slice(),r=0;r<t.length;r++)i.push(a(t[r]).lighten(20).toHexString());for(r=0;r<t.length;r++)i.push(a(t[r]).darken(20).toHexString());e[n]=i}return i}e.exports={calc:function(t,e){var r,a,i=[],o=t._fullLayout,l=o.hiddenlabels||[],c=e.labels,u=e.marker.colors||[],h=e.values,f=e._length,p=e._hasValues&&f;if(e.dlabel)for(c=new Array(f),r=0;r<f;r++)c[r]=String(e.label0+r*e.dlabel);var d={},g=s(o["_"+e.type+"colormap"]),m=0,v=!1;for(r=0;r<f;r++){var y,x,b;if(p){if(y=h[r],!n(y))continue;if((y=+y)<0)continue}else y=1;void 0!==(x=c[r])&&""!==x||(x=r);var _=d[x=String(x)];void 0===_?(d[x]=i.length,(b=-1!==l.indexOf(x))||(m+=y),i.push({v:y,label:x,color:g(u[r],x),i:r,pts:[r],hidden:b})):(v=!0,(a=i[_]).v+=y,a.pts.push(r),a.hidden||(m+=y),!1===a.color&&u[r]&&(a.color=g(u[r],x)))}return("funnelarea"===e.type?v:e.sort)&&i.sort((function(t,e){return e.v-t.v})),i[0]&&(i[0].vTotal=m),i},crossTraceCalc:function(t,e){var r=(e||{}).type;r||(r="pie");var n=t._fullLayout,a=t.calcdata,i=n[r+"colorway"],s=n["_"+r+"colormap"];n["extend"+r+"colors"]&&(i=l(i,o));for(var c=0,u=0;u<a.length;u++){var h=a[u];if(h[0].trace.type===r)for(var f=0;f<h.length;f++){var p=h[f];!1===p.color&&(s[p.label]?p.color=s[p.label]:(s[p.label]=p.color=i[c%i.length],c++))}}},makePullColorFn:s,generateExtendedColors:l}},{"../../components/color":595,"fast-isnumeric":236,tinycolor2:528}],1111:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../../lib"),i=t("./attributes"),o=t("../../plots/domain").defaults,s=t("../bar/defaults").handleText;function l(t,e){var r=Array.isArray(t),i=a.isArrayOrTypedArray(e),o=Math.min(r?t.length:1/0,i?e.length:1/0);if(isFinite(o)||(o=0),o&&i){for(var s,l=0;l<o;l++){var c=e[l];if(n(c)&&c>0){s=!0;break}}s||(o=0)}return{hasLabels:r,hasValues:i,len:o}}e.exports={handleLabelsAndValues:l,supplyDefaults:function(t,e,r,n){function c(r,n){return a.coerce(t,e,i,r,n)}var u=l(c("labels"),c("values")),h=u.len;if(e._hasLabels=u.hasLabels,e._hasValues=u.hasValues,!e._hasLabels&&e._hasValues&&(c("label0"),c("dlabel")),h){e._length=h,c("marker.line.width")&&c("marker.line.color"),c("marker.colors"),c("scalegroup");var f,p=c("text"),d=c("texttemplate");if(d||(f=c("textinfo",Array.isArray(p)?"text+percent":"percent")),c("hovertext"),c("hovertemplate"),d||f&&"none"!==f){var g=c("textposition");s(t,e,n,c,g,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),(Array.isArray(g)||"auto"===g||"outside"===g)&&c("automargin"),("inside"===g||"auto"===g||Array.isArray(g))&&c("insidetextorientation")}o(e,n,c);var m=c("hole");if(c("title.text")){var v=c("title.position",m?"middle center":"top center");m||"middle center"!==v||(e.title.position="top center"),a.coerceFont(c,"title.font",n.font)}c("sort"),c("direction"),c("rotation"),c("pull")}else e.visible=!1}}},{"../../lib":728,"../../plots/domain":803,"../bar/defaults":873,"./attributes":1108,"fast-isnumeric":236}],1112:[function(t,e,r){"use strict";var n=t("../../components/fx/helpers").appendArrayMultiPointValues;e.exports=function(t,e){var r={curveNumber:e.index,pointNumbers:t.pts,data:e._input,fullData:e,label:t.label,color:t.color,value:t.v,percent:t.percent,text:t.text,v:t.v};return 1===t.pts.length&&(r.pointNumber=r.i=t.pts[0]),n(r,e,t.pts),"funnelarea"===e.type&&(delete r.v,delete r.i),r}},{"../../components/fx/helpers":631}],1113:[function(t,e,r){"use strict";var n=t("../../lib");r.formatPiePercent=function(t,e){var r=(100*t).toPrecision(3);return-1!==r.lastIndexOf(".")&&(r=r.replace(/[.]?0+$/,"")),n.numSeparate(r,e)+"%"},r.formatPieValue=function(t,e){var r=t.toPrecision(10);return-1!==r.lastIndexOf(".")&&(r=r.replace(/[.]?0+$/,"")),n.numSeparate(r,e)},r.getFirstFilled=function(t,e){if(Array.isArray(t))for(var r=0;r<e.length;r++){var n=t[e[r]];if(n||0===n||""===n)return n}},r.castOption=function(t,e){return Array.isArray(t)?r.getFirstFilled(t,e):t||void 0}},{"../../lib":728}],1114:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),supplyDefaults:t("./defaults").supplyDefaults,supplyLayoutDefaults:t("./layout_defaults"),layoutAttributes:t("./layout_attributes"),calc:t("./calc").calc,crossTraceCalc:t("./calc").crossTraceCalc,plot:t("./plot").plot,style:t("./style"),styleOne:t("./style_one"),moduleType:"trace",name:"pie",basePlotModule:t("./base_plot"),categories:["pie-like","pie","showLegend"],meta:{}}},{"./attributes":1108,"./base_plot":1109,"./calc":1110,"./defaults":1111,"./layout_attributes":1115,"./layout_defaults":1116,"./plot":1117,"./style":1118,"./style_one":1119}],1115:[function(t,e,r){"use strict";e.exports={hiddenlabels:{valType:"data_array",editType:"calc"},piecolorway:{valType:"colorlist",editType:"calc"},extendpiecolors:{valType:"boolean",dflt:!0,editType:"calc"}}},{}],1116:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./layout_attributes");e.exports=function(t,e){function r(r,i){return n.coerce(t,e,a,r,i)}r("hiddenlabels"),r("piecolorway",e.colorway),r("extendpiecolors")}},{"../../lib":728,"./layout_attributes":1115}],1117:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../plots/plots"),i=t("../../components/fx"),o=t("../../components/color"),s=t("../../components/drawing"),l=t("../../lib"),c=t("../../lib/svg_text_utils"),u=t("../bar/uniform_text"),h=u.recordMinTextSize,f=u.clearMinTextSize,p=t("../bar/constants").TEXTPAD,d=t("./helpers"),g=t("./event_data"),m=t("../../lib").isValidTextValue;function v(t,e,r){var a=r[0],o=a.trace,s=a.cx,c=a.cy;"_hasHoverLabel"in o||(o._hasHoverLabel=!1),"_hasHoverEvent"in o||(o._hasHoverEvent=!1),t.on("mouseover",(function(t){var r=e._fullLayout,u=e._fullData[o.index];if(!e._dragging&&!1!==r.hovermode){var h=u.hoverinfo;if(Array.isArray(h)&&(h=i.castHoverinfo({hoverinfo:[d.castOption(h,t.pts)],_module:o._module},r,0)),"all"===h&&(h="label+text+value+percent+name"),u.hovertemplate||"none"!==h&&"skip"!==h&&h){var f=t.rInscribed||0,p=s+t.pxmid[0]*(1-f),m=c+t.pxmid[1]*(1-f),v=r.separators,y=[];if(h&&-1!==h.indexOf("label")&&y.push(t.label),t.text=d.castOption(u.hovertext||u.text,t.pts),h&&-1!==h.indexOf("text")){var x=t.text;l.isValidTextValue(x)&&y.push(x)}t.value=t.v,t.valueLabel=d.formatPieValue(t.v,v),h&&-1!==h.indexOf("value")&&y.push(t.valueLabel),t.percent=t.v/a.vTotal,t.percentLabel=d.formatPiePercent(t.percent,v),h&&-1!==h.indexOf("percent")&&y.push(t.percentLabel);var b=u.hoverlabel,_=b.font;i.loneHover({trace:o,x0:p-f*a.r,x1:p+f*a.r,y:m,text:y.join("<br>"),name:u.hovertemplate||-1!==h.indexOf("name")?u.name:void 0,idealAlign:t.pxmid[0]<0?"left":"right",color:d.castOption(b.bgcolor,t.pts)||t.color,borderColor:d.castOption(b.bordercolor,t.pts),fontFamily:d.castOption(_.family,t.pts),fontSize:d.castOption(_.size,t.pts),fontColor:d.castOption(_.color,t.pts),nameLength:d.castOption(b.namelength,t.pts),textAlign:d.castOption(b.align,t.pts),hovertemplate:d.castOption(u.hovertemplate,t.pts),hovertemplateLabels:t,eventData:[g(t,u)]},{container:r._hoverlayer.node(),outerContainer:r._paper.node(),gd:e}),o._hasHoverLabel=!0}o._hasHoverEvent=!0,e.emit("plotly_hover",{points:[g(t,u)],event:n.event})}})),t.on("mouseout",(function(t){var r=e._fullLayout,a=e._fullData[o.index],s=n.select(this).datum();o._hasHoverEvent&&(t.originalEvent=n.event,e.emit("plotly_unhover",{points:[g(s,a)],event:n.event}),o._hasHoverEvent=!1),o._hasHoverLabel&&(i.loneUnhover(r._hoverlayer.node()),o._hasHoverLabel=!1)})),t.on("click",(function(t){var r=e._fullLayout,a=e._fullData[o.index];e._dragging||!1===r.hovermode||(e._hoverdata=[g(t,a)],i.click(e,n.event))}))}function y(t,e,r){var n=d.castOption(t.insidetextfont.color,e.pts);!n&&t._input.textfont&&(n=d.castOption(t._input.textfont.color,e.pts));var a=d.castOption(t.insidetextfont.family,e.pts)||d.castOption(t.textfont.family,e.pts)||r.family,i=d.castOption(t.insidetextfont.size,e.pts)||d.castOption(t.textfont.size,e.pts)||r.size;return{color:n||o.contrast(e.color),family:a,size:i}}function x(t,e){for(var r,n,a=0;a<t.length;a++)if((n=(r=t[a][0]).trace).title.text){var i=n.title.text;n._meta&&(i=l.templateString(i,n._meta));var o=s.tester.append("text").attr("data-notex",1).text(i).call(s.font,n.title.font).call(c.convertToTspans,e),u=s.bBox(o.node(),!0);r.titleBox={width:u.width,height:u.height},o.remove()}}function b(t,e,r){var n=r.r||e.rpx1,a=e.rInscribed;if(e.startangle===e.stopangle)return{rCenter:1-a,scale:0,rotate:0,textPosAngle:0};var i,o=e.ring,s=1===o&&Math.abs(e.startangle-e.stopangle)===2*Math.PI,l=e.halfangle,c=e.midangle,u=r.trace.insidetextorientation,h="horizontal"===u,f="tangential"===u,p="radial"===u,d="auto"===u,g=[];if(!d){var m,v=function(r,a){if(function(t,e){var r=t.startangle,n=t.stopangle;return r>e&&e>n||r<e&&e<n}(e,r)){var s=Math.abs(r-e.startangle),l=Math.abs(r-e.stopangle),c=s<l?s:l;(i="tan"===a?w(t,n,o,c,0):_(t,n,o,c,Math.PI/2)).textPosAngle=r,g.push(i)}};if(h||f){for(m=4;m>=-4;m-=2)v(Math.PI*m,"tan");for(m=4;m>=-4;m-=2)v(Math.PI*(m+1),"tan")}if(h||p){for(m=4;m>=-4;m-=2)v(Math.PI*(m+1.5),"rad");for(m=4;m>=-4;m-=2)v(Math.PI*(m+.5),"rad")}}if(s||d||h){var y=Math.sqrt(t.width*t.width+t.height*t.height);if((i={scale:a*n*2/y,rCenter:1-a,rotate:0}).textPosAngle=(e.startangle+e.stopangle)/2,i.scale>=1)return i;g.push(i)}(d||p)&&((i=_(t,n,o,l,c)).textPosAngle=(e.startangle+e.stopangle)/2,g.push(i)),(d||f)&&((i=w(t,n,o,l,c)).textPosAngle=(e.startangle+e.stopangle)/2,g.push(i));for(var x=0,b=0,T=0;T<g.length;T++){var k=g[T].scale;if(b<k&&(b=k,x=T),!d&&b>=1)break}return g[x]}function _(t,e,r,n,a){e=Math.max(0,e-2*p);var i=t.width/t.height,o=A(i,n,e,r);return{scale:2*o/t.height,rCenter:T(i,o/e),rotate:k(a)}}function w(t,e,r,n,a){e=Math.max(0,e-2*p);var i=t.height/t.width,o=A(i,n,e,r);return{scale:2*o/t.width,rCenter:T(i,o/e),rotate:k(a+Math.PI/2)}}function T(t,e){return Math.cos(e)-t*e}function k(t){return(180/Math.PI*t+720)%180-90}function A(t,e,r,n){var a=t+1/(2*Math.tan(e));return r*Math.min(1/(Math.sqrt(a*a+.5)+a),n/(Math.sqrt(t*t+n/2)+t))}function M(t,e){return t.v!==e.vTotal||e.trace.hole?Math.min(1/(1+1/Math.sin(t.halfangle)),t.ring/2):1}function S(t,e){var r=e.pxmid[0],n=e.pxmid[1],a=t.width/2,i=t.height/2;return r<0&&(a*=-1),n<0&&(i*=-1),{scale:1,rCenter:1,rotate:0,x:a+Math.abs(i)*(a>0?1:-1)/2,y:i/(1+r*r/(n*n)),outside:!0}}function E(t,e){var r,n,a,i=t.trace,o={x:t.cx,y:t.cy},s={tx:0,ty:0};s.ty+=i.title.font.size,a=L(i),-1!==i.title.position.indexOf("top")?(o.y-=(1+a)*t.r,s.ty-=t.titleBox.height):-1!==i.title.position.indexOf("bottom")&&(o.y+=(1+a)*t.r);var l,c,u=(l=t.r,c=t.trace.aspectratio,l/(void 0===c?1:c)),h=e.w*(i.domain.x[1]-i.domain.x[0])/2;return-1!==i.title.position.indexOf("left")?(h+=u,o.x-=(1+a)*u,s.tx+=t.titleBox.width/2):-1!==i.title.position.indexOf("center")?h*=2:-1!==i.title.position.indexOf("right")&&(h+=u,o.x+=(1+a)*u,s.tx-=t.titleBox.width/2),r=h/t.titleBox.width,n=C(t,e)/t.titleBox.height,{x:o.x,y:o.y,scale:Math.min(r,n),tx:s.tx,ty:s.ty}}function C(t,e){var r=t.trace,n=e.h*(r.domain.y[1]-r.domain.y[0]);return Math.min(t.titleBox.height,n/2)}function L(t){var e,r=t.pull;if(!r)return 0;if(Array.isArray(r))for(r=0,e=0;e<t.pull.length;e++)t.pull[e]>r&&(r=t.pull[e]);return r}function P(t,e){for(var r=[],n=0;n<t.length;n++){var a=t[n][0],i=a.trace,o=i.domain,s=e.w*(o.x[1]-o.x[0]),l=e.h*(o.y[1]-o.y[0]);i.title.text&&"middle center"!==i.title.position&&(l-=C(a,e));var c=s/2,u=l/2;"funnelarea"!==i.type||i.scalegroup||(u/=i.aspectratio),a.r=Math.min(c,u)/(1+L(i)),a.cx=e.l+e.w*(i.domain.x[1]+i.domain.x[0])/2,a.cy=e.t+e.h*(1-i.domain.y[0])-l/2,i.title.text&&-1!==i.title.position.indexOf("bottom")&&(a.cy-=C(a,e)),i.scalegroup&&-1===r.indexOf(i.scalegroup)&&r.push(i.scalegroup)}!function(t,e){for(var r,n,a,i=0;i<e.length;i++){var o=1/0,s=e[i];for(n=0;n<t.length;n++)if(r=t[n][0],(a=r.trace).scalegroup===s){var l;if("pie"===a.type)l=r.r*r.r;else if("funnelarea"===a.type){var c,u;a.aspectratio>1?(c=r.r,u=c/a.aspectratio):(u=r.r,c=u*a.aspectratio),c*=(1+a.baseratio)/2,l=c*u}o=Math.min(o,l/r.vTotal)}for(n=0;n<t.length;n++)if(r=t[n][0],(a=r.trace).scalegroup===s){var h=o*r.vTotal;"funnelarea"===a.type&&(h/=(1+a.baseratio)/2,h/=a.aspectratio),r.r=Math.sqrt(h)}}}(t,r)}function I(t,e){return[t*Math.sin(e),-t*Math.cos(e)]}function z(t,e,r){var n=t._fullLayout,a=r.trace,i=a.texttemplate,o=a.textinfo;if(!i&&o&&"none"!==o){var s,c=o.split("+"),u=function(t){return-1!==c.indexOf(t)},h=u("label"),f=u("text"),p=u("value"),g=u("percent"),v=n.separators;if(s=h?[e.label]:[],f){var y=d.getFirstFilled(a.text,e.pts);m(y)&&s.push(y)}p&&s.push(d.formatPieValue(e.v,v)),g&&s.push(d.formatPiePercent(e.v/r.vTotal,v)),e.text=s.join("<br>")}if(i){var x=l.castOption(a,e.i,"texttemplate");if(x){var b=function(t){return{label:t.label,value:t.v,valueLabel:d.formatPieValue(t.v,n.separators),percent:t.v/r.vTotal,percentLabel:d.formatPiePercent(t.v/r.vTotal,n.separators),color:t.color,text:t.text,customdata:l.castOption(a,t.i,"customdata")}}(e),_=d.getFirstFilled(a.text,e.pts);(m(_)||""===_)&&(b.text=_),e.text=l.texttemplateString(x,b,t._fullLayout._d3locale,b,a._meta||{})}else e.text=""}}function O(t,e){var r=t.rotate*Math.PI/180,n=Math.cos(r),a=Math.sin(r),i=(e.left+e.right)/2,o=(e.top+e.bottom)/2;t.textX=i*n-o*a,t.textY=i*a+o*n,t.noCenter=!0}e.exports={plot:function(t,e){var r=t._fullLayout,i=r._size;f("pie",r),x(e,t),P(e,i);var u=l.makeTraceGroups(r._pielayer,e,"trace").each((function(e){var u=n.select(this),f=e[0],p=f.trace;!function(t){var e,r,n,a=t[0],i=a.r,o=a.trace,s=o.rotation*Math.PI/180,l=2*Math.PI/a.vTotal,c="px0",u="px1";if("counterclockwise"===o.direction){for(e=0;e<t.length&&t[e].hidden;e++);if(e===t.length)return;s+=l*t[e].v,l*=-1,c="px1",u="px0"}for(n=I(i,s),e=0;e<t.length;e++)(r=t[e]).hidden||(r[c]=n,r.startangle=s,s+=l*r.v/2,r.pxmid=I(i,s),r.midangle=s,s+=l*r.v/2,n=I(i,s),r.stopangle=s,r[u]=n,r.largeArc=r.v>a.vTotal/2?1:0,r.halfangle=Math.PI*Math.min(r.v/a.vTotal,.5),r.ring=1-o.hole,r.rInscribed=M(r,a))}(e),u.attr("stroke-linejoin","round"),u.each((function(){var g=n.select(this).selectAll("g.slice").data(e);g.enter().append("g").classed("slice",!0),g.exit().remove();var m=[[[],[]],[[],[]]],x=!1;g.each((function(a,i){if(a.hidden)n.select(this).selectAll("path,g").remove();else{a.pointNumber=a.i,a.curveNumber=p.index,m[a.pxmid[1]<0?0:1][a.pxmid[0]<0?0:1].push(a);var o=f.cx,u=f.cy,g=n.select(this),_=g.selectAll("path.surface").data([a]);if(_.enter().append("path").classed("surface",!0).style({"pointer-events":"all"}),g.call(v,t,e),p.pull){var w=+d.castOption(p.pull,a.pts)||0;w>0&&(o+=w*a.pxmid[0],u+=w*a.pxmid[1])}a.cxFinal=o,a.cyFinal=u;var T=p.hole;if(a.v===f.vTotal){var k="M"+(o+a.px0[0])+","+(u+a.px0[1])+L(a.px0,a.pxmid,!0,1)+L(a.pxmid,a.px0,!0,1)+"Z";T?_.attr("d","M"+(o+T*a.px0[0])+","+(u+T*a.px0[1])+L(a.px0,a.pxmid,!1,T)+L(a.pxmid,a.px0,!1,T)+"Z"+k):_.attr("d",k)}else{var A=L(a.px0,a.px1,!0,1);if(T){var M=1-T;_.attr("d","M"+(o+T*a.px1[0])+","+(u+T*a.px1[1])+L(a.px1,a.px0,!1,T)+"l"+M*a.px0[0]+","+M*a.px0[1]+A+"Z")}else _.attr("d","M"+o+","+u+"l"+a.px0[0]+","+a.px0[1]+A+"Z")}z(t,a,f);var E=d.castOption(p.textposition,a.pts),C=g.selectAll("g.slicetext").data(a.text&&"none"!==E?[0]:[]);C.enter().append("g").classed("slicetext",!0),C.exit().remove(),C.each((function(){var g=l.ensureSingle(n.select(this),"text","",(function(t){t.attr("data-notex",1)})),m=l.ensureUniformFontSize(t,"outside"===E?function(t,e,r){var n=d.castOption(t.outsidetextfont.color,e.pts)||d.castOption(t.textfont.color,e.pts)||r.color,a=d.castOption(t.outsidetextfont.family,e.pts)||d.castOption(t.textfont.family,e.pts)||r.family,i=d.castOption(t.outsidetextfont.size,e.pts)||d.castOption(t.textfont.size,e.pts)||r.size;return{color:n,family:a,size:i}}(p,a,r.font):y(p,a,r.font));g.text(a.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(s.font,m).call(c.convertToTspans,t);var v,_=s.bBox(g.node());if("outside"===E)v=S(_,a);else if(v=b(_,a,f),"auto"===E&&v.scale<1){var w=l.ensureUniformFontSize(t,p.outsidetextfont);g.call(s.font,w),v=S(_=s.bBox(g.node()),a)}var T=v.textPosAngle,k=void 0===T?a.pxmid:I(f.r,T);if(v.targetX=o+k[0]*v.rCenter+(v.x||0),v.targetY=u+k[1]*v.rCenter+(v.y||0),O(v,_),v.outside){var A=v.targetY;a.yLabelMin=A-_.height/2,a.yLabelMid=A,a.yLabelMax=A+_.height/2,a.labelExtraX=0,a.labelExtraY=0,x=!0}v.fontSize=m.size,h(p.type,v,r),e[i].transform=v,g.attr("transform",l.getTextTransform(v))}))}function L(t,e,r,n){var i=n*(e[0]-t[0]),o=n*(e[1]-t[1]);return"a"+n*f.r+","+n*f.r+" 0 "+a.largeArc+(r?" 1 ":" 0 ")+i+","+o}}));var _=n.select(this).selectAll("g.titletext").data(p.title.text?[0]:[]);if(_.enter().append("g").classed("titletext",!0),_.exit().remove(),_.each((function(){var e,r=l.ensureSingle(n.select(this),"text","",(function(t){t.attr("data-notex",1)})),a=p.title.text;p._meta&&(a=l.templateString(a,p._meta)),r.text(a).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(s.font,p.title.font).call(c.convertToTspans,t),e="middle center"===p.title.position?function(t){var e=Math.sqrt(t.titleBox.width*t.titleBox.width+t.titleBox.height*t.titleBox.height);return{x:t.cx,y:t.cy,scale:t.trace.hole*t.r*2/e,tx:0,ty:-t.titleBox.height/2+t.trace.title.font.size}}(f):E(f,i),r.attr("transform","translate("+e.x+","+e.y+")"+(e.scale<1?"scale("+e.scale+")":"")+"translate("+e.tx+","+e.ty+")")})),x&&function(t,e){var r,n,a,i,o,s,l,c,u,h,f,p,g;function m(t,e){return t.pxmid[1]-e.pxmid[1]}function v(t,e){return e.pxmid[1]-t.pxmid[1]}function y(t,r){r||(r={});var a,c,u,f,p=r.labelExtraY+(n?r.yLabelMax:r.yLabelMin),g=n?t.yLabelMin:t.yLabelMax,m=n?t.yLabelMax:t.yLabelMin,v=t.cyFinal+o(t.px0[1],t.px1[1]),y=p-g;if(y*l>0&&(t.labelExtraY=y),Array.isArray(e.pull))for(c=0;c<h.length;c++)(u=h[c])===t||(d.castOption(e.pull,t.pts)||0)>=(d.castOption(e.pull,u.pts)||0)||((t.pxmid[1]-u.pxmid[1])*l>0?(y=u.cyFinal+o(u.px0[1],u.px1[1])-g-t.labelExtraY)*l>0&&(t.labelExtraY+=y):(m+t.labelExtraY-v)*l>0&&(a=3*s*Math.abs(c-h.indexOf(t)),(f=u.cxFinal+i(u.px0[0],u.px1[0])+a-(t.cxFinal+t.pxmid[0])-t.labelExtraX)*s>0&&(t.labelExtraX+=f)))}for(n=0;n<2;n++)for(a=n?m:v,o=n?Math.max:Math.min,l=n?1:-1,r=0;r<2;r++){for(i=r?Math.max:Math.min,s=r?1:-1,(c=t[n][r]).sort(a),u=t[1-n][r],h=u.concat(c),p=[],f=0;f<c.length;f++)void 0!==c[f].yLabelMid&&p.push(c[f]);for(g=!1,f=0;n&&f<u.length;f++)if(void 0!==u[f].yLabelMid){g=u[f];break}for(f=0;f<p.length;f++){var x=f&&p[f-1];g&&!f&&(x=g),y(p[f],x)}}}(m,p),function(t,e){t.each((function(t){var r=n.select(this);if(t.labelExtraX||t.labelExtraY){var a=r.select("g.slicetext text");t.transform.targetX+=t.labelExtraX,t.transform.targetY+=t.labelExtraY,a.attr("transform",l.getTextTransform(t.transform));var i=t.cxFinal+t.pxmid[0],s="M"+i+","+(t.cyFinal+t.pxmid[1]),c=(t.yLabelMax-t.yLabelMin)*(t.pxmid[0]<0?-1:1)/4;if(t.labelExtraX){var u=t.labelExtraX*t.pxmid[1]/t.pxmid[0],h=t.yLabelMid+t.labelExtraY-(t.cyFinal+t.pxmid[1]);Math.abs(u)>Math.abs(h)?s+="l"+h*t.pxmid[0]/t.pxmid[1]+","+h+"H"+(i+t.labelExtraX+c):s+="l"+t.labelExtraX+","+u+"v"+(h-u)+"h"+c}else s+="V"+(t.yLabelMid+t.labelExtraY)+"h"+c;l.ensureSingle(r,"path","textline").call(o.stroke,e.outsidetextfont.color).attr({"stroke-width":Math.min(2,e.outsidetextfont.size/8),d:s,fill:"none"})}else r.select("path.textline").remove()}))}(g,p),x&&p.automargin){var w=s.bBox(u.node()),T=p.domain,k=i.w*(T.x[1]-T.x[0]),A=i.h*(T.y[1]-T.y[0]),M=(.5*k-f.r)/i.w,C=(.5*A-f.r)/i.h;a.autoMargin(t,"pie."+p.uid+".automargin",{xl:T.x[0]-M,xr:T.x[1]+M,yb:T.y[0]-C,yt:T.y[1]+C,l:Math.max(f.cx-f.r-w.left,0),r:Math.max(w.right-(f.cx+f.r),0),b:Math.max(w.bottom-(f.cy+f.r),0),t:Math.max(f.cy-f.r-w.top,0),pad:5})}}))}));setTimeout((function(){u.selectAll("tspan").each((function(){var t=n.select(this);t.attr("dy")&&t.attr("dy",t.attr("dy"))}))}),0)},formatSliceLabel:z,transformInsideText:b,determineInsideTextFont:y,positionTitleOutside:E,prerenderTitles:x,layoutAreas:P,attachFxHandlers:v,computeTransform:O}},{"../../components/color":595,"../../components/drawing":617,"../../components/fx":635,"../../lib":728,"../../lib/svg_text_utils":752,"../../plots/plots":839,"../bar/constants":871,"../bar/uniform_text":885,"./event_data":1112,"./helpers":1113,d3:164}],1118:[function(t,e,r){"use strict";var n=t("d3"),a=t("./style_one"),i=t("../bar/uniform_text").resizeText;e.exports=function(t){var e=t._fullLayout._pielayer.selectAll(".trace");i(t,e,"pie"),e.each((function(t){var e=t[0].trace,r=n.select(this);r.style({opacity:e.opacity}),r.selectAll("path.surface").each((function(t){n.select(this).call(a,t,e)}))}))}},{"../bar/uniform_text":885,"./style_one":1119,d3:164}],1119:[function(t,e,r){"use strict";var n=t("../../components/color"),a=t("./helpers").castOption;e.exports=function(t,e,r){var i=r.marker.line,o=a(i.color,e.pts)||n.defaultLine,s=a(i.width,e.pts)||0;t.style("stroke-width",s).call(n.fill,e.color).call(n.stroke,o)}},{"../../components/color":595,"./helpers":1113}],1120:[function(t,e,r){"use strict";var n=t("../scatter/attributes");e.exports={x:n.x,y:n.y,xy:{valType:"data_array",editType:"calc"},indices:{valType:"data_array",editType:"calc"},xbounds:{valType:"data_array",editType:"calc"},ybounds:{valType:"data_array",editType:"calc"},text:n.text,marker:{color:{valType:"color",arrayOk:!1,editType:"calc"},opacity:{valType:"number",min:0,max:1,dflt:1,arrayOk:!1,editType:"calc"},blend:{valType:"boolean",dflt:null,editType:"calc"},sizemin:{valType:"number",min:.1,max:2,dflt:.5,editType:"calc"},sizemax:{valType:"number",min:.1,dflt:20,editType:"calc"},border:{color:{valType:"color",arrayOk:!1,editType:"calc"},arearatio:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},editType:"calc"},editType:"calc"},transforms:void 0}},{"../scatter/attributes":1134}],1121:[function(t,e,r){"use strict";var n=t("gl-pointcloud2d"),a=t("../../lib/str2rgbarray"),i=t("../../plots/cartesian/autorange").findExtremes,o=t("../scatter/get_trace_color");function s(t,e){this.scene=t,this.uid=e,this.type="pointcloud",this.pickXData=[],this.pickYData=[],this.xData=[],this.yData=[],this.textLabels=[],this.color="rgb(0, 0, 0)",this.name="",this.hoverinfo="all",this.idToIndex=new Int32Array(0),this.bounds=[0,0,0,0],this.pointcloudOptions={positions:new Float32Array(0),idToIndex:this.idToIndex,sizemin:.5,sizemax:12,color:[0,0,0,1],areaRatio:1,borderColor:[0,0,0,1]},this.pointcloud=n(t.glplot,this.pointcloudOptions),this.pointcloud._trace=this}var l=s.prototype;l.handlePick=function(t){var e=this.idToIndex[t.pointId];return{trace:this,dataCoord:t.dataCoord,traceCoord:this.pickXYData?[this.pickXYData[2*e],this.pickXYData[2*e+1]]:[this.pickXData[e],this.pickYData[e]],textLabel:Array.isArray(this.textLabels)?this.textLabels[e]:this.textLabels,color:this.color,name:this.name,pointIndex:e,hoverinfo:this.hoverinfo}},l.update=function(t){this.index=t.index,this.textLabels=t.text,this.name=t.name,this.hoverinfo=t.hoverinfo,this.bounds=[1/0,1/0,-1/0,-1/0],this.updateFast(t),this.color=o(t,{})},l.updateFast=function(t){var e,r,n,o,s,l,c=this.xData=this.pickXData=t.x,u=this.yData=this.pickYData=t.y,h=this.pickXYData=t.xy,f=t.xbounds&&t.ybounds,p=t.indices,d=this.bounds;if(h){if(n=h,e=h.length>>>1,f)d[0]=t.xbounds[0],d[2]=t.xbounds[1],d[1]=t.ybounds[0],d[3]=t.ybounds[1];else for(l=0;l<e;l++)o=n[2*l],s=n[2*l+1],o<d[0]&&(d[0]=o),o>d[2]&&(d[2]=o),s<d[1]&&(d[1]=s),s>d[3]&&(d[3]=s);if(p)r=p;else for(r=new Int32Array(e),l=0;l<e;l++)r[l]=l}else for(e=c.length,n=new Float32Array(2*e),r=new Int32Array(e),l=0;l<e;l++)o=c[l],s=u[l],r[l]=l,n[2*l]=o,n[2*l+1]=s,o<d[0]&&(d[0]=o),o>d[2]&&(d[2]=o),s<d[1]&&(d[1]=s),s>d[3]&&(d[3]=s);this.idToIndex=r,this.pointcloudOptions.idToIndex=r,this.pointcloudOptions.positions=n;var g=a(t.marker.color),m=a(t.marker.border.color),v=t.opacity*t.marker.opacity;g[3]*=v,this.pointcloudOptions.color=g;var y=t.marker.blend;if(null===y){y=c.length<100||u.length<100}this.pointcloudOptions.blend=y,m[3]*=v,this.pointcloudOptions.borderColor=m;var x=t.marker.sizemin,b=Math.max(t.marker.sizemax,t.marker.sizemin);this.pointcloudOptions.sizeMin=x,this.pointcloudOptions.sizeMax=b,this.pointcloudOptions.areaRatio=t.marker.border.arearatio,this.pointcloud.update(this.pointcloudOptions);var _=this.scene.xaxis,w=this.scene.yaxis,T=b/2||.5;t._extremes[_._id]=i(_,[d[0],d[2]],{ppad:T}),t._extremes[w._id]=i(w,[d[1],d[3]],{ppad:T})},l.dispose=function(){this.pointcloud.dispose()},e.exports=function(t,e){var r=new s(t,e.uid);return r.update(e),r}},{"../../lib/str2rgbarray":751,"../../plots/cartesian/autorange":775,"../scatter/get_trace_color":1144,"gl-pointcloud2d":298}],1122:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./attributes");e.exports=function(t,e,r){function i(r,i){return n.coerce(t,e,a,r,i)}i("x"),i("y"),i("xbounds"),i("ybounds"),t.xy&&t.xy instanceof Float32Array&&(e.xy=t.xy),t.indices&&t.indices instanceof Int32Array&&(e.indices=t.indices),i("text"),i("marker.color",r),i("marker.opacity"),i("marker.blend"),i("marker.sizemin"),i("marker.sizemax"),i("marker.border.color",r),i("marker.border.arearatio"),e._length=null}},{"../../lib":728,"./attributes":1120}],1123:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),supplyDefaults:t("./defaults"),calc:t("../scatter3d/calc"),plot:t("./convert"),moduleType:"trace",name:"pointcloud",basePlotModule:t("../../plots/gl2d"),categories:["gl","gl2d","showLegend"],meta:{}}},{"../../plots/gl2d":816,"../scatter3d/calc":1162,"./attributes":1120,"./convert":1121,"./defaults":1122}],1124:[function(t,e,r){"use strict";var n=t("../../plots/font_attributes"),a=t("../../plots/attributes"),i=t("../../components/color/attributes"),o=t("../../components/fx/attributes"),s=t("../../plots/domain").attributes,l=t("../../plots/template_attributes").hovertemplateAttrs,c=t("../../components/colorscale/attributes"),u=t("../../plot_api/plot_template").templatedArray,h=t("../../lib/extend").extendFlat,f=t("../../plot_api/edit_types").overrideAll;t("../../constants/docs").FORMAT_LINK;(e.exports=f({hoverinfo:h({},a.hoverinfo,{flags:[],arrayOk:!1}),hoverlabel:o.hoverlabel,domain:s({name:"sankey",trace:!0}),orientation:{valType:"enumerated",values:["v","h"],dflt:"h"},valueformat:{valType:"string",dflt:".3s"},valuesuffix:{valType:"string",dflt:""},arrangement:{valType:"enumerated",values:["snap","perpendicular","freeform","fixed"],dflt:"snap"},textfont:n({}),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:i.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:o.hoverlabel,hovertemplate:l({},{keys:["value","label"]})},link:{label:{valType:"data_array",dflt:[]},color:{valType:"color",arrayOk:!0},customdata:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:i.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:o.hoverlabel,hovertemplate:l({},{keys:["value","label"]}),colorscales:u("concentrationscales",{editType:"calc",label:{valType:"string",editType:"calc",dflt:""},cmax:{valType:"number",editType:"calc",dflt:1},cmin:{valType:"number",editType:"calc",dflt:0},colorscale:h(c().colorscale,{dflt:[[0,"white"],[1,"black"]]})})}},"calc","nested")).transforms=void 0},{"../../components/color/attributes":594,"../../components/colorscale/attributes":602,"../../components/fx/attributes":626,"../../constants/docs":699,"../../lib/extend":719,"../../plot_api/edit_types":759,"../../plot_api/plot_template":766,"../../plots/attributes":773,"../../plots/domain":803,"../../plots/font_attributes":804,"../../plots/template_attributes":854}],1125:[function(t,e,r){"use strict";var n=t("../../plot_api/edit_types").overrideAll,a=t("../../plots/get_data").getModuleCalcData,i=t("./plot"),o=t("../../components/fx/layout_attributes"),s=t("../../lib/setcursor"),l=t("../../components/dragelement"),c=t("../../plots/cartesian/select").prepSelect,u=t("../../lib"),h=t("../../registry");function f(t,e){var r=t._fullData[e],n=t._fullLayout,a=n.dragmode,i="pan"===n.dragmode?"move":"crosshair",o=r._bgRect;if("pan"!==a&&"zoom"!==a){s(o,i);var f={_id:"x",c2p:u.identity,_offset:r._sankey.translateX,_length:r._sankey.width},p={_id:"y",c2p:u.identity,_offset:r._sankey.translateY,_length:r._sankey.height},d={gd:t,element:o.node(),plotinfo:{id:e,xaxis:f,yaxis:p,fillRangeItems:u.noop},subplot:e,xaxes:[f],yaxes:[p],doneFnCompleted:function(r){var n,a=t._fullData[e],i=a.node.groups.slice(),o=[];function s(t){for(var e=a._sankey.graph.nodes,r=0;r<e.length;r++)if(e[r].pointNumber===t)return e[r]}for(var l=0;l<r.length;l++){var c=s(r[l].pointNumber);if(c)if(c.group){for(var u=0;u<c.childrenNodes.length;u++)o.push(c.childrenNodes[u].pointNumber);i[c.pointNumber-a.node._count]=!1}else o.push(c.pointNumber)}n=i.filter(Boolean).concat([o]),h.call("_guiRestyle",t,{"node.groups":[n]},e)},prepFn:function(t,e,r){c(t,e,r,d,a)}};l.init(d)}}r.name="sankey",r.baseLayoutAttrOverrides=n({hoverlabel:o.hoverlabel},"plot","nested"),r.plot=function(t){var e=a(t.calcdata,"sankey")[0];i(t,e),r.updateFx(t)},r.clean=function(t,e,r,n){var a=n._has&&n._has("sankey"),i=e._has&&e._has("sankey");a&&!i&&(n._paperdiv.selectAll(".sankey").remove(),n._paperdiv.selectAll(".bgsankey").remove())},r.updateFx=function(t){for(var e=0;e<t._fullData.length;e++)f(t,e)}},{"../../components/dragelement":614,"../../components/fx/layout_attributes":636,"../../lib":728,"../../lib/setcursor":748,"../../plot_api/edit_types":759,"../../plots/cartesian/select":795,"../../plots/get_data":813,"../../registry":859,"./plot":1130}],1126:[function(t,e,r){"use strict";var n=t("strongly-connected-components"),a=t("../../lib"),i=t("../../lib/gup").wrap,o=a.isArrayOrTypedArray,s=a.isIndex,l=t("../../components/colorscale");function c(t){var e,r=t.node,i=t.link,c=[],u=o(i.color),h=o(i.customdata),f={},p={},d=i.colorscales.length;for(e=0;e<d;e++){var g=i.colorscales[e],m=l.extractScale(g,{cLetter:"c"}),v=l.makeColorScaleFunc(m);p[g.label]=v}var y=0;for(e=0;e<i.value.length;e++)i.source[e]>y&&(y=i.source[e]),i.target[e]>y&&(y=i.target[e]);var x,b=y+1;t.node._count=b;var _=t.node.groups,w={};for(e=0;e<_.length;e++){var T=_[e];for(x=0;x<T.length;x++){var k=T[x],A=b+e;w.hasOwnProperty(k)?a.warn("Node "+k+" is already part of a group."):w[k]=A}}var M={source:[],target:[]};for(e=0;e<i.value.length;e++){var S=i.value[e],E=i.source[e],C=i.target[e];if(S>0&&s(E,b)&&s(C,b)&&(!w.hasOwnProperty(E)||!w.hasOwnProperty(C)||w[E]!==w[C])){w.hasOwnProperty(C)&&(C=w[C]),w.hasOwnProperty(E)&&(E=w[E]),C=+C,f[E=+E]=f[C]=!0;var L="";i.label&&i.label[e]&&(L=i.label[e]);var P=null;L&&p.hasOwnProperty(L)&&(P=p[L]),c.push({pointNumber:e,label:L,color:u?i.color[e]:i.color,customdata:h?i.customdata[e]:i.customdata,concentrationscale:P,source:E,target:C,value:+S}),M.source.push(E),M.target.push(C)}}var I=b+_.length,z=o(r.color),O=o(r.customdata),D=[];for(e=0;e<I;e++)if(f[e]){var R=r.label[e];D.push({group:e>b-1,childrenNodes:[],pointNumber:e,label:R,color:z?r.color[e]:r.color,customdata:O?r.customdata[e]:r.customdata})}var F=!1;return function(t,e,r){for(var i=a.init2dArray(t,0),o=0;o<Math.min(e.length,r.length);o++)if(a.isIndex(e[o],t)&&a.isIndex(r[o],t)){if(e[o]===r[o])return!0;i[e[o]].push(r[o])}return n(i).components.some((function(t){return t.length>1}))}(I,M.source,M.target)&&(F=!0),{circular:F,links:c,nodes:D,groups:_,groupLookup:w}}e.exports=function(t,e){var r=c(e);return i({circular:r.circular,_nodes:r.nodes,_links:r.links,_groups:r.groups,_groupLookup:r.groupLookup})}},{"../../components/colorscale":607,"../../lib":728,"../../lib/gup":726,"strongly-connected-components":521}],1127:[function(t,e,r){"use strict";e.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",nodeCapture:"node-capture",nodeCentered:"node-entered",nodeLabelGuide:"node-label-guide",nodeLabel:"node-label",nodeLabelTextPath:"node-label-text-path"}}},{}],1128:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./attributes"),i=t("../../components/color"),o=t("tinycolor2"),s=t("../../plots/domain").defaults,l=t("../../components/fx/hoverlabel_defaults"),c=t("../../plot_api/plot_template"),u=t("../../plots/array_container_defaults");function h(t,e){function r(r,i){return n.coerce(t,e,a.link.colorscales,r,i)}r("label"),r("cmin"),r("cmax"),r("colorscale")}e.exports=function(t,e,r,f){function p(r,i){return n.coerce(t,e,a,r,i)}var d=n.extendDeep(f.hoverlabel,t.hoverlabel),g=t.node,m=c.newContainer(e,"node");function v(t,e){return n.coerce(g,m,a.node,t,e)}v("label"),v("groups"),v("x"),v("y"),v("pad"),v("thickness"),v("line.color"),v("line.width"),v("hoverinfo",t.hoverinfo),l(g,m,v,d),v("hovertemplate");var y=f.colorway;v("color",m.label.map((function(t,e){return i.addOpacity(function(t){return y[t%y.length]}(e),.8)}))),v("customdata");var x=t.link||{},b=c.newContainer(e,"link");function _(t,e){return n.coerce(x,b,a.link,t,e)}_("label"),_("source"),_("target"),_("value"),_("line.color"),_("line.width"),_("hoverinfo",t.hoverinfo),l(x,b,_,d),_("hovertemplate");var w,T=o(f.paper_bgcolor).getLuminance()<.333?"rgba(255, 255, 255, 0.6)":"rgba(0, 0, 0, 0.2)";_("color",n.repeat(T,b.value.length)),_("customdata"),u(x,b,{name:"colorscales",handleItemDefaults:h}),s(e,f,p),p("orientation"),p("valueformat"),p("valuesuffix"),m.x.length&&m.y.length&&(w="freeform"),p("arrangement",w),n.coerceFont(p,"textfont",n.extendFlat({},f.font)),e._length=null}},{"../../components/color":595,"../../components/fx/hoverlabel_defaults":633,"../../lib":728,"../../plot_api/plot_template":766,"../../plots/array_container_defaults":772,"../../plots/domain":803,"./attributes":1124,tinycolor2:528}],1129:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),supplyDefaults:t("./defaults"),calc:t("./calc"),plot:t("./plot"),moduleType:"trace",name:"sankey",basePlotModule:t("./base_plot"),selectPoints:t("./select.js"),categories:["noOpacity"],meta:{}}},{"./attributes":1124,"./base_plot":1125,"./calc":1126,"./defaults":1128,"./plot":1130,"./select.js":1132}],1130:[function(t,e,r){"use strict";var n=t("d3"),a=t("./render"),i=t("../../components/fx"),o=t("../../components/color"),s=t("../../lib"),l=t("./constants").cn,c=s._;function u(t){return""!==t}function h(t,e){return t.filter((function(t){return t.key===e.traceId}))}function f(t,e){n.select(t).select("path").style("fill-opacity",e),n.select(t).select("rect").style("fill-opacity",e)}function p(t){n.select(t).select("text.name").style("fill","black")}function d(t){return function(e){return-1!==t.node.sourceLinks.indexOf(e.link)||-1!==t.node.targetLinks.indexOf(e.link)}}function g(t){return function(e){return-1!==e.node.sourceLinks.indexOf(t.link)||-1!==e.node.targetLinks.indexOf(t.link)}}function m(t,e,r){e&&r&&h(r,e).selectAll("."+l.sankeyLink).filter(d(e)).call(y.bind(0,e,r,!1))}function v(t,e,r){e&&r&&h(r,e).selectAll("."+l.sankeyLink).filter(d(e)).call(x.bind(0,e,r,!1))}function y(t,e,r,n){var a=n.datum().link.label;n.style("fill-opacity",(function(t){if(!t.link.concentrationscale)return.4})),a&&h(e,t).selectAll("."+l.sankeyLink).filter((function(t){return t.link.label===a})).style("fill-opacity",(function(t){if(!t.link.concentrationscale)return.4})),r&&h(e,t).selectAll("."+l.sankeyNode).filter(g(t)).call(m)}function x(t,e,r,n){var a=n.datum().link.label;n.style("fill-opacity",(function(t){return t.tinyColorAlpha})),a&&h(e,t).selectAll("."+l.sankeyLink).filter((function(t){return t.link.label===a})).style("fill-opacity",(function(t){return t.tinyColorAlpha})),r&&h(e,t).selectAll(l.sankeyNode).filter(g(t)).call(v)}function b(t,e){var r=t.hoverlabel||{},n=s.nestedProperty(r,e).get();return!Array.isArray(n)&&n}e.exports=function(t,e){for(var r=t._fullLayout,s=r._paper,h=r._size,d=0;d<t._fullData.length;d++)if(t._fullData[d].visible&&t._fullData[d].type===l.sankey&&!t._fullData[d]._viewInitial){var g=t._fullData[d].node;t._fullData[d]._viewInitial={node:{groups:g.groups.slice(),x:g.x.slice(),y:g.y.slice()}}}var _=c(t,"source:")+" ",w=c(t,"target:")+" ",T=c(t,"concentration:")+" ",k=c(t,"incoming flow count:")+" ",A=c(t,"outgoing flow count:")+" ";a(t,s,e,{width:h.w,height:h.h,margin:{t:h.t,r:h.r,b:h.b,l:h.l}},{linkEvents:{hover:function(e,r,a){!1!==t._fullLayout.hovermode&&(n.select(e).call(y.bind(0,r,a,!0)),"skip"!==r.link.trace.link.hoverinfo&&(r.link.fullData=r.link.trace,t.emit("plotly_hover",{event:n.event,points:[r.link]})))},follow:function(e,a){if(!1!==t._fullLayout.hovermode){var s=a.link.trace.link;if("none"!==s.hoverinfo&&"skip"!==s.hoverinfo){for(var l=[],c=0,h=0;h<a.flow.links.length;h++){var d=a.flow.links[h];if("closest"!==t._fullLayout.hovermode||a.link.pointNumber===d.pointNumber){a.link.pointNumber===d.pointNumber&&(c=h),d.fullData=d.trace,s=a.link.trace.link;var g=v(d),m={valueLabel:n.format(a.valueFormat)(d.value)+a.valueSuffix};l.push({x:g[0],y:g[1],name:m.valueLabel,text:[d.label||"",_+d.source.label,w+d.target.label,d.concentrationscale?T+n.format("%0.2f")(d.flow.labelConcentration):""].filter(u).join("<br>"),color:b(s,"bgcolor")||o.addOpacity(d.color,1),borderColor:b(s,"bordercolor"),fontFamily:b(s,"font.family"),fontSize:b(s,"font.size"),fontColor:b(s,"font.color"),nameLength:b(s,"namelength"),textAlign:b(s,"align"),idealAlign:n.event.x<g[0]?"right":"left",hovertemplate:s.hovertemplate,hovertemplateLabels:m,eventData:[d]})}}i.loneHover(l,{container:r._hoverlayer.node(),outerContainer:r._paper.node(),gd:t,anchorIndex:c}).each((function(){a.link.concentrationscale||f(this,.65),p(this)}))}}function v(t){var e,r;t.circular?(e=(t.circularPathData.leftInnerExtent+t.circularPathData.rightInnerExtent)/2,r=t.circularPathData.verticalFullExtent):(e=(t.source.x1+t.target.x0)/2,r=(t.y0+t.y1)/2);var n=[e,r];return"v"===t.trace.orientation&&n.reverse(),n[0]+=a.parent.translateX,n[1]+=a.parent.translateY,n}},unhover:function(e,a,o){!1!==t._fullLayout.hovermode&&(n.select(e).call(x.bind(0,a,o,!0)),"skip"!==a.link.trace.link.hoverinfo&&(a.link.fullData=a.link.trace,t.emit("plotly_unhover",{event:n.event,points:[a.link]})),i.loneUnhover(r._hoverlayer.node()))},select:function(e,r){var a=r.link;a.originalEvent=n.event,t._hoverdata=[a],i.click(t,{target:!0})}},nodeEvents:{hover:function(e,r,a){!1!==t._fullLayout.hovermode&&(n.select(e).call(m,r,a),"skip"!==r.node.trace.node.hoverinfo&&(r.node.fullData=r.node.trace,t.emit("plotly_hover",{event:n.event,points:[r.node]})))},follow:function(e,a){if(!1!==t._fullLayout.hovermode){var o=a.node.trace.node;if("none"!==o.hoverinfo&&"skip"!==o.hoverinfo){var s=n.select(e).select("."+l.nodeRect),c=t._fullLayout._paperdiv.node().getBoundingClientRect(),h=s.node().getBoundingClientRect(),d=h.left-2-c.left,g=h.right+2-c.left,m=h.top+h.height/4-c.top,v={valueLabel:n.format(a.valueFormat)(a.node.value)+a.valueSuffix};a.node.fullData=a.node.trace;var y=i.loneHover({x0:d,x1:g,y:m,name:n.format(a.valueFormat)(a.node.value)+a.valueSuffix,text:[a.node.label,k+a.node.targetLinks.length,A+a.node.sourceLinks.length].filter(u).join("<br>"),color:b(o,"bgcolor")||a.tinyColorHue,borderColor:b(o,"bordercolor"),fontFamily:b(o,"font.family"),fontSize:b(o,"font.size"),fontColor:b(o,"font.color"),nameLength:b(o,"namelength"),textAlign:b(o,"align"),idealAlign:"left",hovertemplate:o.hovertemplate,hovertemplateLabels:v,eventData:[a.node]},{container:r._hoverlayer.node(),outerContainer:r._paper.node(),gd:t});f(y,.85),p(y)}}},unhover:function(e,a,o){!1!==t._fullLayout.hovermode&&(n.select(e).call(v,a,o),"skip"!==a.node.trace.node.hoverinfo&&(a.node.fullData=a.node.trace,t.emit("plotly_unhover",{event:n.event,points:[a.node]})),i.loneUnhover(r._hoverlayer.node()))},select:function(e,r,a){var o=r.node;o.originalEvent=n.event,t._hoverdata=[o],n.select(e).call(v,r,a),i.click(t,{target:!0})}}})}},{"../../components/color":595,"../../components/fx":635,"../../lib":728,"./constants":1127,"./render":1131,d3:164}],1131:[function(t,e,r){"use strict";var n=t("./constants"),a=t("d3"),i=t("tinycolor2"),o=t("../../components/color"),s=t("../../components/drawing"),l=t("@plotly/d3-sankey"),c=t("@plotly/d3-sankey-circular"),u=t("d3-force"),h=t("../../lib"),f=t("../../lib/gup"),p=f.keyFun,d=f.repeat,g=f.unwrap,m=t("d3-interpolate").interpolateNumber,v=t("../../registry");function y(t,e,r){var a,o=g(e),s=o.trace,u=s.domain,f="h"===s.orientation,p=s.node.pad,d=s.node.thickness,m=t.width*(u.x[1]-u.x[0]),v=t.height*(u.y[1]-u.y[0]),y=o._nodes,x=o._links,b=o.circular;(a=b?c.sankeyCircular().circularLinkGap(0):l.sankey()).iterations(n.sankeyIterations).size(f?[m,v]:[v,m]).nodeWidth(d).nodePadding(p).nodeId((function(t){return t.pointNumber})).nodes(y).links(x);var _,w,T,k=a();for(var A in a.nodePadding()<p&&h.warn("node.pad was reduced to ",a.nodePadding()," to fit within the figure."),o._groupLookup){var M,S=parseInt(o._groupLookup[A]);for(_=0;_<k.nodes.length;_++)if(k.nodes[_].pointNumber===S){M=k.nodes[_];break}if(M){var E={pointNumber:parseInt(A),x0:M.x0,x1:M.x1,y0:M.y0,y1:M.y1,partOfGroup:!0,sourceLinks:[],targetLinks:[]};k.nodes.unshift(E),M.childrenNodes.unshift(E)}}if(function(){for(_=0;_<k.nodes.length;_++){var t,e,r=k.nodes[_],n={};for(w=0;w<r.targetLinks.length;w++)t=(e=r.targetLinks[w]).source.pointNumber+":"+e.target.pointNumber,n.hasOwnProperty(t)||(n[t]=[]),n[t].push(e);var a=Object.keys(n);for(w=0;w<a.length;w++){var o=n[t=a[w]],s=0,l={};for(T=0;T<o.length;T++)l[(e=o[T]).label]||(l[e.label]=0),l[e.label]+=e.value,s+=e.value;for(T=0;T<o.length;T++)(e=o[T]).flow={value:s,labelConcentration:l[e.label]/s,concentration:e.value/s,links:o},e.concentrationscale&&(e.color=i(e.concentrationscale(e.flow.labelConcentration)))}var c=0;for(w=0;w<r.sourceLinks.length;w++)c+=r.sourceLinks[w].value;for(w=0;w<r.sourceLinks.length;w++)(e=r.sourceLinks[w]).concentrationOut=e.value/c;var u=0;for(w=0;w<r.targetLinks.length;w++)u+=r.targetLinks[w].value;for(w=0;w<r.targetLinks.length;w++)(e=r.targetLinks[w]).concenrationIn=e.value/u}}(),s.node.x.length&&s.node.y.length){for(_=0;_<Math.min(s.node.x.length,s.node.y.length,k.nodes.length);_++)if(s.node.x[_]&&s.node.y[_]){var C=[s.node.x[_]*m,s.node.y[_]*v];k.nodes[_].x0=C[0]-d/2,k.nodes[_].x1=C[0]+d/2;var L=k.nodes[_].y1-k.nodes[_].y0;k.nodes[_].y0=C[1]-L/2,k.nodes[_].y1=C[1]+L/2}if("snap"===s.arrangement)!function(t){t.forEach((function(t){var e,r,n,a=0,i=t.length;for(t.sort((function(t,e){return t.y0-e.y0})),n=0;n<i;++n)(e=t[n]).y0>=a||(r=a-e.y0)>1e-6&&(e.y0+=r,e.y1+=r),a=e.y1+p}))}(function(t){var e,r,n=t.map((function(t,e){return{x0:t.x0,index:e}})).sort((function(t,e){return t.x0-e.x0})),a=[],i=-1,o=-1/0;for(_=0;_<n.length;_++){var s=t[n[_].index];s.x0>o+d&&(i+=1,e=s.x0),o=s.x0,a[i]||(a[i]=[]),a[i].push(s),r=e-s.x0,s.x0+=r,s.x1+=r}return a}(y=k.nodes));a.update(k)}return{circular:b,key:r,trace:s,guid:h.randstr(),horizontal:f,width:m,height:v,nodePad:s.node.pad,nodeLineColor:s.node.line.color,nodeLineWidth:s.node.line.width,linkLineColor:s.link.line.color,linkLineWidth:s.link.line.width,valueFormat:s.valueformat,valueSuffix:s.valuesuffix,textFont:s.textfont,translateX:u.x[0]*t.width+t.margin.l,translateY:t.height-u.y[1]*t.height+t.margin.t,dragParallel:f?v:m,dragPerpendicular:f?m:v,arrangement:s.arrangement,sankey:a,graph:k,forceLayouts:{},interactionState:{dragInProgress:!1,hovered:!1}}}function x(t,e,r){var n=i(e.color),a=e.source.label+"|"+e.target.label+"__"+r;return e.trace=t.trace,e.curveNumber=t.trace.index,{circular:t.circular,key:a,traceId:t.key,pointNumber:e.pointNumber,link:e,tinyColorHue:o.tinyRGB(n),tinyColorAlpha:n.getAlpha(),linkPath:b,linkLineColor:t.linkLineColor,linkLineWidth:t.linkLineWidth,valueFormat:t.valueFormat,valueSuffix:t.valueSuffix,sankey:t.sankey,parent:t,interactionState:t.interactionState,flow:e.flow}}function b(){return function(t){if(t.link.circular)return e=t.link,r=e.width/2,n=e.circularPathData,"top"===e.circularLinkType?"M "+n.targetX+" "+(n.targetY+r)+" L"+n.rightInnerExtent+" "+(n.targetY+r)+"A"+(n.rightLargeArcRadius+r)+" "+(n.rightSmallArcRadius+r)+" 0 0 1 "+(n.rightFullExtent-r)+" "+(n.targetY-n.rightSmallArcRadius)+"L"+(n.rightFullExtent-r)+" "+n.verticalRightInnerExtent+"A"+(n.rightLargeArcRadius+r)+" "+(n.rightLargeArcRadius+r)+" 0 0 1 "+n.rightInnerExtent+" "+(n.verticalFullExtent-r)+"L"+n.leftInnerExtent+" "+(n.verticalFullExtent-r)+"A"+(n.leftLargeArcRadius+r)+" "+(n.leftLargeArcRadius+r)+" 0 0 1 "+(n.leftFullExtent+r)+" "+n.verticalLeftInnerExtent+"L"+(n.leftFullExtent+r)+" "+(n.sourceY-n.leftSmallArcRadius)+"A"+(n.leftLargeArcRadius+r)+" "+(n.leftSmallArcRadius+r)+" 0 0 1 "+n.leftInnerExtent+" "+(n.sourceY+r)+"L"+n.sourceX+" "+(n.sourceY+r)+"L"+n.sourceX+" "+(n.sourceY-r)+"L"+n.leftInnerExtent+" "+(n.sourceY-r)+"A"+(n.leftLargeArcRadius-r)+" "+(n.leftSmallArcRadius-r)+" 0 0 0 "+(n.leftFullExtent-r)+" "+(n.sourceY-n.leftSmallArcRadius)+"L"+(n.leftFullExtent-r)+" "+n.verticalLeftInnerExtent+"A"+(n.leftLargeArcRadius-r)+" "+(n.leftLargeArcRadius-r)+" 0 0 0 "+n.leftInnerExtent+" "+(n.verticalFullExtent+r)+"L"+n.rightInnerExtent+" "+(n.verticalFullExtent+r)+"A"+(n.rightLargeArcRadius-r)+" "+(n.rightLargeArcRadius-r)+" 0 0 0 "+(n.rightFullExtent+r)+" "+n.verticalRightInnerExtent+"L"+(n.rightFullExtent+r)+" "+(n.targetY-n.rightSmallArcRadius)+"A"+(n.rightLargeArcRadius-r)+" "+(n.rightSmallArcRadius-r)+" 0 0 0 "+n.rightInnerExtent+" "+(n.targetY-r)+"L"+n.targetX+" "+(n.targetY-r)+"Z":"M "+n.targetX+" "+(n.targetY-r)+" L"+n.rightInnerExtent+" "+(n.targetY-r)+"A"+(n.rightLargeArcRadius+r)+" "+(n.rightSmallArcRadius+r)+" 0 0 0 "+(n.rightFullExtent-r)+" "+(n.targetY+n.rightSmallArcRadius)+"L"+(n.rightFullExtent-r)+" "+n.verticalRightInnerExtent+"A"+(n.rightLargeArcRadius+r)+" "+(n.rightLargeArcRadius+r)+" 0 0 0 "+n.rightInnerExtent+" "+(n.verticalFullExtent+r)+"L"+n.leftInnerExtent+" "+(n.verticalFullExtent+r)+"A"+(n.leftLargeArcRadius+r)+" "+(n.leftLargeArcRadius+r)+" 0 0 0 "+(n.leftFullExtent+r)+" "+n.verticalLeftInnerExtent+"L"+(n.leftFullExtent+r)+" "+(n.sourceY+n.leftSmallArcRadius)+"A"+(n.leftLargeArcRadius+r)+" "+(n.leftSmallArcRadius+r)+" 0 0 0 "+n.leftInnerExtent+" "+(n.sourceY-r)+"L"+n.sourceX+" "+(n.sourceY-r)+"L"+n.sourceX+" "+(n.sourceY+r)+"L"+n.leftInnerExtent+" "+(n.sourceY+r)+"A"+(n.leftLargeArcRadius-r)+" "+(n.leftSmallArcRadius-r)+" 0 0 1 "+(n.leftFullExtent-r)+" "+(n.sourceY+n.leftSmallArcRadius)+"L"+(n.leftFullExtent-r)+" "+n.verticalLeftInnerExtent+"A"+(n.leftLargeArcRadius-r)+" "+(n.leftLargeArcRadius-r)+" 0 0 1 "+n.leftInnerExtent+" "+(n.verticalFullExtent-r)+"L"+n.rightInnerExtent+" "+(n.verticalFullExtent-r)+"A"+(n.rightLargeArcRadius-r)+" "+(n.rightLargeArcRadius-r)+" 0 0 1 "+(n.rightFullExtent+r)+" "+n.verticalRightInnerExtent+"L"+(n.rightFullExtent+r)+" "+(n.targetY+n.rightSmallArcRadius)+"A"+(n.rightLargeArcRadius-r)+" "+(n.rightSmallArcRadius-r)+" 0 0 1 "+n.rightInnerExtent+" "+(n.targetY+r)+"L"+n.targetX+" "+(n.targetY+r)+"Z";var e,r,n,a=t.link.source.x1,i=t.link.target.x0,o=m(a,i),s=o(.5),l=o(.5),c=t.link.y0-t.link.width/2,u=t.link.y0+t.link.width/2,h=t.link.y1-t.link.width/2,f=t.link.y1+t.link.width/2;return"M"+a+","+c+"C"+s+","+c+" "+l+","+h+" "+i+","+h+"L"+i+","+f+"C"+l+","+f+" "+s+","+u+" "+a+","+u+"Z"}}function _(t,e){var r=i(e.color),a=n.nodePadAcross,s=t.nodePad/2;e.dx=e.x1-e.x0,e.dy=e.y1-e.y0;var l=e.dx,c=Math.max(.5,e.dy),u="node_"+e.pointNumber;return e.group&&(u=h.randstr()),e.trace=t.trace,e.curveNumber=t.trace.index,{index:e.pointNumber,key:u,partOfGroup:e.partOfGroup||!1,group:e.group,traceId:t.key,trace:t.trace,node:e,nodePad:t.nodePad,nodeLineColor:t.nodeLineColor,nodeLineWidth:t.nodeLineWidth,textFont:t.textFont,size:t.horizontal?t.height:t.width,visibleWidth:Math.ceil(l),visibleHeight:c,zoneX:-a,zoneY:-s,zoneWidth:l+2*a,zoneHeight:c+2*s,labelY:t.horizontal?e.dy/2+1:e.dx/2+1,left:1===e.originalLayer,sizeAcross:t.width,forceLayouts:t.forceLayouts,horizontal:t.horizontal,darkBackground:r.getBrightness()<=128,tinyColorHue:o.tinyRGB(r),tinyColorAlpha:r.getAlpha(),valueFormat:t.valueFormat,valueSuffix:t.valueSuffix,sankey:t.sankey,graph:t.graph,arrangement:t.arrangement,uniqueNodeLabelPathId:[t.guid,t.key,u].join("_"),interactionState:t.interactionState,figure:t}}function w(t){t.attr("transform",(function(t){return"translate("+t.node.x0.toFixed(3)+", "+t.node.y0.toFixed(3)+")"}))}function T(t){t.call(w)}function k(t,e){t.call(T),e.attr("d",b())}function A(t){t.attr("width",(function(t){return t.node.x1-t.node.x0})).attr("height",(function(t){return t.visibleHeight}))}function M(t){return t.link.width>1||t.linkLineWidth>0}function S(t){return"translate("+t.translateX+","+t.translateY+")"+(t.horizontal?"matrix(1 0 0 1 0 0)":"matrix(0 1 1 0 0 0)")}function E(t){return"translate("+(t.horizontal?0:t.labelY)+" "+(t.horizontal?t.labelY:0)+")"}function C(t){return a.svg.line()([[t.horizontal?t.left?-t.sizeAcross:t.visibleWidth+n.nodeTextOffsetHorizontal:n.nodeTextOffsetHorizontal,0],[t.horizontal?t.left?-n.nodeTextOffsetHorizontal:t.sizeAcross:t.visibleHeight-n.nodeTextOffsetHorizontal,0]])}function L(t){return t.horizontal?"matrix(1 0 0 1 0 0)":"matrix(0 1 1 0 0 0)"}function P(t){return t.horizontal?"scale(1 1)":"scale(-1 1)"}function I(t){return t.darkBackground&&!t.horizontal?"rgb(255,255,255)":"rgb(0,0,0)"}function z(t){return t.horizontal&&t.left?"100%":"0%"}function O(t,e,r){t.on(".basic",null).on("mouseover.basic",(function(t){t.interactionState.dragInProgress||t.partOfGroup||(r.hover(this,t,e),t.interactionState.hovered=[this,t])})).on("mousemove.basic",(function(t){t.interactionState.dragInProgress||t.partOfGroup||(r.follow(this,t),t.interactionState.hovered=[this,t])})).on("mouseout.basic",(function(t){t.interactionState.dragInProgress||t.partOfGroup||(r.unhover(this,t,e),t.interactionState.hovered=!1)})).on("click.basic",(function(t){t.interactionState.hovered&&(r.unhover(this,t,e),t.interactionState.hovered=!1),t.interactionState.dragInProgress||t.partOfGroup||r.select(this,t,e)}))}function D(t,e,r,i){var o=a.behavior.drag().origin((function(t){return{x:t.node.x0+t.visibleWidth/2,y:t.node.y0+t.visibleHeight/2}})).on("dragstart",(function(a){if("fixed"!==a.arrangement&&(h.ensureSingle(i._fullLayout._infolayer,"g","dragcover",(function(t){i._fullLayout._dragCover=t})),h.raiseToTop(this),a.interactionState.dragInProgress=a.node,F(a.node),a.interactionState.hovered&&(r.nodeEvents.unhover.apply(0,a.interactionState.hovered),a.interactionState.hovered=!1),"snap"===a.arrangement)){var o=a.traceId+"|"+a.key;a.forceLayouts[o]?a.forceLayouts[o].alpha(1):function(t,e,r,a){!function(t){for(var e=0;e<t.length;e++)t[e].y=(t[e].y0+t[e].y1)/2,t[e].x=(t[e].x0+t[e].x1)/2}(r.graph.nodes);var i=r.graph.nodes.filter((function(t){return t.originalX===r.node.originalX})).filter((function(t){return!t.partOfGroup}));r.forceLayouts[e]=u.forceSimulation(i).alphaDecay(0).force("collide",u.forceCollide().radius((function(t){return t.dy/2+r.nodePad/2})).strength(1).iterations(n.forceIterations)).force("constrain",function(t,e,r,a){return function(){for(var t=0,i=0;i<r.length;i++){var o=r[i];o===a.interactionState.dragInProgress?(o.x=o.lastDraggedX,o.y=o.lastDraggedY):(o.vx=(o.originalX-o.x)/n.forceTicksPerFrame,o.y=Math.min(a.size-o.dy/2,Math.max(o.dy/2,o.y))),t=Math.max(t,Math.abs(o.vx),Math.abs(o.vy))}!a.interactionState.dragInProgress&&t<.1&&a.forceLayouts[e].alpha()>0&&a.forceLayouts[e].alpha(0)}}(0,e,i,r)).stop()}(0,o,a),function(t,e,r,a,i){window.requestAnimationFrame((function o(){var s;for(s=0;s<n.forceTicksPerFrame;s++)r.forceLayouts[a].tick();if(function(t){for(var e=0;e<t.length;e++)t[e].y0=t[e].y-t[e].dy/2,t[e].y1=t[e].y0+t[e].dy,t[e].x0=t[e].x-t[e].dx/2,t[e].x1=t[e].x0+t[e].dx}(r.graph.nodes),r.sankey.update(r.graph),k(t.filter(B(r)),e),r.forceLayouts[a].alpha()>0)window.requestAnimationFrame(o);else{var l=r.node.originalX;r.node.x0=l-r.visibleWidth/2,r.node.x1=l+r.visibleWidth/2,R(r,i)}}))}(t,e,a,o,i)}})).on("drag",(function(r){if("fixed"!==r.arrangement){var n=a.event.x,i=a.event.y;"snap"===r.arrangement?(r.node.x0=n-r.visibleWidth/2,r.node.x1=n+r.visibleWidth/2,r.node.y0=i-r.visibleHeight/2,r.node.y1=i+r.visibleHeight/2):("freeform"===r.arrangement&&(r.node.x0=n-r.visibleWidth/2,r.node.x1=n+r.visibleWidth/2),i=Math.max(0,Math.min(r.size-r.visibleHeight/2,i)),r.node.y0=i-r.visibleHeight/2,r.node.y1=i+r.visibleHeight/2),F(r.node),"snap"!==r.arrangement&&(r.sankey.update(r.graph),k(t.filter(B(r)),e))}})).on("dragend",(function(t){if("fixed"!==t.arrangement){t.interactionState.dragInProgress=!1;for(var e=0;e<t.node.childrenNodes.length;e++)t.node.childrenNodes[e].x=t.node.x,t.node.childrenNodes[e].y=t.node.y;"snap"!==t.arrangement&&R(t,i)}}));t.on(".drag",null).call(o)}function R(t,e){for(var r=[],n=[],a=0;a<t.graph.nodes.length;a++){var i=(t.graph.nodes[a].x0+t.graph.nodes[a].x1)/2,o=(t.graph.nodes[a].y0+t.graph.nodes[a].y1)/2;r.push(i/t.figure.width),n.push(o/t.figure.height)}v.call("_guiRestyle",e,{"node.x":[r],"node.y":[n]},t.trace.index).then((function(){e._fullLayout._dragCover&&e._fullLayout._dragCover.remove()}))}function F(t){t.lastDraggedX=t.x0+t.dx/2,t.lastDraggedY=t.y0+t.dy/2}function B(t){return function(e){return e.node.originalX===t.node.originalX}}e.exports=function(t,e,r,l,c){var u=!1;h.ensureSingle(t._fullLayout._infolayer,"g","first-render",(function(){u=!0}));var f=t._fullLayout._dragCover,m=r.filter((function(t){return g(t).trace.visible})).map(y.bind(null,l)),v=e.selectAll("."+n.cn.sankey).data(m,p);v.exit().remove(),v.enter().append("g").classed(n.cn.sankey,!0).style("box-sizing","content-box").style("position","absolute").style("left",0).style("shape-rendering","geometricPrecision").style("pointer-events","auto").attr("transform",S),v.each((function(e,r){t._fullData[r]._sankey=e;var n="bgsankey-"+e.trace.uid+"-"+r;h.ensureSingle(t._fullLayout._draggers,"rect",n),t._fullData[r]._bgRect=a.select("."+n),t._fullData[r]._bgRect.style("pointer-events","all").attr("width",e.width).attr("height",e.height).attr("x",e.translateX).attr("y",e.translateY).classed("bgsankey",!0).style({fill:"transparent","stroke-width":0})})),v.transition().ease(n.ease).duration(n.duration).attr("transform",S);var T=v.selectAll("."+n.cn.sankeyLinks).data(d,p);T.enter().append("g").classed(n.cn.sankeyLinks,!0).style("fill","none");var k=T.selectAll("."+n.cn.sankeyLink).data((function(t){return t.graph.links.filter((function(t){return t.value})).map(x.bind(null,t))}),p);k.enter().append("path").classed(n.cn.sankeyLink,!0).call(O,v,c.linkEvents),k.style("stroke",(function(t){return M(t)?o.tinyRGB(i(t.linkLineColor)):t.tinyColorHue})).style("stroke-opacity",(function(t){return M(t)?o.opacity(t.linkLineColor):t.tinyColorAlpha})).style("fill",(function(t){return t.tinyColorHue})).style("fill-opacity",(function(t){return t.tinyColorAlpha})).style("stroke-width",(function(t){return M(t)?t.linkLineWidth:1})).attr("d",b()),k.style("opacity",(function(){return t._context.staticPlot||u||f?1:0})).transition().ease(n.ease).duration(n.duration).style("opacity",1),k.exit().transition().ease(n.ease).duration(n.duration).style("opacity",0).remove();var R=v.selectAll("."+n.cn.sankeyNodeSet).data(d,p);R.enter().append("g").classed(n.cn.sankeyNodeSet,!0),R.style("cursor",(function(t){switch(t.arrangement){case"fixed":return"default";case"perpendicular":return"ns-resize";default:return"move"}}));var F=R.selectAll("."+n.cn.sankeyNode).data((function(t){var e=t.graph.nodes;return function(t){var e,r=[];for(e=0;e<t.length;e++)t[e].originalX=(t[e].x0+t[e].x1)/2,t[e].originalY=(t[e].y0+t[e].y1)/2,-1===r.indexOf(t[e].originalX)&&r.push(t[e].originalX);for(r.sort((function(t,e){return t-e})),e=0;e<t.length;e++)t[e].originalLayerIndex=r.indexOf(t[e].originalX),t[e].originalLayer=t[e].originalLayerIndex/(r.length-1)}(e),e.map(_.bind(null,t))}),p);F.enter().append("g").classed(n.cn.sankeyNode,!0).call(w).style("opacity",(function(e){return!t._context.staticPlot&&!u||e.partOfGroup?0:1})),F.call(O,v,c.nodeEvents).call(D,k,c,t),F.transition().ease(n.ease).duration(n.duration).call(w).style("opacity",(function(t){return t.partOfGroup?0:1})),F.exit().transition().ease(n.ease).duration(n.duration).style("opacity",0).remove();var B=F.selectAll("."+n.cn.nodeRect).data(d);B.enter().append("rect").classed(n.cn.nodeRect,!0).call(A),B.style("stroke-width",(function(t){return t.nodeLineWidth})).style("stroke",(function(t){return o.tinyRGB(i(t.nodeLineColor))})).style("stroke-opacity",(function(t){return o.opacity(t.nodeLineColor)})).style("fill",(function(t){return t.tinyColorHue})).style("fill-opacity",(function(t){return t.tinyColorAlpha})),B.transition().ease(n.ease).duration(n.duration).call(A);var N=F.selectAll("."+n.cn.nodeCapture).data(d);N.enter().append("rect").classed(n.cn.nodeCapture,!0).style("fill-opacity",0),N.attr("x",(function(t){return t.zoneX})).attr("y",(function(t){return t.zoneY})).attr("width",(function(t){return t.zoneWidth})).attr("height",(function(t){return t.zoneHeight}));var j=F.selectAll("."+n.cn.nodeCentered).data(d);j.enter().append("g").classed(n.cn.nodeCentered,!0).attr("transform",E),j.transition().ease(n.ease).duration(n.duration).attr("transform",E);var V=j.selectAll("."+n.cn.nodeLabelGuide).data(d);V.enter().append("path").classed(n.cn.nodeLabelGuide,!0).attr("id",(function(t){return t.uniqueNodeLabelPathId})).attr("d",C).attr("transform",L),V.transition().ease(n.ease).duration(n.duration).attr("d",C).attr("transform",L);var U=j.selectAll("."+n.cn.nodeLabel).data(d);U.enter().append("text").classed(n.cn.nodeLabel,!0).attr("transform",P).style("user-select","none").style("cursor","default").style("fill","black"),U.style("text-shadow",(function(t){return t.horizontal?"-1px 1px 1px #fff, 1px 1px 1px #fff, 1px -1px 1px #fff, -1px -1px 1px #fff":"none"})).each((function(t){s.font(U,t.textFont)})),U.transition().ease(n.ease).duration(n.duration).attr("transform",P);var q=U.selectAll("."+n.cn.nodeLabelTextPath).data(d);q.enter().append("textPath").classed(n.cn.nodeLabelTextPath,!0).attr("alignment-baseline","middle").attr("xlink:href",(function(t){return"#"+t.uniqueNodeLabelPathId})).attr("startOffset",z).style("fill",I),q.text((function(t){return t.horizontal||t.node.dy>5?t.node.label:""})).attr("text-anchor",(function(t){return t.horizontal&&t.left?"end":"start"})),q.transition().ease(n.ease).duration(n.duration).attr("startOffset",z).style("fill",I)}},{"../../components/color":595,"../../components/drawing":617,"../../lib":728,"../../lib/gup":726,"../../registry":859,"./constants":1127,"@plotly/d3-sankey":56,"@plotly/d3-sankey-circular":55,d3:164,"d3-force":157,"d3-interpolate":159,tinycolor2:528}],1132:[function(t,e,r){"use strict";e.exports=function(t,e){for(var r=[],n=t.cd[0].trace,a=n._sankey.graph.nodes,i=0;i<a.length;i++){var o=a[i];if(!o.partOfGroup){var s=[(o.x0+o.x1)/2,(o.y0+o.y1)/2];"v"===n.orientation&&s.reverse(),e&&e.contains(s,!1,i,t)&&r.push({pointNumber:o.pointNumber})}}return r}},{}],1133:[function(t,e,r){"use strict";var n=t("../../lib");e.exports=function(t,e){for(var r=0;r<t.length;r++)t[r].i=r;n.mergeArray(e.text,t,"tx"),n.mergeArray(e.texttemplate,t,"txt"),n.mergeArray(e.hovertext,t,"htx"),n.mergeArray(e.customdata,t,"data"),n.mergeArray(e.textposition,t,"tp"),e.textfont&&(n.mergeArrayCastPositive(e.textfont.size,t,"ts"),n.mergeArray(e.textfont.color,t,"tc"),n.mergeArray(e.textfont.family,t,"tf"));var a=e.marker;if(a){n.mergeArrayCastPositive(a.size,t,"ms"),n.mergeArrayCastPositive(a.opacity,t,"mo"),n.mergeArray(a.symbol,t,"mx"),n.mergeArray(a.color,t,"mc");var i=a.line;a.line&&(n.mergeArray(i.color,t,"mlc"),n.mergeArrayCastPositive(i.width,t,"mlw"));var o=a.gradient;o&&"none"!==o.type&&(n.mergeArray(o.type,t,"mgt"),n.mergeArray(o.color,t,"mgc"))}}},{"../../lib":728}],1134:[function(t,e,r){"use strict";var n=t("../../plots/template_attributes").texttemplateAttrs,a=t("../../plots/template_attributes").hovertemplateAttrs,i=t("../../components/colorscale/attributes"),o=t("../../plots/font_attributes"),s=t("../../components/drawing/attributes").dash,l=t("../../components/drawing"),c=t("./constants"),u=t("../../lib/extend").extendFlat;e.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},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:n({},{}),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:a({},{keys:c.eventDataKeys}),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:u({},s,{editType:"style"}),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:{valType:"color",editType:"style",anim:!0},marker:u({symbol:{valType:"enumerated",values:l.symbolList,dflt:"circle",arrayOk:!0,editType:"style"},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",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:u({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},i("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"},i("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:o({editType:"calc",colorEditType:"style",arrayOk:!0}),r:{valType:"data_array",editType:"calc"},t:{valType:"data_array",editType:"calc"}}},{"../../components/colorscale/attributes":602,"../../components/drawing":617,"../../components/drawing/attributes":616,"../../lib/extend":719,"../../plots/font_attributes":804,"../../plots/template_attributes":854,"./constants":1138}],1135:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../../lib"),i=t("../../plots/cartesian/axes"),o=t("../../constants/numerical").BADNUM,s=t("./subtypes"),l=t("./colorscale_calc"),c=t("./arrays_to_calcdata"),u=t("./calc_selection");function h(t,e,r,n,a,o,l){var c=e._length,u=t._fullLayout,h=r._id,f=n._id,p=u._firstScatter[d(e)]===e.uid,m=(g(e,u,r,n)||{}).orientation,v=e.fill;r._minDtick=0,n._minDtick=0;var y={padded:!0},x={padded:!0};l&&(y.ppad=x.ppad=l);var b=c<2||a[0]!==a[c-1]||o[0]!==o[c-1];b&&("tozerox"===v||"tonextx"===v&&(p||"h"===m))?y.tozero=!0:(e.error_y||{}).visible||"tonexty"!==v&&"tozeroy"!==v&&(s.hasMarkers(e)||s.hasText(e))||(y.padded=!1,y.ppad=0),b&&("tozeroy"===v||"tonexty"===v&&(p||"v"===m))?x.tozero=!0:"tonextx"!==v&&"tozerox"!==v||(x.padded=!1),h&&(e._extremes[h]=i.findExtremes(r,a,y)),f&&(e._extremes[f]=i.findExtremes(n,o,x))}function f(t,e){if(s.hasMarkers(t)){var r,n=t.marker,o=1.6*(t.marker.sizeref||1);if(r="area"===t.marker.sizemode?function(t){return Math.max(Math.sqrt((t||0)/o),3)}:function(t){return Math.max((t||0)/o,3)},a.isArrayOrTypedArray(n.size)){var l={type:"linear"};i.setConvert(l);for(var c=l.makeCalcdata(t.marker,"size"),u=new Array(e),h=0;h<e;h++)u[h]=r(c[h]);return u}return r(n.size)}}function p(t,e){var r=d(e),n=t._firstScatter;n[r]||(n[r]=e.uid)}function d(t){var e=t.stackgroup;return t.xaxis+t.yaxis+t.type+(e?"-"+e:"")}function g(t,e,r,n){var a=t.stackgroup;if(a){var i=e._scatterStackOpts[r._id+n._id][a],o="v"===i.orientation?n:r;return"linear"===o.type||"log"===o.type?i:void 0}}e.exports={calc:function(t,e){var r,s,d,m,v,y,x=t._fullLayout,b=i.getFromId(t,e.xaxis||"x"),_=i.getFromId(t,e.yaxis||"y"),w=b.makeCalcdata(e,"x"),T=_.makeCalcdata(e,"y"),k=e._length,A=new Array(k),M=e.ids,S=g(e,x,b,_),E=!1;p(x,e);var C,L="x",P="y";for(S?(a.pushUnique(S.traceIndices,e._expandedIndex),(r="v"===S.orientation)?(P="s",C="x"):(L="s",C="y"),v="interpolate"===S.stackgaps):h(t,e,b,_,w,T,f(e,k)),s=0;s<k;s++){var I=A[s]={},z=n(w[s]),O=n(T[s]);z&&O?(I[L]=w[s],I[P]=T[s]):S&&(r?z:O)?(I[C]=r?w[s]:T[s],I.gap=!0,v?(I.s=o,E=!0):I.s=0):I[L]=I[P]=o,M&&(I.id=String(M[s]))}if(c(A,e),l(t,e),u(A,e),S){for(s=0;s<A.length;)A[s][C]===o?A.splice(s,1):s++;if(a.sort(A,(function(t,e){return t[C]-e[C]||t.i-e.i})),E){for(s=0;s<A.length-1&&A[s].gap;)s++;for((y=A[s].s)||(y=A[s].s=0),d=0;d<s;d++)A[d].s=y;for(m=A.length-1;m>s&&A[m].gap;)m--;for(y=A[m].s,d=A.length-1;d>m;d--)A[d].s=y;for(;s<m;)if(A[++s].gap){for(d=s+1;A[d].gap;)d++;for(var D=A[s-1][C],R=A[s-1].s,F=(A[d].s-R)/(A[d][C]-D);s<d;)A[s].s=R+(A[s][C]-D)*F,s++}}}return A},calcMarkerSize:f,calcAxisExpansion:h,setFirstScatter:p,getStackOpts:g}},{"../../constants/numerical":704,"../../lib":728,"../../plots/cartesian/axes":776,"./arrays_to_calcdata":1133,"./calc_selection":1136,"./colorscale_calc":1137,"./subtypes":1158,"fast-isnumeric":236}],1136:[function(t,e,r){"use strict";var n=t("../../lib");e.exports=function(t,e){n.isArrayOrTypedArray(e.selectedpoints)&&n.tagSelected(t,e)}},{"../../lib":728}],1137:[function(t,e,r){"use strict";var n=t("../../components/colorscale/helpers").hasColorscale,a=t("../../components/colorscale/calc"),i=t("./subtypes");e.exports=function(t,e){i.hasLines(e)&&n(e,"line")&&a(t,e,{vals:e.line.color,containerStr:"line",cLetter:"c"}),i.hasMarkers(e)&&(n(e,"marker")&&a(t,e,{vals:e.marker.color,containerStr:"marker",cLetter:"c"}),n(e,"marker.line")&&a(t,e,{vals:e.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}},{"../../components/colorscale/calc":603,"../../components/colorscale/helpers":606,"./subtypes":1158}],1138:[function(t,e,r){"use strict";e.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}},{}],1139:[function(t,e,r){"use strict";var n=t("./calc");function a(t,e,r,n,a,i,o){a[n]=!0;var s={i:null,gap:!0,s:0};if(s[o]=r,t.splice(e,0,s),e&&r===t[e-1][o]){var l=t[e-1];s.s=l.s,s.i=l.i,s.gap=l.gap}else i&&(s.s=function(t,e,r,n){var a=t[e-1],i=t[e+1];return i?a?a.s+(i.s-a.s)*(r-a[n])/(i[n]-a[n]):i.s:a.s}(t,e,r,o));e||(t[0].t=t[1].t,t[0].trace=t[1].trace,delete t[1].t,delete t[1].trace)}e.exports=function(t,e){var r=e.xaxis,i=e.yaxis,o=r._id+i._id,s=t._fullLayout._scatterStackOpts[o];if(s){var l,c,u,h,f,p,d,g,m,v,y,x,b,_,w,T=t.calcdata;for(var k in s){var A=(v=s[k]).traceIndices;if(A.length){for(y="interpolate"===v.stackgaps,x=v.groupnorm,"v"===v.orientation?(b="x",_="y"):(b="y",_="x"),w=new Array(A.length),l=0;l<w.length;l++)w[l]=!1;p=T[A[0]];var M=new Array(p.length);for(l=0;l<p.length;l++)M[l]=p[l][b];for(l=1;l<A.length;l++){for(f=T[A[l]],c=u=0;c<f.length;c++){for(d=f[c][b];d>M[u]&&u<M.length;u++)a(f,c,M[u],l,w,y,b),c++;if(d!==M[u]){for(h=0;h<l;h++)a(T[A[h]],u,d,h,w,y,b);M.splice(u,0,d)}u++}for(;u<M.length;u++)a(f,c,M[u],l,w,y,b),c++}var S=M.length;for(c=0;c<p.length;c++){for(g=p[c][_]=p[c].s,l=1;l<A.length;l++)(f=T[A[l]])[0].trace._rawLength=f[0].trace._length,f[0].trace._length=S,g+=f[c].s,f[c][_]=g;if(x)for(m=("fraction"===x?g:g/100)||1,l=0;l<A.length;l++){var E=T[A[l]][c];E[_]/=m,E.sNorm=E.s/m}}for(l=0;l<A.length;l++){var C=(f=T[A[l]])[0].trace,L=n.calcMarkerSize(C,C._rawLength),P=Array.isArray(L);if(L&&w[l]||P){var I=L;for(L=new Array(S),c=0;c<S;c++)L[c]=f[c].gap?0:P?I[f[c].i]:I}var z=new Array(S),O=new Array(S);for(c=0;c<S;c++)z[c]=f[c].x,O[c]=f[c].y;n.calcAxisExpansion(t,C,r,i,z,O,L),f[0].t.orientation=v.orientation}}}}}},{"./calc":1135}],1140:[function(t,e,r){"use strict";e.exports=function(t){for(var e=0;e<t.length;e++){var r=t[e];if("scatter"===r.type){var n=r.fill;if("none"!==n&&"toself"!==n&&(r.opacity=void 0,"tonexty"===n||"tonextx"===n))for(var a=e-1;a>=0;a--){var i=t[a];if("scatter"===i.type&&i.xaxis===r.xaxis&&i.yaxis===r.yaxis){i.opacity=void 0;break}}}}}},{}],1141:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../registry"),i=t("./attributes"),o=t("./constants"),s=t("./subtypes"),l=t("./xy_defaults"),c=t("./stack_defaults"),u=t("./marker_defaults"),h=t("./line_defaults"),f=t("./line_shape_defaults"),p=t("./text_defaults"),d=t("./fillcolor_defaults");e.exports=function(t,e,r,g){function m(r,a){return n.coerce(t,e,i,r,a)}var v=l(t,e,g,m);if(v||(e.visible=!1),e.visible){var y=c(t,e,g,m),x=!y&&v<o.PTS_LINESONLY?"lines+markers":"lines";m("text"),m("hovertext"),m("mode",x),s.hasLines(e)&&(h(t,e,r,g,m),f(t,e,m),m("connectgaps"),m("line.simplify")),s.hasMarkers(e)&&u(t,e,r,g,m,{gradient:!0}),s.hasText(e)&&(m("texttemplate"),p(t,e,g,m));var b=[];(s.hasMarkers(e)||s.hasText(e))&&(m("cliponaxis"),m("marker.maxdisplayed"),b.push("points")),m("fill",y?y.fillDflt:"none"),"none"!==e.fill&&(d(t,e,r,m),s.hasLines(e)||f(t,e,m));var _=(e.line||{}).color,w=(e.marker||{}).color;"tonext"!==e.fill&&"toself"!==e.fill||b.push("fills"),m("hoveron",b.join("+")||"points"),"fills"!==e.hoveron&&m("hovertemplate");var T=a.getComponentMethod("errorbars","supplyDefaults");T(t,e,_||w||r,{axis:"y"}),T(t,e,_||w||r,{axis:"x",inherit:"y"}),n.coerceSelectionMarkerOpacity(e,m)}}},{"../../lib":728,"../../registry":859,"./attributes":1134,"./constants":1138,"./fillcolor_defaults":1142,"./line_defaults":1147,"./line_shape_defaults":1149,"./marker_defaults":1153,"./stack_defaults":1156,"./subtypes":1158,"./text_defaults":1159,"./xy_defaults":1160}],1142:[function(t,e,r){"use strict";var n=t("../../components/color"),a=t("../../lib").isArrayOrTypedArray;e.exports=function(t,e,r,i){var o=!1;if(e.marker){var s=e.marker.color,l=(e.marker.line||{}).color;s&&!a(s)?o=s:l&&!a(l)&&(o=l)}i("fillcolor",n.addOpacity((e.line||{}).color||o||r,.5))}},{"../../components/color":595,"../../lib":728}],1143:[function(t,e,r){"use strict";var n=t("../../plots/cartesian/axes");e.exports=function(t,e,r){var a={},i={_fullLayout:r},o=n.getFromTrace(i,e,"x"),s=n.getFromTrace(i,e,"y");return a.xLabel=n.tickText(o,t.x,!0).text,a.yLabel=n.tickText(s,t.y,!0).text,a}},{"../../plots/cartesian/axes":776}],1144:[function(t,e,r){"use strict";var n=t("../../components/color"),a=t("./subtypes");e.exports=function(t,e){var r,i;if("lines"===t.mode)return(r=t.line.color)&&n.opacity(r)?r:t.fillcolor;if("none"===t.mode)return t.fill?t.fillcolor:"";var o=e.mcc||(t.marker||{}).color,s=e.mlcc||((t.marker||{}).line||{}).color;return(i=o&&n.opacity(o)?o:s&&n.opacity(s)&&(e.mlw||((t.marker||{}).line||{}).width)?s:"")?n.opacity(i)<.3?n.addOpacity(i,.3):i:(r=(t.line||{}).color)&&n.opacity(r)&&a.hasLines(t)&&t.line.width?r:t.fillcolor}},{"../../components/color":595,"./subtypes":1158}],1145:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../components/fx"),i=t("../../registry"),o=t("./get_trace_color"),s=t("../../components/color"),l=n.fillText;e.exports=function(t,e,r,c){var u=t.cd,h=u[0].trace,f=t.xa,p=t.ya,d=f.c2p(e),g=p.c2p(r),m=[d,g],v=h.hoveron||"",y=-1!==h.mode.indexOf("markers")?3:.5;if(-1!==v.indexOf("points")){var x=function(t){var e=Math.max(y,t.mrc||0),r=f.c2p(t.x)-d,n=p.c2p(t.y)-g;return Math.max(Math.sqrt(r*r+n*n)-e,1-y/e)},b=a.getDistanceFunction(c,(function(t){var e=Math.max(3,t.mrc||0),r=1-1/e,n=Math.abs(f.c2p(t.x)-d);return n<e?r*n/e:n-e+r}),(function(t){var e=Math.max(3,t.mrc||0),r=1-1/e,n=Math.abs(p.c2p(t.y)-g);return n<e?r*n/e:n-e+r}),x);if(a.getClosest(u,b,t),!1!==t.index){var _=u[t.index],w=f.c2p(_.x,!0),T=p.c2p(_.y,!0),k=_.mrc||1;t.index=_.i;var A=u[0].t.orientation,M=A&&(_.sNorm||_.s),S="h"===A?M:_.x,E="v"===A?M:_.y;return n.extendFlat(t,{color:o(h,_),x0:w-k,x1:w+k,xLabelVal:S,y0:T-k,y1:T+k,yLabelVal:E,spikeDistance:x(_),hovertemplate:h.hovertemplate}),l(_,h,t),i.getComponentMethod("errorbars","hoverInfo")(_,h,t),[t]}}if(-1!==v.indexOf("fills")&&h._polygons){var C,L,P,I,z,O,D,R,F,B=h._polygons,N=[],j=!1,V=1/0,U=-1/0,q=1/0,H=-1/0;for(C=0;C<B.length;C++)(P=B[C]).contains(m)&&(j=!j,N.push(P),q=Math.min(q,P.ymin),H=Math.max(H,P.ymax));if(j){var G=((q=Math.max(q,0))+(H=Math.min(H,p._length)))/2;for(C=0;C<N.length;C++)for(I=N[C].pts,L=1;L<I.length;L++)(R=I[L-1][1])>G!=(F=I[L][1])>=G&&(O=I[L-1][0],D=I[L][0],F-R&&(z=O+(D-O)*(G-R)/(F-R),V=Math.min(V,z),U=Math.max(U,z)));V=Math.max(V,0),U=Math.min(U,f._length);var Y=s.defaultLine;return s.opacity(h.fillcolor)?Y=h.fillcolor:s.opacity((h.line||{}).color)&&(Y=h.line.color),n.extendFlat(t,{distance:t.maxHoverDistance,x0:V,x1:U,y0:G,y1:G,color:Y,hovertemplate:!1}),delete t.index,h.text&&!Array.isArray(h.text)?t.text=String(h.text):t.text=h.name,[t]}}}},{"../../components/color":595,"../../components/fx":635,"../../lib":728,"../../registry":859,"./get_trace_color":1144}],1146:[function(t,e,r){"use strict";var n=t("./subtypes");e.exports={hasLines:n.hasLines,hasMarkers:n.hasMarkers,hasText:n.hasText,isBubble:n.isBubble,attributes:t("./attributes"),supplyDefaults:t("./defaults"),crossTraceDefaults:t("./cross_trace_defaults"),calc:t("./calc").calc,crossTraceCalc:t("./cross_trace_calc"),arraysToCalcdata:t("./arrays_to_calcdata"),plot:t("./plot"),colorbar:t("./marker_colorbar"),formatLabels:t("./format_labels"),style:t("./style").style,styleOnSelect:t("./style").styleOnSelect,hoverPoints:t("./hover"),selectPoints:t("./select"),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:t("../../plots/cartesian"),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}},{"../../plots/cartesian":789,"./arrays_to_calcdata":1133,"./attributes":1134,"./calc":1135,"./cross_trace_calc":1139,"./cross_trace_defaults":1140,"./defaults":1141,"./format_labels":1143,"./hover":1145,"./marker_colorbar":1152,"./plot":1154,"./select":1155,"./style":1157,"./subtypes":1158}],1147:[function(t,e,r){"use strict";var n=t("../../lib").isArrayOrTypedArray,a=t("../../components/colorscale/helpers").hasColorscale,i=t("../../components/colorscale/defaults");e.exports=function(t,e,r,o,s,l){var c=(t.marker||{}).color;(s("line.color",r),a(t,"line"))?i(t,e,o,s,{prefix:"line.",cLetter:"c"}):s("line.color",!n(c)&&c||r);s("line.width"),(l||{}).noDash||s("line.dash")}},{"../../components/colorscale/defaults":605,"../../components/colorscale/helpers":606,"../../lib":728}],1148:[function(t,e,r){"use strict";var n=t("../../constants/numerical"),a=n.BADNUM,i=n.LOG_CLIP,o=i+.5,s=i-.5,l=t("../../lib"),c=l.segmentsIntersect,u=l.constrain,h=t("./constants");e.exports=function(t,e){var r,n,i,f,p,d,g,m,v,y,x,b,_,w,T,k,A,M,S=e.xaxis,E=e.yaxis,C="log"===S.type,L="log"===E.type,P=S._length,I=E._length,z=e.connectGaps,O=e.baseTolerance,D=e.shape,R="linear"===D,F=e.fill&&"none"!==e.fill,B=[],N=h.minTolerance,j=t.length,V=new Array(j),U=0;function q(r){var n=t[r];if(!n)return!1;var i=e.linearized?S.l2p(n.x):S.c2p(n.x),l=e.linearized?E.l2p(n.y):E.c2p(n.y);if(i===a){if(C&&(i=S.c2p(n.x,!0)),i===a)return!1;L&&l===a&&(i*=Math.abs(S._m*I*(S._m>0?o:s)/(E._m*P*(E._m>0?o:s)))),i*=1e3}if(l===a){if(L&&(l=E.c2p(n.y,!0)),l===a)return!1;l*=1e3}return[i,l]}function H(t,e,r,n){var a=r-t,i=n-e,o=.5-t,s=.5-e,l=a*a+i*i,c=a*o+i*s;if(c>0&&c<l){var u=o*i-s*a;if(u*u<l)return!0}}function G(t,e){var r=t[0]/P,n=t[1]/I,a=Math.max(0,-r,r-1,-n,n-1);return a&&void 0!==A&&H(r,n,A,M)&&(a=0),a&&e&&H(r,n,e[0]/P,e[1]/I)&&(a=0),(1+h.toleranceGrowth*a)*O}function Y(t,e){var r=t[0]-e[0],n=t[1]-e[1];return Math.sqrt(r*r+n*n)}var W,Z,X,J,K,Q,$,tt=h.maxScreensAway,et=-P*tt,rt=P*(1+tt),nt=-I*tt,at=I*(1+tt),it=[[et,nt,rt,nt],[rt,nt,rt,at],[rt,at,et,at],[et,at,et,nt]];function ot(t){if(t[0]<et||t[0]>rt||t[1]<nt||t[1]>at)return[u(t[0],et,rt),u(t[1],nt,at)]}function st(t,e){return t[0]===e[0]&&(t[0]===et||t[0]===rt)||(t[1]===e[1]&&(t[1]===nt||t[1]===at)||void 0)}function lt(t,e,r){return function(n,a){var i=ot(n),o=ot(a),s=[];if(i&&o&&st(i,o))return s;i&&s.push(i),o&&s.push(o);var c=2*l.constrain((n[t]+a[t])/2,e,r)-((i||n)[t]+(o||a)[t]);c&&((i&&o?c>0==i[t]>o[t]?i:o:i||o)[t]+=c);return s}}function ct(t){var e=t[0],r=t[1],n=e===V[U-1][0],a=r===V[U-1][1];if(!n||!a)if(U>1){var i=e===V[U-2][0],o=r===V[U-2][1];n&&(e===et||e===rt)&&i?o?U--:V[U-1]=t:a&&(r===nt||r===at)&&o?i?U--:V[U-1]=t:V[U++]=t}else V[U++]=t}function ut(t){V[U-1][0]!==t[0]&&V[U-1][1]!==t[1]&&ct([X,J]),ct(t),K=null,X=J=0}function ht(t){if(A=t[0]/P,M=t[1]/I,W=t[0]<et?et:t[0]>rt?rt:0,Z=t[1]<nt?nt:t[1]>at?at:0,W||Z){if(U)if(K){var e=$(K,t);e.length>1&&(ut(e[0]),V[U++]=e[1])}else Q=$(V[U-1],t)[0],V[U++]=Q;else V[U++]=[W||t[0],Z||t[1]];var r=V[U-1];W&&Z&&(r[0]!==W||r[1]!==Z)?(K&&(X!==W&&J!==Z?ct(X&&J?(n=K,i=(a=t)[0]-n[0],o=(a[1]-n[1])/i,(n[1]*a[0]-a[1]*n[0])/i>0?[o>0?et:rt,at]:[o>0?rt:et,nt]):[X||W,J||Z]):X&&J&&ct([X,J])),ct([W,Z])):X-W&&J-Z&&ct([W||X,Z||J]),K=t,X=W,J=Z}else K&&ut($(K,t)[0]),V[U++]=t;var n,a,i,o}for("linear"===D||"spline"===D?$=function(t,e){for(var r=[],n=0,a=0;a<4;a++){var i=it[a],o=c(t[0],t[1],e[0],e[1],i[0],i[1],i[2],i[3]);o&&(!n||Math.abs(o.x-r[0][0])>1||Math.abs(o.y-r[0][1])>1)&&(o=[o.x,o.y],n&&Y(o,t)<Y(r[0],t)?r.unshift(o):r.push(o),n++)}return r}:"hv"===D||"vh"===D?$=function(t,e){var r=[],n=ot(t),a=ot(e);return n&&a&&st(n,a)||(n&&r.push(n),a&&r.push(a)),r}:"hvh"===D?$=lt(0,et,rt):"vhv"===D&&($=lt(1,nt,at)),r=0;r<j;r++)if(n=q(r)){for(U=0,K=null,ht(n),r++;r<j;r++){if(!(f=q(r))){if(z)continue;break}if(R&&e.simplify){var ft=q(r+1);if(y=Y(f,n),F&&(0===U||U===j-1)||!(y<G(f,ft)*N)){for(m=[(f[0]-n[0])/y,(f[1]-n[1])/y],p=n,x=y,b=w=T=0,g=!1,i=f,r++;r<t.length;r++){if(d=ft,ft=q(r+1),!d){if(z)continue;break}if(k=(v=[d[0]-n[0],d[1]-n[1]])[0]*m[1]-v[1]*m[0],w=Math.min(w,k),(T=Math.max(T,k))-w>G(d,ft))break;i=d,(_=v[0]*m[0]+v[1]*m[1])>x?(x=_,f=d,g=!1):_<b&&(b=_,p=d,g=!0)}if(g?(ht(f),i!==p&&ht(p)):(p!==n&&ht(p),i!==f&&ht(f)),ht(i),r>=t.length||!d)break;ht(d),n=d}}else ht(f)}K&&ct([X||K[0],J||K[1]]),B.push(V.slice(0,U))}return B}},{"../../constants/numerical":704,"../../lib":728,"./constants":1138}],1149:[function(t,e,r){"use strict";e.exports=function(t,e,r){"spline"===r("line.shape")&&r("line.smoothing")}},{}],1150:[function(t,e,r){"use strict";var n={tonextx:1,tonexty:1,tonext:1};e.exports=function(t,e,r){var a,i,o,s,l,c={},u=!1,h=-1,f=0,p=-1;for(i=0;i<r.length;i++)(o=(a=r[i][0].trace).stackgroup||"")?o in c?l=c[o]:(l=c[o]=f,f++):a.fill in n&&p>=0?l=p:(l=p=f,f++),l<h&&(u=!0),a._groupIndex=h=l;var d=r.slice();u&&d.sort((function(t,e){var r=t[0].trace,n=e[0].trace;return r._groupIndex-n._groupIndex||r.index-n.index}));var g={};for(i=0;i<d.length;i++)o=(a=d[i][0].trace).stackgroup||"",!0===a.visible?(a._nexttrace=null,a.fill in n&&(s=g[o],a._prevtrace=s||null,s&&(s._nexttrace=a)),a._ownfill=a.fill&&("tozero"===a.fill.substr(0,6)||"toself"===a.fill||"to"===a.fill.substr(0,2)&&!a._prevtrace),g[o]=a):a._prevtrace=a._nexttrace=a._ownfill=null;return d}},{}],1151:[function(t,e,r){"use strict";var n=t("fast-isnumeric");e.exports=function(t){var e=t.marker,r=e.sizeref||1,a=e.sizemin||0,i="area"===e.sizemode?function(t){return Math.sqrt(t/r)}:function(t){return t/r};return function(t){var e=i(t/2);return n(e)&&e>0?Math.max(e,a):0}}},{"fast-isnumeric":236}],1152:[function(t,e,r){"use strict";e.exports={container:"marker",min:"cmin",max:"cmax"}},{}],1153:[function(t,e,r){"use strict";var n=t("../../components/color"),a=t("../../components/colorscale/helpers").hasColorscale,i=t("../../components/colorscale/defaults"),o=t("./subtypes");e.exports=function(t,e,r,s,l,c){var u=o.isBubble(t),h=(t.line||{}).color;(c=c||{},h&&(r=h),l("marker.symbol"),l("marker.opacity",u?.7:1),l("marker.size"),l("marker.color",r),a(t,"marker")&&i(t,e,s,l,{prefix:"marker.",cLetter:"c"}),c.noSelect||(l("selected.marker.color"),l("unselected.marker.color"),l("selected.marker.size"),l("unselected.marker.size")),c.noLine||(l("marker.line.color",h&&!Array.isArray(h)&&e.marker.color!==h?h:u?n.background:n.defaultLine),a(t,"marker.line")&&i(t,e,s,l,{prefix:"marker.line.",cLetter:"c"}),l("marker.line.width",u?1:0)),u&&(l("marker.sizeref"),l("marker.sizemin"),l("marker.sizemode")),c.gradient)&&("none"!==l("marker.gradient.type")&&l("marker.gradient.color"))}},{"../../components/color":595,"../../components/colorscale/defaults":605,"../../components/colorscale/helpers":606,"./subtypes":1158}],1154:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../registry"),i=t("../../lib"),o=i.ensureSingle,s=i.identity,l=t("../../components/drawing"),c=t("./subtypes"),u=t("./line_points"),h=t("./link_traces"),f=t("../../lib/polygon").tester;function p(t,e,r,h,p,d,g){var m;!function(t,e,r,a,o){var s=r.xaxis,l=r.yaxis,u=n.extent(i.simpleMap(s.range,s.r2c)),h=n.extent(i.simpleMap(l.range,l.r2c)),f=a[0].trace;if(!c.hasMarkers(f))return;var p=f.marker.maxdisplayed;if(0===p)return;var d=a.filter((function(t){return t.x>=u[0]&&t.x<=u[1]&&t.y>=h[0]&&t.y<=h[1]})),g=Math.ceil(d.length/p),m=0;o.forEach((function(t,r){var n=t[0].trace;c.hasMarkers(n)&&n.marker.maxdisplayed>0&&r<e&&m++}));var v=Math.round(m*g/3+Math.floor(m/3)*g/7.1);a.forEach((function(t){delete t.vis})),d.forEach((function(t,e){0===Math.round((e+v)%g)&&(t.vis=!0)}))}(0,e,r,h,p);var v=!!g&&g.duration>0;function y(t){return v?t.transition():t}var x=r.xaxis,b=r.yaxis,_=h[0].trace,w=_.line,T=n.select(d),k=o(T,"g","errorbars"),A=o(T,"g","lines"),M=o(T,"g","points"),S=o(T,"g","text");if(a.getComponentMethod("errorbars","plot")(t,k,r,g),!0===_.visible){var E,C;y(T).style("opacity",_.opacity);var L=_.fill.charAt(_.fill.length-1);"x"!==L&&"y"!==L&&(L=""),h[0][r.isRangePlot?"nodeRangePlot3":"node3"]=T;var P,I,z="",O=[],D=_._prevtrace;D&&(z=D._prevRevpath||"",C=D._nextFill,O=D._polygons);var R,F,B,N,j,V,U,q="",H="",G=[],Y=i.noop;if(E=_._ownFill,c.hasLines(_)||"none"!==_.fill){for(C&&C.datum(h),-1!==["hv","vh","hvh","vhv"].indexOf(w.shape)?(R=l.steps(w.shape),F=l.steps(w.shape.split("").reverse().join(""))):R=F="spline"===w.shape?function(t){var e=t[t.length-1];return t.length>1&&t[0][0]===e[0]&&t[0][1]===e[1]?l.smoothclosed(t.slice(1),w.smoothing):l.smoothopen(t,w.smoothing)}:function(t){return"M"+t.join("L")},B=function(t){return F(t.reverse())},G=u(h,{xaxis:x,yaxis:b,connectGaps:_.connectgaps,baseTolerance:Math.max(w.width||1,3)/4,shape:w.shape,simplify:w.simplify,fill:_.fill}),U=_._polygons=new Array(G.length),m=0;m<G.length;m++)_._polygons[m]=f(G[m]);G.length&&(N=G[0][0],V=(j=G[G.length-1])[j.length-1]),Y=function(t){return function(e){if(P=R(e),I=B(e),q?L?(q+="L"+P.substr(1),H=I+"L"+H.substr(1)):(q+="Z"+P,H=I+"Z"+H):(q=P,H=I),c.hasLines(_)&&e.length>1){var r=n.select(this);if(r.datum(h),t)y(r.style("opacity",0).attr("d",P).call(l.lineGroupStyle)).style("opacity",1);else{var a=y(r);a.attr("d",P),l.singleLineStyle(h,a)}}}}}var W=A.selectAll(".js-line").data(G);y(W.exit()).style("opacity",0).remove(),W.each(Y(!1)),W.enter().append("path").classed("js-line",!0).style("vector-effect","non-scaling-stroke").call(l.lineGroupStyle).each(Y(!0)),l.setClipUrl(W,r.layerClipId,t),G.length?(E?(E.datum(h),N&&V&&(L?("y"===L?N[1]=V[1]=b.c2p(0,!0):"x"===L&&(N[0]=V[0]=x.c2p(0,!0)),y(E).attr("d","M"+V+"L"+N+"L"+q.substr(1)).call(l.singleFillStyle)):y(E).attr("d",q+"Z").call(l.singleFillStyle))):C&&("tonext"===_.fill.substr(0,6)&&q&&z?("tonext"===_.fill?y(C).attr("d",q+"Z"+z+"Z").call(l.singleFillStyle):y(C).attr("d",q+"L"+z.substr(1)+"Z").call(l.singleFillStyle),_._polygons=_._polygons.concat(O)):(X(C),_._polygons=null)),_._prevRevpath=H,_._prevPolygons=U):(E?X(E):C&&X(C),_._polygons=_._prevRevpath=_._prevPolygons=null),M.datum(h),S.datum(h),function(e,a,i){var o,u=i[0].trace,h=c.hasMarkers(u),f=c.hasText(u),p=tt(u),d=et,g=et;if(h||f){var m=s,_=u.stackgroup,w=_&&"infer zero"===t._fullLayout._scatterStackOpts[x._id+b._id][_].stackgaps;u.marker.maxdisplayed||u._needsCull?m=w?K:J:_&&!w&&(m=Q),h&&(d=m),f&&(g=m)}var T,k=(o=e.selectAll("path.point").data(d,p)).enter().append("path").classed("point",!0);v&&k.call(l.pointStyle,u,t).call(l.translatePoints,x,b).style("opacity",0).transition().style("opacity",1),o.order(),h&&(T=l.makePointStyleFns(u)),o.each((function(e){var a=n.select(this),i=y(a);l.translatePoint(e,i,x,b)?(l.singlePointStyle(e,i,u,T,t),r.layerClipId&&l.hideOutsideRangePoint(e,i,x,b,u.xcalendar,u.ycalendar),u.customdata&&a.classed("plotly-customdata",null!==e.data&&void 0!==e.data)):i.remove()})),v?o.exit().transition().style("opacity",0).remove():o.exit().remove(),(o=a.selectAll("g").data(g,p)).enter().append("g").classed("textpoint",!0).append("text"),o.order(),o.each((function(t){var e=n.select(this),a=y(e.select("text"));l.translatePoint(t,a,x,b)?r.layerClipId&&l.hideOutsideRangePoint(t,e,x,b,u.xcalendar,u.ycalendar):e.remove()})),o.selectAll("text").call(l.textPointStyle,u,t).each((function(t){var e=x.c2p(t.x),r=b.c2p(t.y);n.select(this).selectAll("tspan.line").each((function(){y(n.select(this)).attr({x:e,y:r})}))})),o.exit().remove()}(M,S,h);var Z=!1===_.cliponaxis?null:r.layerClipId;l.setClipUrl(M,Z,t),l.setClipUrl(S,Z,t)}function X(t){y(t).attr("d","M0,0Z")}function J(t){return t.filter((function(t){return!t.gap&&t.vis}))}function K(t){return t.filter((function(t){return t.vis}))}function Q(t){return t.filter((function(t){return!t.gap}))}function $(t){return t.id}function tt(t){if(t.ids)return $}function et(){return!1}}e.exports=function(t,e,r,a,i,c){var u,f,d=!i,g=!!i&&i.duration>0,m=h(t,e,r);((u=a.selectAll("g.trace").data(m,(function(t){return t[0].trace.uid}))).enter().append("g").attr("class",(function(t){return"trace scatter trace"+t[0].trace.uid})).style("stroke-miterlimit",2),u.order(),function(t,e,r){e.each((function(e){var a=o(n.select(this),"g","fills");l.setClipUrl(a,r.layerClipId,t);var i=e[0].trace,c=[];i._ownfill&&c.push("_ownFill"),i._nexttrace&&c.push("_nextFill");var u=a.selectAll("g").data(c,s);u.enter().append("g"),u.exit().each((function(t){i[t]=null})).remove(),u.order().each((function(t){i[t]=o(n.select(this),"path","js-fill")}))}))}(t,u,e),g)?(c&&(f=c()),n.transition().duration(i.duration).ease(i.easing).each("end",(function(){f&&f()})).each("interrupt",(function(){f&&f()})).each((function(){a.selectAll("g.trace").each((function(r,n){p(t,n,e,r,m,this,i)}))}))):u.each((function(r,n){p(t,n,e,r,m,this,i)}));d&&u.exit().remove(),a.selectAll("path:not([d])").remove()}},{"../../components/drawing":617,"../../lib":728,"../../lib/polygon":740,"../../registry":859,"./line_points":1148,"./link_traces":1150,"./subtypes":1158,d3:164}],1155:[function(t,e,r){"use strict";var n=t("./subtypes");e.exports=function(t,e){var r,a,i,o,s=t.cd,l=t.xaxis,c=t.yaxis,u=[],h=s[0].trace;if(!n.hasMarkers(h)&&!n.hasText(h))return[];if(!1===e)for(r=0;r<s.length;r++)s[r].selected=0;else for(r=0;r<s.length;r++)a=s[r],i=l.c2p(a.x),o=c.c2p(a.y),null!==a.i&&e.contains([i,o],!1,r,t)?(u.push({pointNumber:a.i,x:l.c2d(a.x),y:c.c2d(a.y)}),a.selected=1):a.selected=0;return u}},{"./subtypes":1158}],1156:[function(t,e,r){"use strict";var n=["orientation","groupnorm","stackgaps"];e.exports=function(t,e,r,a){var i=r._scatterStackOpts,o=a("stackgroup");if(o){var s=e.xaxis+e.yaxis,l=i[s];l||(l=i[s]={});var c=l[o],u=!1;c?c.traces.push(e):(c=l[o]={traceIndices:[],traces:[e]},u=!0);for(var h={orientation:e.x&&!e.y?"h":"v"},f=0;f<n.length;f++){var p=n[f],d=p+"Found";if(!c[d]){var g=void 0!==t[p],m="orientation"===p;if((g||u)&&(c[p]=a(p,h[p]),m&&(c.fillDflt="h"===c[p]?"tonextx":"tonexty"),g&&(c[d]=!0,!u&&(delete c.traces[0][p],m))))for(var v=0;v<c.traces.length-1;v++){var y=c.traces[v];y._input.fill!==y.fill&&(y.fill=c.fillDflt)}}}return c}}},{}],1157:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../components/drawing"),i=t("../../registry");function o(t,e,r){a.pointStyle(t.selectAll("path.point"),e,r)}function s(t,e,r){a.textPointStyle(t.selectAll("text"),e,r)}e.exports={style:function(t){var e=n.select(t).selectAll("g.trace.scatter");e.style("opacity",(function(t){return t[0].trace.opacity})),e.selectAll("g.points").each((function(e){o(n.select(this),e.trace||e[0].trace,t)})),e.selectAll("g.text").each((function(e){s(n.select(this),e.trace||e[0].trace,t)})),e.selectAll("g.trace path.js-line").call(a.lineGroupStyle),e.selectAll("g.trace path.js-fill").call(a.fillGroupStyle),i.getComponentMethod("errorbars","style")(e)},stylePoints:o,styleText:s,styleOnSelect:function(t,e,r){var n=e[0].trace;n.selectedpoints?(a.selectedPointStyle(r.selectAll("path.point"),n),a.selectedTextStyle(r.selectAll("text"),n)):(o(r,n,t),s(r,n,t))}}},{"../../components/drawing":617,"../../registry":859,d3:164}],1158:[function(t,e,r){"use strict";var n=t("../../lib");e.exports={hasLines:function(t){return t.visible&&t.mode&&-1!==t.mode.indexOf("lines")},hasMarkers:function(t){return t.visible&&(t.mode&&-1!==t.mode.indexOf("markers")||"splom"===t.type)},hasText:function(t){return t.visible&&t.mode&&-1!==t.mode.indexOf("text")},isBubble:function(t){return n.isPlainObject(t.marker)&&n.isArrayOrTypedArray(t.marker.size)}}},{"../../lib":728}],1159:[function(t,e,r){"use strict";var n=t("../../lib");e.exports=function(t,e,r,a,i){i=i||{},a("textposition"),n.coerceFont(a,"textfont",r.font),i.noSelect||(a("selected.textfont.color"),a("unselected.textfont.color"))}},{"../../lib":728}],1160:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../registry");e.exports=function(t,e,r,i){var o,s=i("x"),l=i("y");if(a.getComponentMethod("calendars","handleTraceDefaults")(t,e,["x","y"],r),s){var c=n.minRowLength(s);l?o=Math.min(c,n.minRowLength(l)):(o=c,i("y0"),i("dy"))}else{if(!l)return 0;o=n.minRowLength(l),i("x0"),i("dx")}return e._length=o,o}},{"../../lib":728,"../../registry":859}],1161:[function(t,e,r){"use strict";var n=t("../scatter/attributes"),a=t("../../components/colorscale/attributes"),i=t("../../plots/template_attributes").hovertemplateAttrs,o=t("../../plots/template_attributes").texttemplateAttrs,s=t("../../plots/attributes"),l=t("../../constants/gl3d_dashes"),c=t("../../constants/gl3d_markers"),u=t("../../lib/extend").extendFlat,h=t("../../plot_api/edit_types").overrideAll,f=n.line,p=n.marker,d=p.line,g=u({width:f.width,dash:{valType:"enumerated",values:Object.keys(l),dflt:"solid"}},a("line"));var m=e.exports=h({x:n.x,y:n.y,z:{valType:"data_array"},text:u({},n.text,{}),texttemplate:o({},{}),hovertext:u({},n.hovertext,{}),hovertemplate:i(),mode:u({},n.mode,{dflt:"lines+markers"}),surfaceaxis:{valType:"enumerated",values:[-1,0,1,2],dflt:-1},surfacecolor:{valType:"color"},projection:{x:{show:{valType:"boolean",dflt:!1},opacity:{valType:"number",min:0,max:1,dflt:1},scale:{valType:"number",min:0,max:10,dflt:2/3}},y:{show:{valType:"boolean",dflt:!1},opacity:{valType:"number",min:0,max:1,dflt:1},scale:{valType:"number",min:0,max:10,dflt:2/3}},z:{show:{valType:"boolean",dflt:!1},opacity:{valType:"number",min:0,max:1,dflt:1},scale:{valType:"number",min:0,max:10,dflt:2/3}}},connectgaps:n.connectgaps,line:g,marker:u({symbol:{valType:"enumerated",values:Object.keys(c),dflt:"circle",arrayOk:!0},size:u({},p.size,{dflt:8}),sizeref:p.sizeref,sizemin:p.sizemin,sizemode:p.sizemode,opacity:u({},p.opacity,{arrayOk:!1}),colorbar:p.colorbar,line:u({width:u({},d.width,{arrayOk:!1})},a("marker.line"))},a("marker")),textposition:u({},n.textposition,{dflt:"top center"}),textfont:{color:n.textfont.color,size:n.textfont.size,family:u({},n.textfont.family,{arrayOk:!1})},hoverinfo:u({},s.hoverinfo)},"calc","nested");m.x.editType=m.y.editType=m.z.editType="calc+clearAxisTypes"},{"../../components/colorscale/attributes":602,"../../constants/gl3d_dashes":701,"../../constants/gl3d_markers":702,"../../lib/extend":719,"../../plot_api/edit_types":759,"../../plots/attributes":773,"../../plots/template_attributes":854,"../scatter/attributes":1134}],1162:[function(t,e,r){"use strict";var n=t("../scatter/arrays_to_calcdata"),a=t("../scatter/colorscale_calc");e.exports=function(t,e){var r=[{x:!1,y:!1,trace:e,t:{}}];return n(r,e),a(t,e),r}},{"../scatter/arrays_to_calcdata":1133,"../scatter/colorscale_calc":1137}],1163:[function(t,e,r){"use strict";var n=t("../../registry");function a(t,e,r,a){if(!e||!e.visible)return null;for(var i=n.getComponentMethod("errorbars","makeComputeError")(e),o=new Array(t.length),s=0;s<t.length;s++){var l=i(+t[s],s);if("log"===a.type){var c=a.c2l(t[s]),u=t[s]-l[0],h=t[s]+l[1];if(o[s]=[(a.c2l(u,!0)-c)*r,(a.c2l(h,!0)-c)*r],u>0){var f=a.c2l(u);a._lowerLogErrorBound||(a._lowerLogErrorBound=f),a._lowerErrorBound=Math.min(a._lowerLogErrorBound,f)}}else o[s]=[-l[0]*r,l[1]*r]}return o}e.exports=function(t,e,r){var n=[a(t.x,t.error_x,e[0],r.xaxis),a(t.y,t.error_y,e[1],r.yaxis),a(t.z,t.error_z,e[2],r.zaxis)],i=function(t){for(var e=0;e<t.length;e++)if(t[e])return t[e].length;return 0}(n);if(0===i)return null;for(var o=new Array(i),s=0;s<i;s++){for(var l=[[0,0,0],[0,0,0]],c=0;c<3;c++)if(n[c])for(var u=0;u<2;u++)l[u][c]=n[c][s][u];o[s]=l}return o}},{"../../registry":859}],1164:[function(t,e,r){"use strict";var n=t("gl-line3d"),a=t("gl-scatter3d"),i=t("gl-error3d"),o=t("gl-mesh3d"),s=t("delaunay-triangulate"),l=t("../../lib"),c=t("../../lib/str2rgbarray"),u=t("../../lib/gl_format_color").formatColor,h=t("../scatter/make_bubble_size_func"),f=t("../../constants/gl3d_dashes"),p=t("../../constants/gl3d_markers"),d=t("../../plots/cartesian/axes"),g=t("../../components/fx/helpers").appendArrayPointValue,m=t("./calc_errors");function v(t,e){this.scene=t,this.uid=e,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 y=v.prototype;function x(t){return null==t?0:t.indexOf("left")>-1?-1:t.indexOf("right")>-1?1:0}function b(t){return null==t?0:t.indexOf("top")>-1?-1:t.indexOf("bottom")>-1?1:0}function _(t,e){return e(4*t)}function w(t){return p[t]}function T(t,e,r,n,a){var i=null;if(l.isArrayOrTypedArray(t)){i=[];for(var o=0;o<e;o++)void 0===t[o]?i[o]=n:i[o]=r(t[o],a)}else i=r(t,l.identity);return i}function k(t,e){var r,n,a,i,o,s,f=[],p=t.fullSceneLayout,v=t.dataScale,y=p.xaxis,k=p.yaxis,A=p.zaxis,M=e.marker,S=e.line,E=e.x||[],C=e.y||[],L=e.z||[],P=E.length,I=e.xcalendar,z=e.ycalendar,O=e.zcalendar;for(o=0;o<P;o++)r=y.d2l(E[o],0,I)*v[0],n=k.d2l(C[o],0,z)*v[1],a=A.d2l(L[o],0,O)*v[2],f[o]=[r,n,a];if(Array.isArray(e.text))s=e.text;else if(void 0!==e.text)for(s=new Array(P),o=0;o<P;o++)s[o]=e.text;function D(t,e){var r=p[t];return d.tickText(r,r.d2l(e),!0).text}var R=e.texttemplate;if(R){var F=t.fullLayout._d3locale,B=Array.isArray(R),N=B?Math.min(R.length,P):P,j=B?function(t){return R[t]}:function(){return R};for(s=new Array(N),o=0;o<N;o++){var V={x:E[o],y:C[o],z:L[o]},U={xLabel:D("xaxis",E[o]),yLabel:D("yaxis",C[o]),zLabel:D("zaxis",L[o])},q={};g(q,e,o);var H=e._meta||{};s[o]=l.texttemplateString(j(o),U,F,q,V,H)}}if(i={position:f,mode:e.mode,text:s},"line"in e&&(i.lineColor=u(S,1,P),i.lineWidth=S.width,i.lineDashes=S.dash),"marker"in e){var G=h(e);i.scatterColor=u(M,1,P),i.scatterSize=T(M.size,P,_,20,G),i.scatterMarker=T(M.symbol,P,w,"\u25cf"),i.scatterLineWidth=M.line.width,i.scatterLineColor=u(M.line,1,P),i.scatterAngle=0}"textposition"in e&&(i.textOffset=function(t){var e=[0,0];if(Array.isArray(t))for(var r=0;r<t.length;r++)e[r]=[0,0],t[r]&&(e[r][0]=x(t[r]),e[r][1]=b(t[r]));else e[0]=x(t),e[1]=b(t);return e}(e.textposition),i.textColor=u(e.textfont,1,P),i.textSize=T(e.textfont.size,P,l.identity,12),i.textFont=e.textfont.family,i.textAngle=0);var Y=["x","y","z"];for(i.project=[!1,!1,!1],i.projectScale=[1,1,1],i.projectOpacity=[1,1,1],o=0;o<3;++o){var W=e.projection[Y[o]];(i.project[o]=W.show)&&(i.projectOpacity[o]=W.opacity,i.projectScale[o]=W.scale)}i.errorBounds=m(e,v,p);var Z=function(t){for(var e=[0,0,0],r=[[0,0,0],[0,0,0],[0,0,0]],n=[1,1,1],a=0;a<3;a++){var i=t[a];i&&!1!==i.copy_zstyle&&!1!==t[2].visible&&(i=t[2]),i&&i.visible&&(e[a]=i.width/2,r[a]=c(i.color),n[a]=i.thickness)}return{capSize:e,color:r,lineWidth:n}}([e.error_x,e.error_y,e.error_z]);return i.errorColor=Z.color,i.errorLineWidth=Z.lineWidth,i.errorCapSize=Z.capSize,i.delaunayAxis=e.surfaceaxis,i.delaunayColor=c(e.surfacecolor),i}function A(t){if(Array.isArray(t)){var e=t[0];return Array.isArray(e)&&(t=e),"rgb("+t.slice(0,3).map((function(t){return Math.round(255*t)}))+")"}return null}y.handlePick=function(t){if(t.object&&(t.object===this.linePlot||t.object===this.delaunayMesh||t.object===this.textMarkers||t.object===this.scatterPlot)){var e=t.index=t.data.index;return t.object.highlight&&t.object.highlight(null),this.scatterPlot&&(t.object=this.scatterPlot,this.scatterPlot.highlight(t.data)),t.textLabel="",this.textLabels&&(Array.isArray(this.textLabels)?(this.textLabels[e]||0===this.textLabels[e])&&(t.textLabel=this.textLabels[e]):t.textLabel=this.textLabels),t.traceCoordinate=[this.data.x[e],this.data.y[e],this.data.z[e]],!0}},y.update=function(t){var e,r,l,c,u=this.scene.glplot.gl,h=f.solid;this.data=t;var p=k(this.scene,t);"mode"in p&&(this.mode=p.mode),"lineDashes"in p&&p.lineDashes in f&&(h=f[p.lineDashes]),this.color=A(p.scatterColor)||A(p.lineColor),this.dataPoints=p.position,e={gl:this.scene.glplot.gl,position:p.position,color:p.lineColor,lineWidth:p.lineWidth||1,dashes:h[0],dashScale:h[1],opacity:t.opacity,connectGaps:t.connectgaps},-1!==this.mode.indexOf("lines")?this.linePlot?this.linePlot.update(e):(this.linePlot=n(e),this.linePlot._trace=this,this.scene.glplot.add(this.linePlot)):this.linePlot&&(this.scene.glplot.remove(this.linePlot),this.linePlot.dispose(),this.linePlot=null);var d=t.opacity;if(t.marker&&t.marker.opacity&&(d*=t.marker.opacity),r={gl:this.scene.glplot.gl,position:p.position,color:p.scatterColor,size:p.scatterSize,glyph:p.scatterMarker,opacity:d,orthographic:!0,lineWidth:p.scatterLineWidth,lineColor:p.scatterLineColor,project:p.project,projectScale:p.projectScale,projectOpacity:p.projectOpacity},-1!==this.mode.indexOf("markers")?this.scatterPlot?this.scatterPlot.update(r):(this.scatterPlot=a(r),this.scatterPlot._trace=this,this.scatterPlot.highlightScale=1,this.scene.glplot.add(this.scatterPlot)):this.scatterPlot&&(this.scene.glplot.remove(this.scatterPlot),this.scatterPlot.dispose(),this.scatterPlot=null),c={gl:this.scene.glplot.gl,position:p.position,glyph:p.text,color:p.textColor,size:p.textSize,angle:p.textAngle,alignment:p.textOffset,font:p.textFont,orthographic:!0,lineWidth:0,project:!1,opacity:t.opacity},this.textLabels=t.hovertext||t.text,-1!==this.mode.indexOf("text")?this.textMarkers?this.textMarkers.update(c):(this.textMarkers=a(c),this.textMarkers._trace=this,this.textMarkers.highlightScale=1,this.scene.glplot.add(this.textMarkers)):this.textMarkers&&(this.scene.glplot.remove(this.textMarkers),this.textMarkers.dispose(),this.textMarkers=null),l={gl:this.scene.glplot.gl,position:p.position,color:p.errorColor,error:p.errorBounds,lineWidth:p.errorLineWidth,capSize:p.errorCapSize,opacity:t.opacity},this.errorBars?p.errorBounds?this.errorBars.update(l):(this.scene.glplot.remove(this.errorBars),this.errorBars.dispose(),this.errorBars=null):p.errorBounds&&(this.errorBars=i(l),this.errorBars._trace=this,this.scene.glplot.add(this.errorBars)),p.delaunayAxis>=0){var g=function(t,e,r){var n,a=(r+1)%3,i=(r+2)%3,o=[],l=[];for(n=0;n<t.length;++n){var c=t[n];!isNaN(c[a])&&isFinite(c[a])&&!isNaN(c[i])&&isFinite(c[i])&&(o.push([c[a],c[i]]),l.push(n))}var u=s(o);for(n=0;n<u.length;++n)for(var h=u[n],f=0;f<h.length;++f)h[f]=l[h[f]];return{positions:t,cells:u,meshColor:e}}(p.position,p.delaunayColor,p.delaunayAxis);g.opacity=t.opacity,this.delaunayMesh?this.delaunayMesh.update(g):(g.gl=u,this.delaunayMesh=o(g),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)},y.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())},e.exports=function(t,e){var r=new v(t,e.uid);return r.update(e),r}},{"../../components/fx/helpers":631,"../../constants/gl3d_dashes":701,"../../constants/gl3d_markers":702,"../../lib":728,"../../lib/gl_format_color":725,"../../lib/str2rgbarray":751,"../../plots/cartesian/axes":776,"../scatter/make_bubble_size_func":1151,"./calc_errors":1163,"delaunay-triangulate":166,"gl-error3d":259,"gl-line3d":266,"gl-mesh3d":287,"gl-scatter3d":303}],1165:[function(t,e,r){"use strict";var n=t("../../registry"),a=t("../../lib"),i=t("../scatter/subtypes"),o=t("../scatter/marker_defaults"),s=t("../scatter/line_defaults"),l=t("../scatter/text_defaults"),c=t("./attributes");e.exports=function(t,e,r,u){function h(r,n){return a.coerce(t,e,c,r,n)}if(function(t,e,r,a){var i=0,o=r("x"),s=r("y"),l=r("z");n.getComponentMethod("calendars","handleTraceDefaults")(t,e,["x","y","z"],a),o&&s&&l&&(i=Math.min(o.length,s.length,l.length),e._length=e._xlength=e._ylength=e._zlength=i);return i}(t,e,h,u)){h("text"),h("hovertext"),h("hovertemplate"),h("mode"),i.hasLines(e)&&(h("connectgaps"),s(t,e,r,u,h)),i.hasMarkers(e)&&o(t,e,r,u,h,{noSelect:!0}),i.hasText(e)&&(h("texttemplate"),l(t,e,u,h,{noSelect:!0}));var f=(e.line||{}).color,p=(e.marker||{}).color;h("surfaceaxis")>=0&&h("surfacecolor",f||p);for(var d=["x","y","z"],g=0;g<3;++g){var m="projection."+d[g];h(m+".show")&&(h(m+".opacity"),h(m+".scale"))}var v=n.getComponentMethod("errorbars","supplyDefaults");v(t,e,f||p||r,{axis:"z"}),v(t,e,f||p||r,{axis:"y",inherit:"z"}),v(t,e,f||p||r,{axis:"x",inherit:"z"})}else e.visible=!1}},{"../../lib":728,"../../registry":859,"../scatter/line_defaults":1147,"../scatter/marker_defaults":1153,"../scatter/subtypes":1158,"../scatter/text_defaults":1159,"./attributes":1161}],1166:[function(t,e,r){"use strict";e.exports={plot:t("./convert"),attributes:t("./attributes"),markerSymbols:t("../../constants/gl3d_markers"),supplyDefaults:t("./defaults"),colorbar:[{container:"marker",min:"cmin",max:"cmax"},{container:"line",min:"cmin",max:"cmax"}],calc:t("./calc"),moduleType:"trace",name:"scatter3d",basePlotModule:t("../../plots/gl3d"),categories:["gl3d","symbols","showLegend","scatter-like"],meta:{}}},{"../../constants/gl3d_markers":702,"../../plots/gl3d":818,"./attributes":1161,"./calc":1162,"./convert":1164,"./defaults":1165}],1167:[function(t,e,r){"use strict";var n=t("../scatter/attributes"),a=t("../../plots/attributes"),i=t("../../plots/template_attributes").hovertemplateAttrs,o=t("../../plots/template_attributes").texttemplateAttrs,s=t("../../components/colorscale/attributes"),l=t("../../lib/extend").extendFlat,c=n.marker,u=n.line,h=c.line;e.exports={carpet:{valType:"string",editType:"calc"},a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},mode:l({},n.mode,{dflt:"markers"}),text:l({},n.text,{}),texttemplate:o({editType:"plot"},{keys:["a","b","text"]}),hovertext:l({},n.hovertext,{}),line:{color:u.color,width:u.width,dash:u.dash,shape:l({},u.shape,{values:["linear","spline"]}),smoothing:u.smoothing,editType:"calc"},connectgaps:n.connectgaps,fill:l({},n.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:n.fillcolor,marker:l({symbol:c.symbol,opacity:c.opacity,maxdisplayed:c.maxdisplayed,size:c.size,sizeref:c.sizeref,sizemin:c.sizemin,sizemode:c.sizemode,line:l({width:h.width,editType:"calc"},s("marker.line")),gradient:c.gradient,editType:"calc"},s("marker")),textfont:n.textfont,textposition:n.textposition,selected:n.selected,unselected:n.unselected,hoverinfo:l({},a.hoverinfo,{flags:["a","b","text","name"]}),hoveron:n.hoveron,hovertemplate:i()}},{"../../components/colorscale/attributes":602,"../../lib/extend":719,"../../plots/attributes":773,"../../plots/template_attributes":854,"../scatter/attributes":1134}],1168:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../scatter/colorscale_calc"),i=t("../scatter/arrays_to_calcdata"),o=t("../scatter/calc_selection"),s=t("../scatter/calc").calcMarkerSize,l=t("../carpet/lookup_carpetid");e.exports=function(t,e){var r=e._carpetTrace=l(t,e);if(r&&r.visible&&"legendonly"!==r.visible){var c;e.xaxis=r.xaxis,e.yaxis=r.yaxis;var u,h,f=e._length,p=new Array(f),d=!1;for(c=0;c<f;c++)if(u=e.a[c],h=e.b[c],n(u)&&n(h)){var g=r.ab2xy(+u,+h,!0),m=r.isVisible(+u,+h);m||(d=!0),p[c]={x:g[0],y:g[1],a:u,b:h,vis:m}}else p[c]={x:!1,y:!1};return e._needsCull=d,p[0].carpet=r,p[0].trace=e,s(e,f),a(t,e),i(p,e),o(p,e),p}}},{"../carpet/lookup_carpetid":929,"../scatter/arrays_to_calcdata":1133,"../scatter/calc":1135,"../scatter/calc_selection":1136,"../scatter/colorscale_calc":1137,"fast-isnumeric":236}],1169:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../scatter/constants"),i=t("../scatter/subtypes"),o=t("../scatter/marker_defaults"),s=t("../scatter/line_defaults"),l=t("../scatter/line_shape_defaults"),c=t("../scatter/text_defaults"),u=t("../scatter/fillcolor_defaults"),h=t("./attributes");e.exports=function(t,e,r,f){function p(r,a){return n.coerce(t,e,h,r,a)}p("carpet"),e.xaxis="x",e.yaxis="y";var d=p("a"),g=p("b"),m=Math.min(d.length,g.length);if(m){e._length=m,p("text"),p("texttemplate"),p("hovertext"),p("mode",m<a.PTS_LINESONLY?"lines+markers":"lines"),i.hasLines(e)&&(s(t,e,r,f,p),l(t,e,p),p("connectgaps")),i.hasMarkers(e)&&o(t,e,r,f,p,{gradient:!0}),i.hasText(e)&&c(t,e,f,p);var v=[];(i.hasMarkers(e)||i.hasText(e))&&(p("marker.maxdisplayed"),v.push("points")),p("fill"),"none"!==e.fill&&(u(t,e,r,p),i.hasLines(e)||l(t,e,p)),"tonext"!==e.fill&&"toself"!==e.fill||v.push("fills"),"fills"!==p("hoveron",v.join("+")||"points")&&p("hovertemplate"),n.coerceSelectionMarkerOpacity(e,p)}else e.visible=!1}},{"../../lib":728,"../scatter/constants":1138,"../scatter/fillcolor_defaults":1142,"../scatter/line_defaults":1147,"../scatter/line_shape_defaults":1149,"../scatter/marker_defaults":1153,"../scatter/subtypes":1158,"../scatter/text_defaults":1159,"./attributes":1167}],1170:[function(t,e,r){"use strict";e.exports=function(t,e,r,n,a){var i=n[a];return t.a=i.a,t.b=i.b,t.y=i.y,t}},{}],1171:[function(t,e,r){"use strict";e.exports=function(t,e){var r={},n=e._carpet,a=n.ab2ij([t.a,t.b]),i=Math.floor(a[0]),o=a[0]-i,s=Math.floor(a[1]),l=a[1]-s,c=n.evalxy([],i,s,o,l);return r.yLabel=c[1].toFixed(3),r}},{}],1172:[function(t,e,r){"use strict";var n=t("../scatter/hover"),a=t("../../lib").fillText;e.exports=function(t,e,r,i){var o=n(t,e,r,i);if(o&&!1!==o[0].index){var s=o[0];if(void 0===s.index){var l=1-s.y0/t.ya._length,c=t.xa._length,u=c*l/2,h=c-u;return s.x0=Math.max(Math.min(s.x0,h),u),s.x1=Math.max(Math.min(s.x1,h),u),o}var f=s.cd[s.index];s.a=f.a,s.b=f.b,s.xLabelVal=void 0,s.yLabelVal=void 0;var p=s.trace,d=p._carpet,g=p._module.formatLabels(f,p);s.yLabel=g.yLabel,delete s.text;var m=[];if(!p.hovertemplate){var v=(f.hi||p.hoverinfo).split("+");-1!==v.indexOf("all")&&(v=["a","b","text"]),-1!==v.indexOf("a")&&y(d.aaxis,f.a),-1!==v.indexOf("b")&&y(d.baxis,f.b),m.push("y: "+s.yLabel),-1!==v.indexOf("text")&&a(f,p,m),s.extraText=m.join("<br>")}return o}function y(t,e){var r;r=t.labelprefix&&t.labelprefix.length>0?t.labelprefix.replace(/ = $/,""):t._hovertitle,m.push(r+": "+e.toFixed(3)+t.labelsuffix)}}},{"../../lib":728,"../scatter/hover":1145}],1173:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),supplyDefaults:t("./defaults"),colorbar:t("../scatter/marker_colorbar"),formatLabels:t("./format_labels"),calc:t("./calc"),plot:t("./plot"),style:t("../scatter/style").style,styleOnSelect:t("../scatter/style").styleOnSelect,hoverPoints:t("./hover"),selectPoints:t("../scatter/select"),eventData:t("./event_data"),moduleType:"trace",name:"scattercarpet",basePlotModule:t("../../plots/cartesian"),categories:["svg","carpet","symbols","showLegend","carpetDependent","zoomScale"],meta:{}}},{"../../plots/cartesian":789,"../scatter/marker_colorbar":1152,"../scatter/select":1155,"../scatter/style":1157,"./attributes":1167,"./calc":1168,"./defaults":1169,"./event_data":1170,"./format_labels":1171,"./hover":1172,"./plot":1174}],1174:[function(t,e,r){"use strict";var n=t("../scatter/plot"),a=t("../../plots/cartesian/axes"),i=t("../../components/drawing");e.exports=function(t,e,r,o){var s,l,c,u=r[0][0].carpet,h={xaxis:a.getFromId(t,u.xaxis||"x"),yaxis:a.getFromId(t,u.yaxis||"y"),plot:e.plot};for(n(t,h,r,o),s=0;s<r.length;s++)l=r[s][0].trace,c=o.selectAll("g.trace"+l.uid+" .js-line"),i.setClipUrl(c,r[s][0].carpet._clipPathId,t)}},{"../../components/drawing":617,"../../plots/cartesian/axes":776,"../scatter/plot":1154}],1175:[function(t,e,r){"use strict";var n=t("../../plots/template_attributes").hovertemplateAttrs,a=t("../../plots/template_attributes").texttemplateAttrs,i=t("../scatter/attributes"),o=t("../../plots/attributes"),s=t("../../components/colorscale/attributes"),l=t("../../components/drawing/attributes").dash,c=t("../../lib/extend").extendFlat,u=t("../../plot_api/edit_types").overrideAll,h=i.marker,f=i.line,p=h.line;e.exports=u({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:c({},i.mode,{dflt:"markers"}),text:c({},i.text,{}),texttemplate:a({editType:"plot"},{keys:["lat","lon","location","text"]}),hovertext:c({},i.hovertext,{}),textfont:i.textfont,textposition:i.textposition,line:{color:f.color,width:f.width,dash:l},connectgaps:i.connectgaps,marker:c({symbol:h.symbol,opacity:h.opacity,size:h.size,sizeref:h.sizeref,sizemin:h.sizemin,sizemode:h.sizemode,colorbar:h.colorbar,line:c({width:p.width},s("marker.line")),gradient:h.gradient},s("marker")),fill:{valType:"enumerated",values:["none","toself"],dflt:"none"},fillcolor:i.fillcolor,selected:i.selected,unselected:i.unselected,hoverinfo:c({},o.hoverinfo,{flags:["lon","lat","location","text","name"]}),hovertemplate:n()},"calc","nested")},{"../../components/colorscale/attributes":602,"../../components/drawing/attributes":616,"../../lib/extend":719,"../../plot_api/edit_types":759,"../../plots/attributes":773,"../../plots/template_attributes":854,"../scatter/attributes":1134}],1176:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../../constants/numerical").BADNUM,i=t("../scatter/colorscale_calc"),o=t("../scatter/arrays_to_calcdata"),s=t("../scatter/calc_selection"),l=t("../../lib")._;function c(t){return t&&"string"==typeof t}e.exports=function(t,e){var r,u=Array.isArray(e.locations),h=u?e.locations.length:e._length,f=new Array(h);r=e.geojson?function(t){return c(t)||n(t)}:c;for(var p=0;p<h;p++){var d=f[p]={};if(u){var g=e.locations[p];d.loc=r(g)?g:null}else{var m=e.lon[p],v=e.lat[p];n(m)&&n(v)?d.lonlat=[+m,+v]:d.lonlat=[a,a]}}return o(f,e),i(t,e),s(f,e),h&&(f[0].t={labels:{lat:l(t,"lat:")+" ",lon:l(t,"lon:")+" "}}),f}},{"../../constants/numerical":704,"../../lib":728,"../scatter/arrays_to_calcdata":1133,"../scatter/calc_selection":1136,"../scatter/colorscale_calc":1137,"fast-isnumeric":236}],1177:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../scatter/subtypes"),i=t("../scatter/marker_defaults"),o=t("../scatter/line_defaults"),s=t("../scatter/text_defaults"),l=t("../scatter/fillcolor_defaults"),c=t("./attributes");e.exports=function(t,e,r,u){function h(r,a){return n.coerce(t,e,c,r,a)}var f,p=h("locations");if(p&&p.length){var d,g=h("geojson");("string"==typeof g&&""!==g||n.isPlainObject(g))&&(d="geojson-id"),"geojson-id"===h("locationmode",d)&&h("featureidkey"),f=p.length}else{var m=h("lon")||[],v=h("lat")||[];f=Math.min(m.length,v.length)}f?(e._length=f,h("text"),h("hovertext"),h("hovertemplate"),h("mode"),a.hasLines(e)&&(o(t,e,r,u,h),h("connectgaps")),a.hasMarkers(e)&&i(t,e,r,u,h,{gradient:!0}),a.hasText(e)&&(h("texttemplate"),s(t,e,u,h)),h("fill"),"none"!==e.fill&&l(t,e,r,h),n.coerceSelectionMarkerOpacity(e,h)):e.visible=!1}},{"../../lib":728,"../scatter/fillcolor_defaults":1142,"../scatter/line_defaults":1147,"../scatter/marker_defaults":1153,"../scatter/subtypes":1158,"../scatter/text_defaults":1159,"./attributes":1175}],1178:[function(t,e,r){"use strict";e.exports=function(t,e,r,n,a){t.lon=e.lon,t.lat=e.lat,t.location=e.loc?e.loc:null;var i=n[a];return i.fIn&&i.fIn.properties&&(t.properties=i.fIn.properties),t}},{}],1179:[function(t,e,r){"use strict";var n=t("../../plots/cartesian/axes");e.exports=function(t,e,r){var a={},i=r[e.geo]._subplot.mockAxis,o=t.lonlat;return a.lonLabel=n.tickText(i,i.c2l(o[0]),!0).text,a.latLabel=n.tickText(i,i.c2l(o[1]),!0).text,a}},{"../../plots/cartesian/axes":776}],1180:[function(t,e,r){"use strict";var n=t("../../components/fx"),a=t("../../constants/numerical").BADNUM,i=t("../scatter/get_trace_color"),o=t("../../lib").fillText,s=t("./attributes");e.exports=function(t,e,r){var l=t.cd,c=l[0].trace,u=t.xa,h=t.ya,f=t.subplot,p=f.projection.isLonLatOverEdges,d=f.project;if(n.getClosest(l,(function(t){var n=t.lonlat;if(n[0]===a)return 1/0;if(p(n))return 1/0;var i=d(n),o=d([e,r]),s=Math.abs(i[0]-o[0]),l=Math.abs(i[1]-o[1]),c=Math.max(3,t.mrc||0);return Math.max(Math.sqrt(s*s+l*l)-c,1-3/c)}),t),!1!==t.index){var g=l[t.index],m=g.lonlat,v=[u.c2p(m),h.c2p(m)],y=g.mrc||1;t.x0=v[0]-y,t.x1=v[0]+y,t.y0=v[1]-y,t.y1=v[1]+y,t.loc=g.loc,t.lon=m[0],t.lat=m[1];var x={};x[c.geo]={_subplot:f};var b=c._module.formatLabels(g,c,x);return t.lonLabel=b.lonLabel,t.latLabel=b.latLabel,t.color=i(c,g),t.extraText=function(t,e,r,n){if(t.hovertemplate)return;var a=e.hi||t.hoverinfo,i="all"===a?s.hoverinfo.flags:a.split("+"),l=-1!==i.indexOf("location")&&Array.isArray(t.locations),c=-1!==i.indexOf("lon"),u=-1!==i.indexOf("lat"),h=-1!==i.indexOf("text"),f=[];function p(t){return t+"\xb0"}l?f.push(e.loc):c&&u?f.push("("+p(r.lonLabel)+", "+p(r.latLabel)+")"):c?f.push(n.lon+p(r.lonLabel)):u&&f.push(n.lat+p(r.latLabel));h&&o(e,t,f);return f.join("<br>")}(c,g,t,l[0].t.labels),t.hovertemplate=c.hovertemplate,[t]}}},{"../../components/fx":635,"../../constants/numerical":704,"../../lib":728,"../scatter/get_trace_color":1144,"./attributes":1175}],1181:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),supplyDefaults:t("./defaults"),colorbar:t("../scatter/marker_colorbar"),formatLabels:t("./format_labels"),calc:t("./calc"),calcGeoJSON:t("./plot").calcGeoJSON,plot:t("./plot").plot,style:t("./style"),styleOnSelect:t("../scatter/style").styleOnSelect,hoverPoints:t("./hover"),eventData:t("./event_data"),selectPoints:t("./select"),moduleType:"trace",name:"scattergeo",basePlotModule:t("../../plots/geo"),categories:["geo","symbols","showLegend","scatter-like"],meta:{}}},{"../../plots/geo":808,"../scatter/marker_colorbar":1152,"../scatter/style":1157,"./attributes":1175,"./calc":1176,"./defaults":1177,"./event_data":1178,"./format_labels":1179,"./hover":1180,"./plot":1182,"./select":1183,"./style":1184}],1182:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../lib"),i=t("../../lib/topojson_utils").getTopojsonFeatures,o=t("../../lib/geojson_utils"),s=t("../../lib/geo_location_utils"),l=t("../../plots/cartesian/autorange").findExtremes,c=t("../../constants/numerical").BADNUM,u=t("../scatter/calc").calcMarkerSize,h=t("../scatter/subtypes"),f=t("./style");e.exports={calcGeoJSON:function(t,e){var r,n,a=t[0].trace,o=e[a.geo],h=o._subplot,f=a._length;if(Array.isArray(a.locations)){var p=a.locationmode,d="geojson-id"===p?s.extractTraceFeature(t):i(a,h.topojson);for(r=0;r<f;r++){n=t[r];var g="geojson-id"===p?n.fOut:s.locationToFeature(p,n.loc,d);n.lonlat=g?g.properties.ct:[c,c]}}var m,v,y={padded:!0};if("geojson"===o.fitbounds&&"geojson-id"===a.locationmode){var x=s.computeBbox(s.getTraceGeojson(a));m=[x[0],x[2]],v=[x[1],x[3]]}else{for(m=new Array(f),v=new Array(f),r=0;r<f;r++)n=t[r],m[r]=n.lonlat[0],v[r]=n.lonlat[1];y.ppad=u(a,f)}a._extremes.lon=l(o.lonaxis._ax,m,y),a._extremes.lat=l(o.lataxis._ax,v,y)},plot:function(t,e,r){var i=e.layers.frontplot.select(".scatterlayer"),s=a.makeTraceGroups(i,r,"trace scattergeo");function l(t,e){t.lonlat[0]===c&&n.select(e).remove()}s.selectAll("*").remove(),s.each((function(e){var r=n.select(this),i=e[0].trace;if(h.hasLines(i)||"none"!==i.fill){var s=o.calcTraceToLineCoords(e),c="none"!==i.fill?o.makePolygon(s):o.makeLine(s);r.selectAll("path.js-line").data([{geojson:c,trace:i}]).enter().append("path").classed("js-line",!0).style("stroke-miterlimit",2)}h.hasMarkers(i)&&r.selectAll("path.point").data(a.identity).enter().append("path").classed("point",!0).each((function(t){l(t,this)})),h.hasText(i)&&r.selectAll("g").data(a.identity).enter().append("g").append("text").each((function(t){l(t,this)})),f(t,e)}))}}},{"../../constants/numerical":704,"../../lib":728,"../../lib/geo_location_utils":722,"../../lib/geojson_utils":723,"../../lib/topojson_utils":755,"../../plots/cartesian/autorange":775,"../scatter/calc":1135,"../scatter/subtypes":1158,"./style":1184,d3:164}],1183:[function(t,e,r){"use strict";var n=t("../scatter/subtypes"),a=t("../../constants/numerical").BADNUM;e.exports=function(t,e){var r,i,o,s,l,c=t.cd,u=t.xaxis,h=t.yaxis,f=[],p=c[0].trace;if(!n.hasMarkers(p)&&!n.hasText(p))return[];if(!1===e)for(l=0;l<c.length;l++)c[l].selected=0;else for(l=0;l<c.length;l++)(i=(r=c[l]).lonlat)[0]!==a&&(o=u.c2p(i),s=h.c2p(i),e.contains([o,s],null,l,t)?(f.push({pointNumber:l,lon:i[0],lat:i[1]}),r.selected=1):r.selected=0);return f}},{"../../constants/numerical":704,"../scatter/subtypes":1158}],1184:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../components/drawing"),i=t("../../components/color"),o=t("../scatter/style"),s=o.stylePoints,l=o.styleText;e.exports=function(t,e){e&&function(t,e){var r=e[0].trace,o=e[0].node3;o.style("opacity",e[0].trace.opacity),s(o,r,t),l(o,r,t),o.selectAll("path.js-line").style("fill","none").each((function(t){var e=n.select(this),r=t.trace,o=r.line||{};e.call(i.stroke,o.color).call(a.dashLine,o.dash||"",o.width||0),"none"!==r.fill&&e.call(i.fill,r.fillcolor)}))}(t,e)}},{"../../components/color":595,"../../components/drawing":617,"../scatter/style":1157,d3:164}],1185:[function(t,e,r){"use strict";var n=t("../../plots/attributes"),a=t("../scatter/attributes"),i=t("../../components/colorscale/attributes"),o=t("../../lib/extend").extendFlat,s=t("../../plot_api/edit_types").overrideAll,l=t("./constants").DASHES,c=a.line,u=a.marker,h=u.line,f=e.exports=s({x:a.x,x0:a.x0,dx:a.dx,y:a.y,y0:a.y0,dy:a.dy,text:a.text,hovertext:a.hovertext,textposition:a.textposition,textfont:a.textfont,mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"]},line:{color:c.color,width:c.width,shape:{valType:"enumerated",values:["linear","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},dash:{valType:"enumerated",values:Object.keys(l),dflt:"solid"}},marker:o({},i("marker"),{symbol:u.symbol,size:u.size,sizeref:u.sizeref,sizemin:u.sizemin,sizemode:u.sizemode,opacity:u.opacity,colorbar:u.colorbar,line:o({},i("marker.line"),{width:h.width})}),connectgaps:a.connectgaps,fill:o({},a.fill,{dflt:"none"}),fillcolor:a.fillcolor,selected:{marker:a.selected.marker,textfont:a.selected.textfont},unselected:{marker:a.unselected.marker,textfont:a.unselected.textfont},opacity:n.opacity},"calc","nested");f.x.editType=f.y.editType=f.x0.editType=f.y0.editType="calc+clearAxisTypes",f.hovertemplate=a.hovertemplate,f.texttemplate=a.texttemplate},{"../../components/colorscale/attributes":602,"../../lib/extend":719,"../../plot_api/edit_types":759,"../../plots/attributes":773,"../scatter/attributes":1134,"./constants":1187}],1186:[function(t,e,r){"use strict";var n=t("point-cluster"),a=t("../../lib"),i=t("../../plots/cartesian/axis_ids"),o=t("../../plots/cartesian/autorange").findExtremes,s=t("../scatter/calc"),l=s.calcMarkerSize,c=s.calcAxisExpansion,u=s.setFirstScatter,h=t("../scatter/colorscale_calc"),f=t("./convert"),p=t("./scene_update"),d=t("../../constants/numerical").BADNUM,g=t("./constants").TOO_MANY_POINTS;function m(t,e,r){var n=t._extremes[e._id],a=o(e,r._bnds,{padded:!0});n.min=n.min.concat(a.min),n.max=n.max.concat(a.max)}e.exports=function(t,e){var r,o,s,v=t._fullLayout,y=i.getFromId(t,e.xaxis),x=i.getFromId(t,e.yaxis),b=v._plots[e.xaxis+e.yaxis],_=e._length,w=_>=g,T=2*_,k={},A=e._x=y.makeCalcdata(e,"x"),M=e._y=x.makeCalcdata(e,"y"),S=new Array(T);for(r=0;r<_;r++)o=A[r],s=M[r],S[2*r]=o===d?NaN:o,S[2*r+1]=s===d?NaN:s;if("log"===y.type)for(r=0;r<T;r+=2)S[r]=y.c2l(S[r]);if("log"===x.type)for(r=1;r<T;r+=2)S[r]=x.c2l(S[r]);if(w&&"log"!==y.type&&"log"!==x.type)k.tree=n(S);else{var E=k.ids=new Array(_);for(r=0;r<_;r++)E[r]=r}h(t,e);var C,L=function(t,e,r,n,i,o){var s=f.style(t,r);s.marker&&(s.marker.positions=n);s.line&&n.length>1&&a.extendFlat(s.line,f.linePositions(t,r,n));if(s.errorX||s.errorY){var l=f.errorBarPositions(t,r,n,i,o);s.errorX&&a.extendFlat(s.errorX,l.x),s.errorY&&a.extendFlat(s.errorY,l.y)}s.text&&(a.extendFlat(s.text,{positions:n},f.textPosition(t,r,s.text,s.marker)),a.extendFlat(s.textSel,{positions:n},f.textPosition(t,r,s.text,s.markerSel)),a.extendFlat(s.textUnsel,{positions:n},f.textPosition(t,r,s.text,s.markerUnsel)));return s}(t,0,e,S,A,M),P=p(t,b);return u(v,e),w?L.marker&&(C=2*(L.marker.sizeAvg||Math.max(L.marker.size,3))):C=l(e,_),c(t,e,y,x,A,M,C),L.errorX&&m(e,y,L.errorX),L.errorY&&m(e,x,L.errorY),L.fill&&!P.fill2d&&(P.fill2d=!0),L.marker&&!P.scatter2d&&(P.scatter2d=!0),L.line&&!P.line2d&&(P.line2d=!0),!L.errorX&&!L.errorY||P.error2d||(P.error2d=!0),L.text&&!P.glText&&(P.glText=!0),L.marker&&(L.marker.snap=_),P.lineOptions.push(L.line),P.errorXOptions.push(L.errorX),P.errorYOptions.push(L.errorY),P.fillOptions.push(L.fill),P.markerOptions.push(L.marker),P.markerSelectedOptions.push(L.markerSel),P.markerUnselectedOptions.push(L.markerUnsel),P.textOptions.push(L.text),P.textSelectedOptions.push(L.textSel),P.textUnselectedOptions.push(L.textUnsel),P.selectBatch.push([]),P.unselectBatch.push([]),k._scene=P,k.index=P.count,k.x=A,k.y=M,k.positions=S,P.count++,[{x:!1,y:!1,t:k,trace:e}]}},{"../../constants/numerical":704,"../../lib":728,"../../plots/cartesian/autorange":775,"../../plots/cartesian/axis_ids":779,"../scatter/calc":1135,"../scatter/colorscale_calc":1137,"./constants":1187,"./convert":1188,"./scene_update":1196,"point-cluster":467}],1187:[function(t,e,r){"use strict";e.exports={TOO_MANY_POINTS:1e5,SYMBOL_SDF_SIZE:200,SYMBOL_SIZE:20,SYMBOL_STROKE:1,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]}}},{}],1188:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("svg-path-sdf"),i=t("color-normalize"),o=t("../../registry"),s=t("../../lib"),l=t("../../components/drawing"),c=t("../../plots/cartesian/axis_ids"),u=t("../../lib/gl_format_color").formatColor,h=t("../scatter/subtypes"),f=t("../scatter/make_bubble_size_func"),p=t("./helpers"),d=t("./constants"),g=t("../../constants/interactions").DESELECTDIM,m={start:1,left:1,end:-1,right:-1,middle:0,center:0,bottom:1,top:-1},v=t("../../components/fx/helpers").appendArrayPointValue;function y(t,e){var r,a=t._fullLayout,i=e._length,o=e.textfont,l=e.textposition,c=Array.isArray(l)?l:[l],u=o.color,h=o.size,f=o.family,p={},d=e.texttemplate;if(d){p.text=[];var g=a._d3locale,m=Array.isArray(d),y=m?Math.min(d.length,i):i,x=m?function(t){return d[t]}:function(){return d};for(r=0;r<y;r++){var b={i:r},_=e._module.formatLabels(b,e,a),w={};v(w,e,r);var T=e._meta||{};p.text.push(s.texttemplateString(x(r),_,g,w,b,T))}}else Array.isArray(e.text)&&e.text.length<i?p.text=e.text.slice():p.text=e.text;if(Array.isArray(p.text))for(r=p.text.length;r<i;r++)p.text[r]="";for(p.opacity=e.opacity,p.font={},p.align=[],p.baseline=[],r=0;r<c.length;r++){var k=c[r].split(/\s+/);switch(k[1]){case"left":p.align.push("right");break;case"right":p.align.push("left");break;default:p.align.push(k[1])}switch(k[0]){case"top":p.baseline.push("bottom");break;case"bottom":p.baseline.push("top");break;default:p.baseline.push(k[0])}}if(Array.isArray(u))for(p.color=new Array(i),r=0;r<i;r++)p.color[r]=u[r];else p.color=u;if(s.isArrayOrTypedArray(h)||Array.isArray(f))for(p.font=new Array(i),r=0;r<i;r++){var A=p.font[r]={};A.size=s.isTypedArray(h)?h[r]:Array.isArray(h)?n(h[r])?h[r]:0:h,A.family=Array.isArray(f)?f[r]:f}else p.font={size:h,family:f};return p}function x(t){var e,r,n=t._length,a=t.marker,o={},l=s.isArrayOrTypedArray(a.symbol),c=s.isArrayOrTypedArray(a.color),h=s.isArrayOrTypedArray(a.line.color),d=s.isArrayOrTypedArray(a.opacity),g=s.isArrayOrTypedArray(a.size),m=s.isArrayOrTypedArray(a.line.width);if(l||(r=p.isOpenSymbol(a.symbol)),l||c||h||d){o.colors=new Array(n),o.borderColors=new Array(n);var v=u(a,a.opacity,n),y=u(a.line,a.opacity,n);if(!Array.isArray(y[0])){var x=y;for(y=Array(n),e=0;e<n;e++)y[e]=x}if(!Array.isArray(v[0])){var b=v;for(v=Array(n),e=0;e<n;e++)v[e]=b}for(o.colors=v,o.borderColors=y,e=0;e<n;e++){if(l){var _=a.symbol[e];r=p.isOpenSymbol(_)}r&&(y[e]=v[e].slice(),v[e]=v[e].slice(),v[e][3]=0)}o.opacity=t.opacity}else r?(o.color=i(a.color,"uint8"),o.color[3]=0,o.borderColor=i(a.color,"uint8")):(o.color=i(a.color,"uint8"),o.borderColor=i(a.line.color,"uint8")),o.opacity=t.opacity*a.opacity;if(l)for(o.markers=new Array(n),e=0;e<n;e++)o.markers[e]=E(a.symbol[e]);else o.marker=E(a.symbol);var w,T=f(t);if(g||m){var k,A=o.sizes=new Array(n),M=o.borderSizes=new Array(n),S=0;if(g){for(e=0;e<n;e++)A[e]=T(a.size[e]),S+=A[e];k=S/n}else for(w=T(a.size),e=0;e<n;e++)A[e]=w;if(m)for(e=0;e<n;e++)M[e]=a.line.width[e]/2;else for(w=a.line.width/2,e=0;e<n;e++)M[e]=w;o.sizeAvg=k}else o.size=T(a&&a.size||10),o.borderSizes=T(a.line.width);return o}function b(t,e){var r=t.marker,n={};return e?(e.marker&&e.marker.symbol?n=x(s.extendFlat({},r,e.marker)):e.marker&&(e.marker.size&&(n.size=e.marker.size/2),e.marker.color&&(n.colors=e.marker.color),void 0!==e.marker.opacity&&(n.opacity=e.marker.opacity)),n):n}function _(t,e,r){var n={};if(!r)return n;if(r.textfont){var a={opacity:1,text:e.text,texttemplate:e.texttemplate,textposition:e.textposition,textfont:s.extendFlat({},e.textfont)};r.textfont&&s.extendFlat(a.textfont,r.textfont),n=y(t,a)}return n}function w(t,e){var r={capSize:2*e.width,lineWidth:e.thickness,color:e.color};return e.copy_ystyle&&(r=t.error_y),r}var T=d.SYMBOL_SDF_SIZE,k=d.SYMBOL_SIZE,A=d.SYMBOL_STROKE,M={},S=l.symbolFuncs[0](.05*k);function E(t){if("circle"===t)return null;var e,r,n=l.symbolNumber(t),i=l.symbolFuncs[n%100],o=!!l.symbolNoDot[n%100],s=!!l.symbolNoFill[n%100],c=p.isDotSymbol(t);return M[t]?M[t]:(e=c&&!o?i(1.1*k)+S:i(k),r=a(e,{w:T,h:T,viewBox:[-k,-k,k,k],stroke:s?A:-A}),M[t]=r,r||null)}e.exports={style:function(t,e){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};if(!0!==e.visible)return n;if(h.hasText(e)&&(n.text=y(t,e),n.textSel=_(t,e,e.selected),n.textUnsel=_(t,e,e.unselected)),h.hasMarkers(e)&&(n.marker=x(e),n.markerSel=b(e,e.selected),n.markerUnsel=b(e,e.unselected),!e.unselected&&s.isArrayOrTypedArray(e.marker.opacity))){var a=e.marker.opacity;for(n.markerUnsel.opacity=new Array(a.length),r=0;r<a.length;r++)n.markerUnsel.opacity[r]=g*a[r]}if(h.hasLines(e)){n.line={overlay:!0,thickness:e.line.width,color:e.line.color,opacity:e.opacity};var i=(d.DASHES[e.line.dash]||[1]).slice();for(r=0;r<i.length;++r)i[r]*=e.line.width;n.line.dashes=i}return e.error_x&&e.error_x.visible&&(n.errorX=w(e,e.error_x)),e.error_y&&e.error_y.visible&&(n.errorY=w(e,e.error_y)),e.fill&&"none"!==e.fill&&(n.fill={closed:!0,fill:e.fillcolor,thickness:0}),n},markerStyle:x,markerSelection:b,linePositions:function(t,e,r){var n,a,i=r.length,o=i/2;if(h.hasLines(e)&&o)if("hv"===e.line.shape){for(n=[],a=0;a<o-1;a++)isNaN(r[2*a])||isNaN(r[2*a+1])?n.push(NaN,NaN,NaN,NaN):(n.push(r[2*a],r[2*a+1]),isNaN(r[2*a+2])||isNaN(r[2*a+3])?n.push(NaN,NaN):n.push(r[2*a+2],r[2*a+1]));n.push(r[i-2],r[i-1])}else if("hvh"===e.line.shape){for(n=[],a=0;a<o-1;a++)if(isNaN(r[2*a])||isNaN(r[2*a+1])||isNaN(r[2*a+2])||isNaN(r[2*a+3]))isNaN(r[2*a])||isNaN(r[2*a+1])?n.push(NaN,NaN):n.push(r[2*a],r[2*a+1]),n.push(NaN,NaN);else{var s=(r[2*a]+r[2*a+2])/2;n.push(r[2*a],r[2*a+1],s,r[2*a+1],s,r[2*a+3])}n.push(r[i-2],r[i-1])}else if("vhv"===e.line.shape){for(n=[],a=0;a<o-1;a++)if(isNaN(r[2*a])||isNaN(r[2*a+1])||isNaN(r[2*a+2])||isNaN(r[2*a+3]))isNaN(r[2*a])||isNaN(r[2*a+1])?n.push(NaN,NaN):n.push(r[2*a],r[2*a+1]),n.push(NaN,NaN);else{var l=(r[2*a+1]+r[2*a+3])/2;n.push(r[2*a],r[2*a+1],r[2*a],l,r[2*a+2],l)}n.push(r[i-2],r[i-1])}else if("vh"===e.line.shape){for(n=[],a=0;a<o-1;a++)isNaN(r[2*a])||isNaN(r[2*a+1])?n.push(NaN,NaN,NaN,NaN):(n.push(r[2*a],r[2*a+1]),isNaN(r[2*a+2])||isNaN(r[2*a+3])?n.push(NaN,NaN):n.push(r[2*a],r[2*a+3]));n.push(r[i-2],r[i-1])}else n=r;var c=!1;for(a=0;a<n.length;a++)if(isNaN(n[a])){c=!0;break}var u=c||n.length>d.TOO_MANY_POINTS||h.hasMarkers(e)?"rect":"round";if(c&&e.connectgaps){var f=n[0],p=n[1];for(a=0;a<n.length;a+=2)isNaN(n[a])||isNaN(n[a+1])?(n[a]=f,n[a+1]=p):(f=n[a],p=n[a+1])}return{join:u,positions:n}},errorBarPositions:function(t,e,r,a,i){var s=o.getComponentMethod("errorbars","makeComputeError"),l=c.getFromId(t,e.xaxis),u=c.getFromId(t,e.yaxis),h=r.length/2,f={};function p(t,a){var i=a._id.charAt(0),o=e["error_"+i];if(o&&o.visible&&("linear"===a.type||"log"===a.type)){for(var l=s(o),c={x:0,y:1}[i],u={x:[0,1,2,3],y:[2,3,0,1]}[i],p=new Float64Array(4*h),d=1/0,g=-1/0,m=0,v=0;m<h;m++,v+=4){var y=t[m];if(n(y)){var x=r[2*m+c],b=l(y,m),_=b[0],w=b[1];if(n(_)&&n(w)){var T=y-_,k=y+w;p[v+u[0]]=x-a.c2l(T),p[v+u[1]]=a.c2l(k)-x,p[v+u[2]]=0,p[v+u[3]]=0,d=Math.min(d,y-_),g=Math.max(g,y+w)}}}f[i]={positions:r,errors:p,_bnds:[d,g]}}}return p(a,l),p(i,u),f},textPosition:function(t,e,r,n){var a,i=e._length,o={};if(h.hasMarkers(e)){var s=r.font,l=r.align,c=r.baseline;for(o.offset=new Array(i),a=0;a<i;a++){var u=n.sizes?n.sizes[a]:n.size,f=Array.isArray(s)?s[a].size:s.size,p=Array.isArray(l)?l.length>1?l[a]:l[0]:l,d=Array.isArray(c)?c.length>1?c[a]:c[0]:c,g=m[p],v=m[d],y=u?u/.8+1:0,x=-v*y-.5*v;o.offset[a]=[g*y/f,x/f]}}return o}}},{"../../components/drawing":617,"../../components/fx/helpers":631,"../../constants/interactions":703,"../../lib":728,"../../lib/gl_format_color":725,"../../plots/cartesian/axis_ids":779,"../../registry":859,"../scatter/make_bubble_size_func":1151,"../scatter/subtypes":1158,"./constants":1187,"./helpers":1192,"color-normalize":122,"fast-isnumeric":236,"svg-path-sdf":526}],1189:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../registry"),i=t("./helpers"),o=t("./attributes"),s=t("../scatter/constants"),l=t("../scatter/subtypes"),c=t("../scatter/xy_defaults"),u=t("../scatter/marker_defaults"),h=t("../scatter/line_defaults"),f=t("../scatter/fillcolor_defaults"),p=t("../scatter/text_defaults");e.exports=function(t,e,r,d){function g(r,a){return n.coerce(t,e,o,r,a)}var m=!!t.marker&&i.isOpenSymbol(t.marker.symbol),v=l.isBubble(t),y=c(t,e,d,g);if(y){var x=y<s.PTS_LINESONLY?"lines+markers":"lines";g("text"),g("hovertext"),g("hovertemplate"),g("mode",x),l.hasLines(e)&&(g("connectgaps"),h(t,e,r,d,g),g("line.shape")),l.hasMarkers(e)&&(u(t,e,r,d,g),g("marker.line.width",m||v?1:0)),l.hasText(e)&&(g("texttemplate"),p(t,e,d,g));var b=(e.line||{}).color,_=(e.marker||{}).color;g("fill"),"none"!==e.fill&&f(t,e,r,g);var w=a.getComponentMethod("errorbars","supplyDefaults");w(t,e,b||_||r,{axis:"y"}),w(t,e,b||_||r,{axis:"x",inherit:"y"}),n.coerceSelectionMarkerOpacity(e,g)}else e.visible=!1}},{"../../lib":728,"../../registry":859,"../scatter/constants":1138,"../scatter/fillcolor_defaults":1142,"../scatter/line_defaults":1147,"../scatter/marker_defaults":1153,"../scatter/subtypes":1158,"../scatter/text_defaults":1159,"../scatter/xy_defaults":1160,"./attributes":1185,"./helpers":1192}],1190:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../components/color"),i=t("../../constants/interactions").DESELECTDIM;e.exports={styleTextSelection:function(t){var e,r,o=t[0],s=o.trace,l=o.t,c=l._scene,u=l.index,h=c.selectBatch[u],f=c.unselectBatch[u],p=c.textOptions[u],d=c.textSelectedOptions[u]||{},g=c.textUnselectedOptions[u]||{},m=n.extendFlat({},p);if(h.length||f.length){var v=d.color,y=g.color,x=p.color,b=Array.isArray(x);for(m.color=new Array(s._length),e=0;e<h.length;e++)r=h[e],m.color[r]=v||(b?x[r]:x);for(e=0;e<f.length;e++){r=f[e];var _=b?x[r]:x;m.color[r]=y||(v?_:a.addOpacity(_,i))}}c.glText[u].update(m)}}},{"../../components/color":595,"../../constants/interactions":703,"../../lib":728}],1191:[function(t,e,r){"use strict";var n=t("../scatter/format_labels");e.exports=function(t,e,r){var a=t.i;return"x"in t||(t.x=e._x[a]),"y"in t||(t.y=e._y[a]),n(t,e,r)}},{"../scatter/format_labels":1143}],1192:[function(t,e,r){"use strict";var n=t("./constants");r.isOpenSymbol=function(t){return"string"==typeof t?n.OPEN_RE.test(t):t%200>100},r.isDotSymbol=function(t){return"string"==typeof t?n.DOT_RE.test(t):t>200}},{"./constants":1187}],1193:[function(t,e,r){"use strict";var n=t("../../registry"),a=t("../../lib"),i=t("../scatter/get_trace_color");function o(t,e,r,o){var s=t.xa,l=t.ya,c=t.distance,u=t.dxy,h=t.index,f={pointNumber:h,x:e[h],y:r[h]};f.tx=Array.isArray(o.text)?o.text[h]:o.text,f.htx=Array.isArray(o.hovertext)?o.hovertext[h]:o.hovertext,f.data=Array.isArray(o.customdata)?o.customdata[h]:o.customdata,f.tp=Array.isArray(o.textposition)?o.textposition[h]:o.textposition;var p=o.textfont;p&&(f.ts=a.isArrayOrTypedArray(p.size)?p.size[h]:p.size,f.tc=Array.isArray(p.color)?p.color[h]:p.color,f.tf=Array.isArray(p.family)?p.family[h]:p.family);var d=o.marker;d&&(f.ms=a.isArrayOrTypedArray(d.size)?d.size[h]:d.size,f.mo=a.isArrayOrTypedArray(d.opacity)?d.opacity[h]:d.opacity,f.mx=a.isArrayOrTypedArray(d.symbol)?d.symbol[h]:d.symbol,f.mc=a.isArrayOrTypedArray(d.color)?d.color[h]:d.color);var g=d&&d.line;g&&(f.mlc=Array.isArray(g.color)?g.color[h]:g.color,f.mlw=a.isArrayOrTypedArray(g.width)?g.width[h]:g.width);var m=d&&d.gradient;m&&"none"!==m.type&&(f.mgt=Array.isArray(m.type)?m.type[h]:m.type,f.mgc=Array.isArray(m.color)?m.color[h]:m.color);var v=s.c2p(f.x,!0),y=l.c2p(f.y,!0),x=f.mrc||1,b=o.hoverlabel;b&&(f.hbg=Array.isArray(b.bgcolor)?b.bgcolor[h]:b.bgcolor,f.hbc=Array.isArray(b.bordercolor)?b.bordercolor[h]:b.bordercolor,f.hts=a.isArrayOrTypedArray(b.font.size)?b.font.size[h]:b.font.size,f.htc=Array.isArray(b.font.color)?b.font.color[h]:b.font.color,f.htf=Array.isArray(b.font.family)?b.font.family[h]:b.font.family,f.hnl=a.isArrayOrTypedArray(b.namelength)?b.namelength[h]:b.namelength);var _=o.hoverinfo;_&&(f.hi=Array.isArray(_)?_[h]:_);var w=o.hovertemplate;w&&(f.ht=Array.isArray(w)?w[h]:w);var T={};T[t.index]=f;var k=a.extendFlat({},t,{color:i(o,f),x0:v-x,x1:v+x,xLabelVal:f.x,y0:y-x,y1:y+x,yLabelVal:f.y,cd:T,distance:c,spikeDistance:u,hovertemplate:f.ht});return f.htx?k.text=f.htx:f.tx?k.text=f.tx:o.text&&(k.text=o.text),a.fillText(f,o,k),n.getComponentMethod("errorbars","hoverInfo")(f,o,k),k}e.exports={hoverPoints:function(t,e,r,n){var a,i,s,l,c,u,h,f,p,d=t.cd,g=d[0].t,m=d[0].trace,v=t.xa,y=t.ya,x=g.x,b=g.y,_=v.c2p(e),w=y.c2p(r),T=t.distance;if(g.tree){var k=v.p2c(_-T),A=v.p2c(_+T),M=y.p2c(w-T),S=y.p2c(w+T);a="x"===n?g.tree.range(Math.min(k,A),Math.min(y._rl[0],y._rl[1]),Math.max(k,A),Math.max(y._rl[0],y._rl[1])):g.tree.range(Math.min(k,A),Math.min(M,S),Math.max(k,A),Math.max(M,S))}else a=g.ids;var E=T;if("x"===n)for(c=0;c<a.length;c++)s=x[a[c]],(u=Math.abs(v.c2p(s)-_))<E&&(E=u,h=y.c2p(b[a[c]])-w,p=Math.sqrt(u*u+h*h),i=a[c]);else for(c=a.length-1;c>-1;c--)s=x[a[c]],l=b[a[c]],u=v.c2p(s)-_,h=y.c2p(l)-w,(f=Math.sqrt(u*u+h*h))<E&&(E=p=f,i=a[c]);return t.index=i,t.distance=E,t.dxy=p,void 0===i?[t]:[o(t,x,b,m)]},calcHover:o}},{"../../lib":728,"../../registry":859,"../scatter/get_trace_color":1144}],1194:[function(t,e,r){"use strict";var n=t("./hover");e.exports={moduleType:"trace",name:"scattergl",basePlotModule:t("../../plots/cartesian"),categories:["gl","regl","cartesian","symbols","errorBarsOK","showLegend","scatter-like"],attributes:t("./attributes"),supplyDefaults:t("./defaults"),crossTraceDefaults:t("../scatter/cross_trace_defaults"),colorbar:t("../scatter/marker_colorbar"),formatLabels:t("./format_labels"),calc:t("./calc"),plot:t("./plot"),hoverPoints:n.hoverPoints,selectPoints:t("./select"),meta:{}}},{"../../plots/cartesian":789,"../scatter/cross_trace_defaults":1140,"../scatter/marker_colorbar":1152,"./attributes":1185,"./calc":1186,"./defaults":1189,"./format_labels":1191,"./hover":1193,"./plot":1195,"./select":1197}],1195:[function(t,e,r){"use strict";var n=t("regl-scatter2d"),a=t("regl-line2d"),i=t("regl-error2d"),o=t("gl-text"),s=t("../../lib"),l=t("../../components/dragelement/helpers").selectMode,c=t("../../lib/prepare_regl"),u=t("../scatter/subtypes"),h=t("../scatter/link_traces"),f=t("./edit_style").styleTextSelection;function p(t,e,r){var n=t._size,a=t.width,i=t.height;return[n.l+e.domain[0]*n.w,n.b+r.domain[0]*n.h,a-n.r-(1-e.domain[1])*n.w,i-n.t-(1-r.domain[1])*n.h]}e.exports=function(t,e,r){if(r.length){var d,g,m=t._fullLayout,v=e._scene,y=e.xaxis,x=e.yaxis;if(v)if(c(t,["ANGLE_instanced_arrays","OES_element_index_uint"])){var b=v.count,_=m._glcanvas.data()[0].regl;if(h(t,e,r),v.dirty){if(!0===v.error2d&&(v.error2d=i(_)),!0===v.line2d&&(v.line2d=a(_)),!0===v.scatter2d&&(v.scatter2d=n(_)),!0===v.fill2d&&(v.fill2d=a(_)),!0===v.glText)for(v.glText=new Array(b),d=0;d<b;d++)v.glText[d]=new o(_);if(v.glText){if(b>v.glText.length){var w=b-v.glText.length;for(d=0;d<w;d++)v.glText.push(new o(_))}else if(b<v.glText.length){var T=v.glText.length-b;v.glText.splice(b,T).forEach((function(t){t.destroy()}))}for(d=0;d<b;d++)v.glText[d].update(v.textOptions[d])}if(v.line2d&&(v.line2d.update(v.lineOptions),v.lineOptions=v.lineOptions.map((function(t){if(t&&t.positions){for(var e=t.positions,r=0;r<e.length&&(isNaN(e[r])||isNaN(e[r+1]));)r+=2;for(var n=e.length-2;n>r&&(isNaN(e[n])||isNaN(e[n+1]));)n-=2;t.positions=e.slice(r,n+2)}return t})),v.line2d.update(v.lineOptions)),v.error2d){var k=(v.errorXOptions||[]).concat(v.errorYOptions||[]);v.error2d.update(k)}v.scatter2d&&v.scatter2d.update(v.markerOptions),v.fillOrder=s.repeat(null,b),v.fill2d&&(v.fillOptions=v.fillOptions.map((function(t,e){var n=r[e];if(t&&n&&n[0]&&n[0].trace){var a,i,o=n[0],s=o.trace,l=o.t,c=v.lineOptions[e],u=[];s._ownfill&&u.push(e),s._nexttrace&&u.push(e+1),u.length&&(v.fillOrder[e]=u);var h,f,p=[],d=c&&c.positions||l.positions;if("tozeroy"===s.fill){for(h=0;h<d.length&&isNaN(d[h+1]);)h+=2;for(f=d.length-2;f>h&&isNaN(d[f+1]);)f-=2;0!==d[h+1]&&(p=[d[h],0]),p=p.concat(d.slice(h,f+2)),0!==d[f+1]&&(p=p.concat([d[f],0]))}else if("tozerox"===s.fill){for(h=0;h<d.length&&isNaN(d[h]);)h+=2;for(f=d.length-2;f>h&&isNaN(d[f]);)f-=2;0!==d[h]&&(p=[0,d[h+1]]),p=p.concat(d.slice(h,f+2)),0!==d[f]&&(p=p.concat([0,d[f+1]]))}else if("toself"===s.fill||"tonext"===s.fill){for(p=[],a=0,i=0;i<d.length;i+=2)(isNaN(d[i])||isNaN(d[i+1]))&&((p=p.concat(d.slice(a,i))).push(d[a],d[a+1]),a=i+2);p=p.concat(d.slice(a)),a&&p.push(d[a],d[a+1])}else{var g=s._nexttrace;if(g){var m=v.lineOptions[e+1];if(m){var y=m.positions;if("tonexty"===s.fill){for(p=d.slice(),e=Math.floor(y.length/2);e--;){var x=y[2*e],b=y[2*e+1];isNaN(x)||isNaN(b)||p.push(x,b)}t.fill=g.fillcolor}}}}if(s._prevtrace&&"tonext"===s._prevtrace.fill){var _=v.lineOptions[e-1].positions,w=p.length/2,T=[a=w];for(i=0;i<_.length;i+=2)(isNaN(_[i])||isNaN(_[i+1]))&&(T.push(i/2+w+1),a=i+2);p=p.concat(_),t.hole=T}return t.fillmode=s.fill,t.opacity=s.opacity,t.positions=p,t}})),v.fill2d.update(v.fillOptions))}var A=m.dragmode,M=l(A),S=m.clickmode.indexOf("select")>-1;for(d=0;d<b;d++){var E=r[d][0],C=E.trace,L=E.t,P=L.index,I=C._length,z=L.x,O=L.y;if(C.selectedpoints||M||S){if(M||(M=!0),C.selectedpoints){var D=v.selectBatch[P]=s.selIndices2selPoints(C),R={};for(g=0;g<D.length;g++)R[D[g]]=1;var F=[];for(g=0;g<I;g++)R[g]||F.push(g);v.unselectBatch[P]=F}var B=L.xpx=new Array(I),N=L.ypx=new Array(I);for(g=0;g<I;g++)B[g]=y.c2p(z[g]),N[g]=x.c2p(O[g])}else L.xpx=L.ypx=null}if(M){if(v.select2d||(v.select2d=n(m._glcanvas.data()[1].regl)),v.scatter2d){var j=new Array(b);for(d=0;d<b;d++)j[d]=v.selectBatch[d].length||v.unselectBatch[d].length?v.markerUnselectedOptions[d]:{};v.scatter2d.update(j)}v.select2d&&(v.select2d.update(v.markerOptions),v.select2d.update(v.markerSelectedOptions)),v.glText&&r.forEach((function(t){var e=((t||[])[0]||{}).trace||{};u.hasText(e)&&f(t)}))}else v.scatter2d&&v.scatter2d.update(v.markerOptions);var V={viewport:p(m,y,x),range:[(y._rl||y.range)[0],(x._rl||x.range)[0],(y._rl||y.range)[1],(x._rl||x.range)[1]]},U=s.repeat(V,v.count);v.fill2d&&v.fill2d.update(U),v.line2d&&v.line2d.update(U),v.error2d&&v.error2d.update(U.concat(U)),v.scatter2d&&v.scatter2d.update(U),v.select2d&&v.select2d.update(U),v.glText&&v.glText.forEach((function(t){t.update(V)}))}else v.init()}}},{"../../components/dragelement/helpers":613,"../../lib":728,"../../lib/prepare_regl":741,"../scatter/link_traces":1150,"../scatter/subtypes":1158,"./edit_style":1190,"gl-text":321,"regl-error2d":488,"regl-line2d":489,"regl-scatter2d":490}],1196:[function(t,e,r){"use strict";var n=t("../../lib");e.exports=function(t,e){var r=e._scene,a={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 e._scene||((r=e._scene={}).init=function(){n.extendFlat(r,i,a)},r.init(),r.update=function(t){var e=n.repeat(t,r.count);if(r.fill2d&&r.fill2d.update(e),r.scatter2d&&r.scatter2d.update(e),r.line2d&&r.line2d.update(e),r.error2d&&r.error2d.update(e.concat(e)),r.select2d&&r.select2d.update(e),r.glText)for(var a=0;a<r.count;a++)r.glText[a].update(t)},r.draw=function(){for(var t=r.count,e=r.fill2d,a=r.error2d,i=r.line2d,o=r.scatter2d,s=r.glText,l=r.select2d,c=r.selectBatch,u=r.unselectBatch,h=0;h<t;h++){if(e&&r.fillOrder[h]&&e.draw(r.fillOrder[h]),i&&r.lineOptions[h]&&i.draw(h),a&&(r.errorXOptions[h]&&a.draw(h),r.errorYOptions[h]&&a.draw(h+t)),o&&r.markerOptions[h])if(u[h].length){var f=n.repeat([],r.count);f[h]=u[h],o.draw(f)}else c[h].length||o.draw(h);s[h]&&r.textOptions[h]&&s[h].render()}l&&l.draw(c),r.dirty=!1},r.destroy=function(){r.fill2d&&r.fill2d.destroy&&r.fill2d.destroy(),r.scatter2d&&r.scatter2d.destroy&&r.scatter2d.destroy(),r.error2d&&r.error2d.destroy&&r.error2d.destroy(),r.line2d&&r.line2d.destroy&&r.line2d.destroy(),r.select2d&&r.select2d.destroy&&r.select2d.destroy(),r.glText&&r.glText.forEach((function(t){t.destroy&&t.destroy()})),r.lineOptions=null,r.fillOptions=null,r.markerOptions=null,r.markerSelectedOptions=null,r.markerUnselectedOptions=null,r.errorXOptions=null,r.errorYOptions=null,r.textOptions=null,r.textSelectedOptions=null,r.textUnselectedOptions=null,r.selectBatch=null,r.unselectBatch=null,e._scene=null}),r.dirty||n.extendFlat(r,a),r}},{"../../lib":728}],1197:[function(t,e,r){"use strict";var n=t("../scatter/subtypes"),a=t("./edit_style").styleTextSelection;e.exports=function(t,e){var r=t.cd,i=[],o=r[0].trace,s=r[0].t,l=o._length,c=s.x,u=s.y,h=s._scene,f=s.index;if(!h)return i;var p=n.hasText(o),d=n.hasMarkers(o),g=!d&&!p;if(!0!==o.visible||g)return i;var m=[],v=[];if(!1!==e&&!e.degenerate)for(var y=0;y<l;y++)e.contains([s.xpx[y],s.ypx[y]],!1,y,t)?(m.push(y),i.push({pointNumber:y,x:c[y],y:u[y]})):v.push(y);if(d){var x=h.scatter2d;if(m.length||v.length){if(!h.selectBatch[f].length&&!h.unselectBatch[f].length){var b=new Array(h.count);b[f]=h.markerUnselectedOptions[f],x.update.apply(x,b)}}else{var _=new Array(h.count);_[f]=h.markerOptions[f],x.update.apply(x,_)}}return h.selectBatch[f]=m,h.unselectBatch[f]=v,p&&a(r),i}},{"../scatter/subtypes":1158,"./edit_style":1190}],1198:[function(t,e,r){"use strict";var n=t("../../plots/template_attributes").hovertemplateAttrs,a=t("../../plots/template_attributes").texttemplateAttrs,i=t("../scattergeo/attributes"),o=t("../scatter/attributes"),s=t("../../plots/mapbox/layout_attributes"),l=t("../../plots/attributes"),c=t("../../components/colorscale/attributes"),u=t("../../lib/extend").extendFlat,h=t("../../plot_api/edit_types").overrideAll,f=i.line,p=i.marker;e.exports=h({lon:i.lon,lat:i.lat,mode:u({},o.mode,{dflt:"markers"}),text:u({},o.text,{}),texttemplate:a({editType:"plot"},{keys:["lat","lon","text"]}),hovertext:u({},o.hovertext,{}),line:{color:f.color,width:f.width},connectgaps:o.connectgaps,marker:u({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:p.opacity,size:p.size,sizeref:p.sizeref,sizemin:p.sizemin,sizemode:p.sizemode},c("marker")),fill:i.fill,fillcolor:o.fillcolor,textfont:s.layers.symbol.textfont,textposition:s.layers.symbol.textposition,below:{valType:"string"},selected:{marker:o.selected.marker},unselected:{marker:o.unselected.marker},hoverinfo:u({},l.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:n()},"calc","nested")},{"../../components/colorscale/attributes":602,"../../lib/extend":719,"../../plot_api/edit_types":759,"../../plots/attributes":773,"../../plots/mapbox/layout_attributes":835,"../../plots/template_attributes":854,"../scatter/attributes":1134,"../scattergeo/attributes":1175}],1199:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../../lib"),i=t("../../constants/numerical").BADNUM,o=t("../../lib/geojson_utils"),s=t("../../components/colorscale"),l=t("../../components/drawing"),c=t("../scatter/make_bubble_size_func"),u=t("../scatter/subtypes"),h=t("../../plots/mapbox/convert_text_opts"),f=t("../../components/fx/helpers").appendArrayPointValue,p=t("../../lib/svg_text_utils").NEWLINES,d=t("../../lib/svg_text_utils").BR_TAG_ALL;function g(){return{geojson:o.makeBlank(),layout:{visibility:"none"},paint:{}}}function m(t,e){return a.isArrayOrTypedArray(t)?e?function(e){return n(t[e])?+t[e]:0}:function(e){return t[e]}:t?function(){return t}:v}function v(){return""}function y(t){return t[0]===i}e.exports=function(t,e){var r,i=e[0].trace,x=!0===i.visible&&0!==i._length,b="none"!==i.fill,_=u.hasLines(i),w=u.hasMarkers(i),T=u.hasText(i),k=w&&"circle"===i.marker.symbol,A=w&&"circle"!==i.marker.symbol,M=g(),S=g(),E=g(),C=g(),L={fill:M,line:S,circle:E,symbol:C};if(!x)return L;if((b||_)&&(r=o.calcTraceToLineCoords(e)),b&&(M.geojson=o.makePolygon(r),M.layout.visibility="visible",a.extendFlat(M.paint,{"fill-color":i.fillcolor})),_&&(S.geojson=o.makeLine(r),S.layout.visibility="visible",a.extendFlat(S.paint,{"line-width":i.line.width,"line-color":i.line.color,"line-opacity":i.opacity})),k){var P=function(t){var e,r,i,o,u=t[0].trace,h=u.marker,f=u.selectedpoints,p=a.isArrayOrTypedArray(h.color),d=a.isArrayOrTypedArray(h.size),g=a.isArrayOrTypedArray(h.opacity);function m(t){return u.opacity*t}p&&(r=s.hasColorscale(u,"marker")?s.makeColorScaleFuncFromTrace(h):a.identity);d&&(i=c(u));g&&(o=function(t){return m(n(t)?+a.constrain(t,0,1):0)});var v,x=[];for(e=0;e<t.length;e++){var b=t[e],_=b.lonlat;if(!y(_)){var w={};r&&(w.mcc=b.mcc=r(b.mc)),i&&(w.mrc=b.mrc=i(b.ms)),o&&(w.mo=o(b.mo)),f&&(w.selected=b.selected||0),x.push({type:"Feature",geometry:{type:"Point",coordinates:_},properties:w})}}if(f)for(v=l.makeSelectedPointStyleFns(u),e=0;e<x.length;e++){var T=x[e].properties;v.selectedOpacityFn&&(T.mo=m(v.selectedOpacityFn(T))),v.selectedColorFn&&(T.mcc=v.selectedColorFn(T)),v.selectedSizeFn&&(T.mrc=v.selectedSizeFn(T))}return{geojson:{type:"FeatureCollection",features:x},mcc:p||v&&v.selectedColorFn?{type:"identity",property:"mcc"}:h.color,mrc:d||v&&v.selectedSizeFn?{type:"identity",property:"mrc"}:(k=h.size,k/2),mo:g||v&&v.selectedOpacityFn?{type:"identity",property:"mo"}:m(h.opacity)};var k}(e);E.geojson=P.geojson,E.layout.visibility="visible",a.extendFlat(E.paint,{"circle-color":P.mcc,"circle-radius":P.mrc,"circle-opacity":P.mo})}if((A||T)&&(C.geojson=function(t,e){for(var r=e._fullLayout,n=t[0].trace,i=n.marker||{},o=i.symbol,s=i.angle,l="circle"!==o?m(o):v,c="auto"!==s?m(s,!0):v,h=u.hasText(n)?m(n.text):v,g=[],x=0;x<t.length;x++){var b=t[x];if(!y(b.lonlat)){var _,w=n.texttemplate;if(w){var T=Array.isArray(w)?w[x]||"":w,k=n._module.formatLabels(b,n,r),A={};f(A,n,b.i);var M=n._meta||{};_=a.texttemplateString(T,k,r._d3locale,A,b,M)}else _=h(x);_&&(_=_.replace(p,"").replace(d,"\n")),g.push({type:"Feature",geometry:{type:"Point",coordinates:b.lonlat},properties:{symbol:l(x),angle:c(x),text:_}})}}return{type:"FeatureCollection",features:g}}(e,t),a.extendFlat(C.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),A&&(a.extendFlat(C.layout,{"icon-size":i.marker.size/10}),"angle"in i.marker&&"auto"!==i.marker.angle&&a.extendFlat(C.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),C.layout["icon-allow-overlap"]=i.marker.allowoverlap,a.extendFlat(C.paint,{"icon-opacity":i.opacity*i.marker.opacity,"icon-color":i.marker.color})),T)){var I=(i.marker||{}).size,z=h(i.textposition,I);a.extendFlat(C.layout,{"text-size":i.textfont.size,"text-anchor":z.anchor,"text-offset":z.offset}),a.extendFlat(C.paint,{"text-color":i.textfont.color,"text-opacity":i.opacity})}return L}},{"../../components/colorscale":607,"../../components/drawing":617,"../../components/fx/helpers":631,"../../constants/numerical":704,"../../lib":728,"../../lib/geojson_utils":723,"../../lib/svg_text_utils":752,"../../plots/mapbox/convert_text_opts":832,"../scatter/make_bubble_size_func":1151,"../scatter/subtypes":1158,"fast-isnumeric":236}],1200:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../scatter/subtypes"),i=t("../scatter/marker_defaults"),o=t("../scatter/line_defaults"),s=t("../scatter/text_defaults"),l=t("../scatter/fillcolor_defaults"),c=t("./attributes");e.exports=function(t,e,r,u){function h(r,a){return n.coerce(t,e,c,r,a)}if(function(t,e,r){var n=r("lon")||[],a=r("lat")||[],i=Math.min(n.length,a.length);return e._length=i,i}(0,e,h)){if(h("text"),h("texttemplate"),h("hovertext"),h("hovertemplate"),h("mode"),h("below"),a.hasLines(e)&&(o(t,e,r,u,h,{noDash:!0}),h("connectgaps")),a.hasMarkers(e)){i(t,e,r,u,h,{noLine:!0}),h("marker.allowoverlap"),h("marker.angle");var f=e.marker;"circle"!==f.symbol&&(n.isArrayOrTypedArray(f.size)&&(f.size=f.size[0]),n.isArrayOrTypedArray(f.color)&&(f.color=f.color[0]))}a.hasText(e)&&s(t,e,u,h,{noSelect:!0}),h("fill"),"none"!==e.fill&&l(t,e,r,h),n.coerceSelectionMarkerOpacity(e,h)}else e.visible=!1}},{"../../lib":728,"../scatter/fillcolor_defaults":1142,"../scatter/line_defaults":1147,"../scatter/marker_defaults":1153,"../scatter/subtypes":1158,"../scatter/text_defaults":1159,"./attributes":1198}],1201:[function(t,e,r){"use strict";e.exports=function(t,e){return t.lon=e.lon,t.lat=e.lat,t}},{}],1202:[function(t,e,r){"use strict";var n=t("../../plots/cartesian/axes");e.exports=function(t,e,r){var a={},i=r[e.subplot]._subplot.mockAxis,o=t.lonlat;return a.lonLabel=n.tickText(i,i.c2l(o[0]),!0).text,a.latLabel=n.tickText(i,i.c2l(o[1]),!0).text,a}},{"../../plots/cartesian/axes":776}],1203:[function(t,e,r){"use strict";var n=t("../../components/fx"),a=t("../../lib"),i=t("../scatter/get_trace_color"),o=a.fillText,s=t("../../constants/numerical").BADNUM;e.exports=function(t,e,r){var l=t.cd,c=l[0].trace,u=t.xa,h=t.ya,f=t.subplot,p=360*(e>=0?Math.floor((e+180)/360):Math.ceil((e-180)/360)),d=e-p;if(n.getClosest(l,(function(t){var e=t.lonlat;if(e[0]===s)return 1/0;var n=a.modHalf(e[0],360),i=e[1],o=f.project([n,i]),l=o.x-u.c2p([d,i]),c=o.y-h.c2p([n,r]),p=Math.max(3,t.mrc||0);return Math.max(Math.sqrt(l*l+c*c)-p,1-3/p)}),t),!1!==t.index){var g=l[t.index],m=g.lonlat,v=[a.modHalf(m[0],360)+p,m[1]],y=u.c2p(v),x=h.c2p(v),b=g.mrc||1;t.x0=y-b,t.x1=y+b,t.y0=x-b,t.y1=x+b;var _={};_[c.subplot]={_subplot:f};var w=c._module.formatLabels(g,c,_);return t.lonLabel=w.lonLabel,t.latLabel=w.latLabel,t.color=i(c,g),t.extraText=function(t,e,r){if(t.hovertemplate)return;var n=(e.hi||t.hoverinfo).split("+"),a=-1!==n.indexOf("all"),i=-1!==n.indexOf("lon"),s=-1!==n.indexOf("lat"),l=e.lonlat,c=[];function u(t){return t+"\xb0"}a||i&&s?c.push("("+u(l[0])+", "+u(l[1])+")"):i?c.push(r.lon+u(l[0])):s&&c.push(r.lat+u(l[1]));(a||-1!==n.indexOf("text"))&&o(e,t,c);return c.join("<br>")}(c,g,l[0].t.labels),t.hovertemplate=c.hovertemplate,[t]}}},{"../../components/fx":635,"../../constants/numerical":704,"../../lib":728,"../scatter/get_trace_color":1144}],1204:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),supplyDefaults:t("./defaults"),colorbar:t("../scatter/marker_colorbar"),formatLabels:t("./format_labels"),calc:t("../scattergeo/calc"),plot:t("./plot"),hoverPoints:t("./hover"),eventData:t("./event_data"),selectPoints:t("./select"),styleOnSelect:function(t,e){e&&e[0].trace._glTrace.update(e)},moduleType:"trace",name:"scattermapbox",basePlotModule:t("../../plots/mapbox"),categories:["mapbox","gl","symbols","showLegend","scatter-like"],meta:{}}},{"../../plots/mapbox":833,"../scatter/marker_colorbar":1152,"../scattergeo/calc":1176,"./attributes":1198,"./defaults":1200,"./event_data":1201,"./format_labels":1202,"./hover":1203,"./plot":1205,"./select":1206}],1205:[function(t,e,r){"use strict";var n=t("./convert"),a=t("../../plots/mapbox/constants").traceLayerPrefix,i=["fill","line","circle","symbol"];function o(t,e){this.type="scattermapbox",this.subplot=t,this.uid=e,this.sourceIds={fill:"source-"+e+"-fill",line:"source-"+e+"-line",circle:"source-"+e+"-circle",symbol:"source-"+e+"-symbol"},this.layerIds={fill:a+e+"-fill",line:a+e+"-line",circle:a+e+"-circle",symbol:a+e+"-symbol"},this.below=null}var s=o.prototype;s.addSource=function(t,e){this.subplot.map.addSource(this.sourceIds[t],{type:"geojson",data:e.geojson})},s.setSourceData=function(t,e){this.subplot.map.getSource(this.sourceIds[t]).setData(e.geojson)},s.addLayer=function(t,e,r){this.subplot.addLayer({type:t,id:this.layerIds[t],source:this.sourceIds[t],layout:e.layout,paint:e.paint},r)},s.update=function(t){var e,r,a,o=this.subplot,s=o.map,l=n(o.gd,t),c=o.belowLookup["trace-"+this.uid];if(c!==this.below){for(e=i.length-1;e>=0;e--)r=i[e],s.removeLayer(this.layerIds[r]);for(e=0;e<i.length;e++)a=l[r=i[e]],this.addLayer(r,a,c);this.below=c}for(e=0;e<i.length;e++)a=l[r=i[e]],o.setOptions(this.layerIds[r],"setLayoutProperty",a.layout),"visible"===a.layout.visibility&&(this.setSourceData(r,a),o.setOptions(this.layerIds[r],"setPaintProperty",a.paint));t[0].trace._glTrace=this},s.dispose=function(){for(var t=this.subplot.map,e=i.length-1;e>=0;e--){var r=i[e];t.removeLayer(this.layerIds[r]),t.removeSource(this.sourceIds[r])}},e.exports=function(t,e){for(var r=e[0].trace,a=new o(t,r.uid),s=n(t.gd,e),l=a.below=t.belowLookup["trace-"+r.uid],c=0;c<i.length;c++){var u=i[c],h=s[u];a.addSource(u,h),a.addLayer(u,h,l)}return e[0].trace._glTrace=a,a}},{"../../plots/mapbox/constants":831,"./convert":1199}],1206:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../scatter/subtypes"),i=t("../../constants/numerical").BADNUM;e.exports=function(t,e){var r,o=t.cd,s=t.xaxis,l=t.yaxis,c=[],u=o[0].trace;if(!a.hasMarkers(u))return[];if(!1===e)for(r=0;r<o.length;r++)o[r].selected=0;else for(r=0;r<o.length;r++){var h=o[r],f=h.lonlat;if(f[0]!==i){var p=[n.modHalf(f[0],360),f[1]],d=[s.c2p(p),l.c2p(p)];e.contains(d,null,r,t)?(c.push({pointNumber:r,lon:f[0],lat:f[1]}),h.selected=1):h.selected=0}}return c}},{"../../constants/numerical":704,"../../lib":728,"../scatter/subtypes":1158}],1207:[function(t,e,r){"use strict";var n=t("../../plots/template_attributes").hovertemplateAttrs,a=t("../../plots/template_attributes").texttemplateAttrs,i=t("../../lib/extend").extendFlat,o=t("../scatter/attributes"),s=t("../../plots/attributes"),l=o.line;e.exports={mode:o.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:o.text,texttemplate:a({editType:"plot"},{keys:["r","theta","text"]}),hovertext:o.hovertext,line:{color:l.color,width:l.width,dash:l.dash,shape:i({},l.shape,{values:["linear","spline"]}),smoothing:l.smoothing,editType:"calc"},connectgaps:o.connectgaps,marker:o.marker,cliponaxis:i({},o.cliponaxis,{dflt:!1}),textposition:o.textposition,textfont:o.textfont,fill:i({},o.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:o.fillcolor,hoverinfo:i({},s.hoverinfo,{flags:["r","theta","text","name"]}),hoveron:o.hoveron,hovertemplate:n(),selected:o.selected,unselected:o.unselected}},{"../../lib/extend":719,"../../plots/attributes":773,"../../plots/template_attributes":854,"../scatter/attributes":1134}],1208:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../../constants/numerical").BADNUM,i=t("../../plots/cartesian/axes"),o=t("../scatter/colorscale_calc"),s=t("../scatter/arrays_to_calcdata"),l=t("../scatter/calc_selection"),c=t("../scatter/calc").calcMarkerSize;e.exports=function(t,e){for(var r=t._fullLayout,u=e.subplot,h=r[u].radialaxis,f=r[u].angularaxis,p=h.makeCalcdata(e,"r"),d=f.makeCalcdata(e,"theta"),g=e._length,m=new Array(g),v=0;v<g;v++){var y=p[v],x=d[v],b=m[v]={};n(y)&&n(x)?(b.r=y,b.theta=x):b.r=a}var _=c(e,g);return e._extremes.x=i.findExtremes(h,p,{ppad:_}),o(t,e),s(m,e),l(m,e),m}},{"../../constants/numerical":704,"../../plots/cartesian/axes":776,"../scatter/arrays_to_calcdata":1133,"../scatter/calc":1135,"../scatter/calc_selection":1136,"../scatter/colorscale_calc":1137,"fast-isnumeric":236}],1209:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../scatter/subtypes"),i=t("../scatter/marker_defaults"),o=t("../scatter/line_defaults"),s=t("../scatter/line_shape_defaults"),l=t("../scatter/text_defaults"),c=t("../scatter/fillcolor_defaults"),u=t("../scatter/constants").PTS_LINESONLY,h=t("./attributes");function f(t,e,r,n){var a,i=n("r"),o=n("theta");if(i)o?a=Math.min(i.length,o.length):(a=i.length,n("theta0"),n("dtheta"));else{if(!o)return 0;a=e.theta.length,n("r0"),n("dr")}return e._length=a,a}e.exports={handleRThetaDefaults:f,supplyDefaults:function(t,e,r,p){function d(r,a){return n.coerce(t,e,h,r,a)}var g=f(t,e,p,d);if(g){d("thetaunit"),d("mode",g<u?"lines+markers":"lines"),d("text"),d("hovertext"),"fills"!==e.hoveron&&d("hovertemplate"),a.hasLines(e)&&(o(t,e,r,p,d),s(t,e,d),d("connectgaps")),a.hasMarkers(e)&&i(t,e,r,p,d,{gradient:!0}),a.hasText(e)&&(d("texttemplate"),l(t,e,p,d));var m=[];(a.hasMarkers(e)||a.hasText(e))&&(d("cliponaxis"),d("marker.maxdisplayed"),m.push("points")),d("fill"),"none"!==e.fill&&(c(t,e,r,d),a.hasLines(e)||s(t,e,d)),"tonext"!==e.fill&&"toself"!==e.fill||m.push("fills"),d("hoveron",m.join("+")||"points"),n.coerceSelectionMarkerOpacity(e,d)}else e.visible=!1}}},{"../../lib":728,"../scatter/constants":1138,"../scatter/fillcolor_defaults":1142,"../scatter/line_defaults":1147,"../scatter/line_shape_defaults":1149,"../scatter/marker_defaults":1153,"../scatter/subtypes":1158,"../scatter/text_defaults":1159,"./attributes":1207}],1210:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../plots/cartesian/axes");e.exports=function(t,e,r){var i,o,s={},l=r[e.subplot]._subplot;l?(i=l.radialAxis,o=l.angularAxis):(i=(l=r[e.subplot]).radialaxis,o=l.angularaxis);var c=i.c2l(t.r);s.rLabel=a.tickText(i,c,!0).text;var u="degrees"===o.thetaunit?n.rad2deg(t.theta):t.theta;return s.thetaLabel=a.tickText(o,u,!0).text,s}},{"../../lib":728,"../../plots/cartesian/axes":776}],1211:[function(t,e,r){"use strict";var n=t("../scatter/hover");function a(t,e,r,n){var a=r.radialAxis,i=r.angularAxis;a._hovertitle="r",i._hovertitle="\u03b8";var o={};o[e.subplot]={_subplot:r};var s=e._module.formatLabels(t,e,o);n.rLabel=s.rLabel,n.thetaLabel=s.thetaLabel;var l=t.hi||e.hoverinfo,c=[];function u(t,e){c.push(t._hovertitle+": "+e)}if(!e.hovertemplate){var h=l.split("+");-1!==h.indexOf("all")&&(h=["r","theta","text"]),-1!==h.indexOf("r")&&u(a,n.rLabel),-1!==h.indexOf("theta")&&u(i,n.thetaLabel),-1!==h.indexOf("text")&&n.text&&(c.push(n.text),delete n.text),n.extraText=c.join("<br>")}}e.exports={hoverPoints:function(t,e,r,i){var o=n(t,e,r,i);if(o&&!1!==o[0].index){var s=o[0];if(void 0===s.index)return o;var l=t.subplot,c=s.cd[s.index],u=s.trace;if(l.isPtInside(c))return s.xLabelVal=void 0,s.yLabelVal=void 0,a(c,u,l,s),s.hovertemplate=u.hovertemplate,o}},makeHoverPointText:a}},{"../scatter/hover":1145}],1212:[function(t,e,r){"use strict";e.exports={moduleType:"trace",name:"scatterpolar",basePlotModule:t("../../plots/polar"),categories:["polar","symbols","showLegend","scatter-like"],attributes:t("./attributes"),supplyDefaults:t("./defaults").supplyDefaults,colorbar:t("../scatter/marker_colorbar"),formatLabels:t("./format_labels"),calc:t("./calc"),plot:t("./plot"),style:t("../scatter/style").style,styleOnSelect:t("../scatter/style").styleOnSelect,hoverPoints:t("./hover").hoverPoints,selectPoints:t("../scatter/select"),meta:{}}},{"../../plots/polar":842,"../scatter/marker_colorbar":1152,"../scatter/select":1155,"../scatter/style":1157,"./attributes":1207,"./calc":1208,"./defaults":1209,"./format_labels":1210,"./hover":1211,"./plot":1213}],1213:[function(t,e,r){"use strict";var n=t("../scatter/plot"),a=t("../../constants/numerical").BADNUM;e.exports=function(t,e,r){for(var i=e.layers.frontplot.select("g.scatterlayer"),o={xaxis:e.xaxis,yaxis:e.yaxis,plot:e.framework,layerClipId:e._hasClipOnAxisFalse?e.clipIds.forTraces:null},s=e.radialAxis,l=e.angularAxis,c=0;c<r.length;c++)for(var u=r[c],h=0;h<u.length;h++){var f=u[h],p=f.r;if(p===a)f.x=f.y=a;else{var d=s.c2g(p),g=l.c2g(f.theta);f.x=d*Math.cos(g),f.y=d*Math.sin(g)}}n(t,o,r,i)}},{"../../constants/numerical":704,"../scatter/plot":1154}],1214:[function(t,e,r){"use strict";var n=t("../scatterpolar/attributes"),a=t("../scattergl/attributes"),i=t("../../plots/template_attributes").texttemplateAttrs;e.exports={mode:n.mode,r:n.r,theta:n.theta,r0:n.r0,dr:n.dr,theta0:n.theta0,dtheta:n.dtheta,thetaunit:n.thetaunit,text:n.text,texttemplate:i({editType:"plot"},{keys:["r","theta","text"]}),hovertext:n.hovertext,hovertemplate:n.hovertemplate,line:a.line,connectgaps:a.connectgaps,marker:a.marker,fill:a.fill,fillcolor:a.fillcolor,textposition:a.textposition,textfont:a.textfont,hoverinfo:n.hoverinfo,selected:n.selected,unselected:n.unselected}},{"../../plots/template_attributes":854,"../scattergl/attributes":1185,"../scatterpolar/attributes":1207}],1215:[function(t,e,r){"use strict";var n=t("../scatter/colorscale_calc"),a=t("../scatter/calc").calcMarkerSize,i=t("../scattergl/convert"),o=t("../../plots/cartesian/axes"),s=t("../scattergl/constants").TOO_MANY_POINTS;e.exports=function(t,e){var r=t._fullLayout,l=e.subplot,c=r[l].radialaxis,u=r[l].angularaxis,h=e._r=c.makeCalcdata(e,"r"),f=e._theta=u.makeCalcdata(e,"theta"),p=e._length,d={};p<h.length&&(h=h.slice(0,p)),p<f.length&&(f=f.slice(0,p)),d.r=h,d.theta=f,n(t,e);var g,m=d.opts=i.style(t,e);return p<s?g=a(e,p):m.marker&&(g=2*(m.marker.sizeAvg||Math.max(m.marker.size,3))),e._extremes.x=o.findExtremes(c,h,{ppad:g}),[{x:!1,y:!1,t:d,trace:e}]}},{"../../plots/cartesian/axes":776,"../scatter/calc":1135,"../scatter/colorscale_calc":1137,"../scattergl/constants":1187,"../scattergl/convert":1188}],1216:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../scatter/subtypes"),i=t("../scatterpolar/defaults").handleRThetaDefaults,o=t("../scatter/marker_defaults"),s=t("../scatter/line_defaults"),l=t("../scatter/text_defaults"),c=t("../scatter/fillcolor_defaults"),u=t("../scatter/constants").PTS_LINESONLY,h=t("./attributes");e.exports=function(t,e,r,f){function p(r,a){return n.coerce(t,e,h,r,a)}var d=i(t,e,f,p);d?(p("thetaunit"),p("mode",d<u?"lines+markers":"lines"),p("text"),p("hovertext"),"fills"!==e.hoveron&&p("hovertemplate"),a.hasLines(e)&&(s(t,e,r,f,p),p("connectgaps")),a.hasMarkers(e)&&o(t,e,r,f,p),a.hasText(e)&&(p("texttemplate"),l(t,e,f,p)),p("fill"),"none"!==e.fill&&c(t,e,r,p),n.coerceSelectionMarkerOpacity(e,p)):e.visible=!1}},{"../../lib":728,"../scatter/constants":1138,"../scatter/fillcolor_defaults":1142,"../scatter/line_defaults":1147,"../scatter/marker_defaults":1153,"../scatter/subtypes":1158,"../scatter/text_defaults":1159,"../scatterpolar/defaults":1209,"./attributes":1214}],1217:[function(t,e,r){"use strict";var n=t("../scatterpolar/format_labels");e.exports=function(t,e,r){var a=t.i;return"r"in t||(t.r=e._r[a]),"theta"in t||(t.theta=e._theta[a]),n(t,e,r)}},{"../scatterpolar/format_labels":1210}],1218:[function(t,e,r){"use strict";var n=t("../scattergl/hover"),a=t("../scatterpolar/hover").makeHoverPointText;e.exports={hoverPoints:function(t,e,r,i){var o=t.cd[0].t,s=o.r,l=o.theta,c=n.hoverPoints(t,e,r,i);if(c&&!1!==c[0].index){var u=c[0];if(void 0===u.index)return c;var h=t.subplot,f=u.cd[u.index],p=u.trace;if(f.r=s[u.index],f.theta=l[u.index],h.isPtInside(f))return u.xLabelVal=void 0,u.yLabelVal=void 0,a(f,p,h,u),c}}}},{"../scattergl/hover":1193,"../scatterpolar/hover":1211}],1219:[function(t,e,r){"use strict";e.exports={moduleType:"trace",name:"scatterpolargl",basePlotModule:t("../../plots/polar"),categories:["gl","regl","polar","symbols","showLegend","scatter-like"],attributes:t("./attributes"),supplyDefaults:t("./defaults"),colorbar:t("../scatter/marker_colorbar"),formatLabels:t("./format_labels"),calc:t("./calc"),plot:t("./plot"),hoverPoints:t("./hover").hoverPoints,selectPoints:t("../scattergl/select"),meta:{}}},{"../../plots/polar":842,"../scatter/marker_colorbar":1152,"../scattergl/select":1197,"./attributes":1214,"./calc":1215,"./defaults":1216,"./format_labels":1217,"./hover":1218,"./plot":1220}],1220:[function(t,e,r){"use strict";var n=t("point-cluster"),a=t("fast-isnumeric"),i=t("../scattergl/plot"),o=t("../scattergl/scene_update"),s=t("../scattergl/convert"),l=t("../../lib"),c=t("../scattergl/constants").TOO_MANY_POINTS;e.exports=function(t,e,r){if(r.length){var u=e.radialAxis,h=e.angularAxis,f=o(t,e);return r.forEach((function(r){if(r&&r[0]&&r[0].trace){var i,o=r[0],p=o.trace,d=o.t,g=p._length,m=d.r,v=d.theta,y=d.opts,x=m.slice(),b=v.slice();for(i=0;i<m.length;i++)e.isPtInside({r:m[i],theta:v[i]})||(x[i]=NaN,b[i]=NaN);var _=new Array(2*g),w=Array(g),T=Array(g);for(i=0;i<g;i++){var k,A,M=x[i];if(a(M)){var S=u.c2g(M),E=h.c2g(b[i],p.thetaunit);k=S*Math.cos(E),A=S*Math.sin(E)}else k=A=NaN;w[i]=_[2*i]=k,T[i]=_[2*i+1]=A}d.tree=n(_),y.marker&&g>=c&&(y.marker.cluster=d.tree),y.marker&&(y.markerSel.positions=y.markerUnsel.positions=y.marker.positions=_),y.line&&_.length>1&&l.extendFlat(y.line,s.linePositions(t,p,_)),y.text&&(l.extendFlat(y.text,{positions:_},s.textPosition(t,p,y.text,y.marker)),l.extendFlat(y.textSel,{positions:_},s.textPosition(t,p,y.text,y.markerSel)),l.extendFlat(y.textUnsel,{positions:_},s.textPosition(t,p,y.text,y.markerUnsel))),y.fill&&!f.fill2d&&(f.fill2d=!0),y.marker&&!f.scatter2d&&(f.scatter2d=!0),y.line&&!f.line2d&&(f.line2d=!0),y.text&&!f.glText&&(f.glText=!0),f.lineOptions.push(y.line),f.fillOptions.push(y.fill),f.markerOptions.push(y.marker),f.markerSelectedOptions.push(y.markerSel),f.markerUnselectedOptions.push(y.markerUnsel),f.textOptions.push(y.text),f.textSelectedOptions.push(y.textSel),f.textUnselectedOptions.push(y.textUnsel),f.selectBatch.push([]),f.unselectBatch.push([]),d.x=w,d.y=T,d.rawx=w,d.rawy=T,d.r=m,d.theta=v,d.positions=_,d._scene=f,d.index=f.count,f.count++}})),i(t,e,r)}}},{"../../lib":728,"../scattergl/constants":1187,"../scattergl/convert":1188,"../scattergl/plot":1195,"../scattergl/scene_update":1196,"fast-isnumeric":236,"point-cluster":467}],1221:[function(t,e,r){"use strict";var n=t("../../plots/template_attributes").hovertemplateAttrs,a=t("../../plots/template_attributes").texttemplateAttrs,i=t("../scatter/attributes"),o=t("../../plots/attributes"),s=t("../../components/colorscale/attributes"),l=t("../../components/drawing/attributes").dash,c=t("../../lib/extend").extendFlat,u=i.marker,h=i.line,f=u.line;e.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:c({},i.mode,{dflt:"markers"}),text:c({},i.text,{}),texttemplate:a({editType:"plot"},{keys:["a","b","c","text"]}),hovertext:c({},i.hovertext,{}),line:{color:h.color,width:h.width,dash:l,shape:c({},h.shape,{values:["linear","spline"]}),smoothing:h.smoothing,editType:"calc"},connectgaps:i.connectgaps,cliponaxis:i.cliponaxis,fill:c({},i.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:i.fillcolor,marker:c({symbol:u.symbol,opacity:u.opacity,maxdisplayed:u.maxdisplayed,size:u.size,sizeref:u.sizeref,sizemin:u.sizemin,sizemode:u.sizemode,line:c({width:f.width,editType:"calc"},s("marker.line")),gradient:u.gradient,editType:"calc"},s("marker")),textfont:i.textfont,textposition:i.textposition,selected:i.selected,unselected:i.unselected,hoverinfo:c({},o.hoverinfo,{flags:["a","b","c","text","name"]}),hoveron:i.hoveron,hovertemplate:n()}},{"../../components/colorscale/attributes":602,"../../components/drawing/attributes":616,"../../lib/extend":719,"../../plots/attributes":773,"../../plots/template_attributes":854,"../scatter/attributes":1134}],1222:[function(t,e,r){"use strict";var n=t("fast-isnumeric"),a=t("../scatter/colorscale_calc"),i=t("../scatter/arrays_to_calcdata"),o=t("../scatter/calc_selection"),s=t("../scatter/calc").calcMarkerSize,l=["a","b","c"],c={a:["b","c"],b:["a","c"],c:["a","b"]};e.exports=function(t,e){var r,u,h,f,p,d,g=t._fullLayout[e.subplot].sum,m=e.sum||g,v={a:e.a,b:e.b,c:e.c};for(r=0;r<l.length;r++)if(!v[h=l[r]]){for(p=v[c[h][0]],d=v[c[h][1]],f=new Array(p.length),u=0;u<p.length;u++)f[u]=m-p[u]-d[u];v[h]=f}var y,x,b,_,w,T,k=e._length,A=new Array(k);for(r=0;r<k;r++)y=v.a[r],x=v.b[r],b=v.c[r],n(y)&&n(x)&&n(b)?(1!==(_=g/((y=+y)+(x=+x)+(b=+b)))&&(y*=_,x*=_,b*=_),T=y,w=b-x,A[r]={x:w,y:T,a:y,b:x,c:b}):A[r]={x:!1,y:!1};return s(e,k),a(t,e),i(A,e),o(A,e),A}},{"../scatter/arrays_to_calcdata":1133,"../scatter/calc":1135,"../scatter/calc_selection":1136,"../scatter/colorscale_calc":1137,"fast-isnumeric":236}],1223:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../scatter/constants"),i=t("../scatter/subtypes"),o=t("../scatter/marker_defaults"),s=t("../scatter/line_defaults"),l=t("../scatter/line_shape_defaults"),c=t("../scatter/text_defaults"),u=t("../scatter/fillcolor_defaults"),h=t("./attributes");e.exports=function(t,e,r,f){function p(r,a){return n.coerce(t,e,h,r,a)}var d,g=p("a"),m=p("b"),v=p("c");if(g?(d=g.length,m?(d=Math.min(d,m.length),v&&(d=Math.min(d,v.length))):d=v?Math.min(d,v.length):0):m&&v&&(d=Math.min(m.length,v.length)),d){e._length=d,p("sum"),p("text"),p("hovertext"),"fills"!==e.hoveron&&p("hovertemplate"),p("mode",d<a.PTS_LINESONLY?"lines+markers":"lines"),i.hasLines(e)&&(s(t,e,r,f,p),l(t,e,p),p("connectgaps")),i.hasMarkers(e)&&o(t,e,r,f,p,{gradient:!0}),i.hasText(e)&&(p("texttemplate"),c(t,e,f,p));var y=[];(i.hasMarkers(e)||i.hasText(e))&&(p("cliponaxis"),p("marker.maxdisplayed"),y.push("points")),p("fill"),"none"!==e.fill&&(u(t,e,r,p),i.hasLines(e)||l(t,e,p)),"tonext"!==e.fill&&"toself"!==e.fill||y.push("fills"),p("hoveron",y.join("+")||"points"),n.coerceSelectionMarkerOpacity(e,p)}else e.visible=!1}},{"../../lib":728,"../scatter/constants":1138,"../scatter/fillcolor_defaults":1142,"../scatter/line_defaults":1147,"../scatter/line_shape_defaults":1149,"../scatter/marker_defaults":1153,"../scatter/subtypes":1158,"../scatter/text_defaults":1159,"./attributes":1221}],1224:[function(t,e,r){"use strict";e.exports=function(t,e,r,n,a){if(e.xa&&(t.xaxis=e.xa),e.ya&&(t.yaxis=e.ya),n[a]){var i=n[a];t.a=i.a,t.b=i.b,t.c=i.c}else t.a=e.a,t.b=e.b,t.c=e.c;return t}},{}],1225:[function(t,e,r){"use strict";var n=t("../../plots/cartesian/axes");e.exports=function(t,e,r){var a={},i=r[e.subplot]._subplot;return a.aLabel=n.tickText(i.aaxis,t.a,!0).text,a.bLabel=n.tickText(i.baxis,t.b,!0).text,a.cLabel=n.tickText(i.caxis,t.c,!0).text,a}},{"../../plots/cartesian/axes":776}],1226:[function(t,e,r){"use strict";var n=t("../scatter/hover");e.exports=function(t,e,r,a){var i=n(t,e,r,a);if(i&&!1!==i[0].index){var o=i[0];if(void 0===o.index){var s=1-o.y0/t.ya._length,l=t.xa._length,c=l*s/2,u=l-c;return o.x0=Math.max(Math.min(o.x0,u),c),o.x1=Math.max(Math.min(o.x1,u),c),i}var h=o.cd[o.index],f=o.trace,p=o.subplot;o.a=h.a,o.b=h.b,o.c=h.c,o.xLabelVal=void 0,o.yLabelVal=void 0;var d={};d[f.subplot]={_subplot:p};var g=f._module.formatLabels(h,f,d);o.aLabel=g.aLabel,o.bLabel=g.bLabel,o.cLabel=g.cLabel;var m=h.hi||f.hoverinfo,v=[];if(!f.hovertemplate){var y=m.split("+");-1!==y.indexOf("all")&&(y=["a","b","c"]),-1!==y.indexOf("a")&&x(p.aaxis,o.aLabel),-1!==y.indexOf("b")&&x(p.baxis,o.bLabel),-1!==y.indexOf("c")&&x(p.caxis,o.cLabel)}return o.extraText=v.join("<br>"),o.hovertemplate=f.hovertemplate,i}function x(t,e){v.push(t._hovertitle+": "+e)}}},{"../scatter/hover":1145}],1227:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),supplyDefaults:t("./defaults"),colorbar:t("../scatter/marker_colorbar"),formatLabels:t("./format_labels"),calc:t("./calc"),plot:t("./plot"),style:t("../scatter/style").style,styleOnSelect:t("../scatter/style").styleOnSelect,hoverPoints:t("./hover"),selectPoints:t("../scatter/select"),eventData:t("./event_data"),moduleType:"trace",name:"scatterternary",basePlotModule:t("../../plots/ternary"),categories:["ternary","symbols","showLegend","scatter-like"],meta:{}}},{"../../plots/ternary":855,"../scatter/marker_colorbar":1152,"../scatter/select":1155,"../scatter/style":1157,"./attributes":1221,"./calc":1222,"./defaults":1223,"./event_data":1224,"./format_labels":1225,"./hover":1226,"./plot":1228}],1228:[function(t,e,r){"use strict";var n=t("../scatter/plot");e.exports=function(t,e,r){var a=e.plotContainer;a.select(".scatterlayer").selectAll("*").remove();var i={xaxis:e.xaxis,yaxis:e.yaxis,plot:a,layerClipId:e._hasClipOnAxisFalse?e.clipIdRelative:null},o=e.layers.frontplot.select("g.scatterlayer");n(t,i,r,o)}},{"../scatter/plot":1154}],1229:[function(t,e,r){"use strict";var n=t("../scatter/attributes"),a=t("../../components/colorscale/attributes"),i=t("../../plots/template_attributes").hovertemplateAttrs,o=t("../scattergl/attributes"),s=t("../../plots/cartesian/constants").idRegex,l=t("../../plot_api/plot_template").templatedArray,c=t("../../lib/extend").extendFlat,u=n.marker,h=u.line,f=c(a("marker.line",{editTypeOverride:"calc"}),{width:c({},h.width,{editType:"calc"}),editType:"calc"}),p=c(a("marker"),{symbol:u.symbol,size:c({},u.size,{editType:"markerSize"}),sizeref:u.sizeref,sizemin:u.sizemin,sizemode:u.sizemode,opacity:u.opacity,colorbar:u.colorbar,line:f,editType:"calc"});function d(t){return{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"subplotid",regex:s[t],editType:"plot"}}}p.color.editType=p.cmin.editType=p.cmax.editType="style",e.exports={dimensions:l("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:c({},o.text,{}),hovertext:c({},o.hovertext,{}),hovertemplate:i(),marker:p,xaxes:d("x"),yaxes:d("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:o.selected.marker,editType:"calc"},unselected:{marker:o.unselected.marker,editType:"calc"},opacity:o.opacity}},{"../../components/colorscale/attributes":602,"../../lib/extend":719,"../../plot_api/plot_template":766,"../../plots/cartesian/constants":782,"../../plots/template_attributes":854,"../scatter/attributes":1134,"../scattergl/attributes":1185}],1230:[function(t,e,r){"use strict";var n=t("regl-line2d"),a=t("../../registry"),i=t("../../lib/prepare_regl"),o=t("../../plots/get_data").getModuleCalcData,s=t("../../plots/cartesian"),l=t("../../plots/cartesian/axis_ids").getFromId,c=t("../../plots/cartesian/axes").shouldShowZeroLine;function u(t,e,r){for(var n=r.matrixOptions.data.length,a=e._visibleDims,i=r.viewOpts.ranges=new Array(n),o=0;o<a.length;o++){var s=a[o],c=i[o]=new Array(4),u=l(t,e._diag[s][0]);u&&(c[0]=u.r2l(u.range[0]),c[2]=u.r2l(u.range[1]));var h=l(t,e._diag[s][1]);h&&(c[1]=h.r2l(h.range[0]),c[3]=h.r2l(h.range[1]))}r.selectBatch.length||r.unselectBatch.length?r.matrix.update({ranges:i},{ranges:i}):r.matrix.update({ranges:i})}function h(t){var e=t._fullLayout,r=e._glcanvas.data()[0].regl,a=e._splomGrid;a||(a=e._splomGrid=n(r)),a.update(function(t){var e,r=t._fullLayout,n=r._size,a=[0,0,r.width,r.height],i={};function o(t,e,r,n,o,s){var l=e[t+"color"],c=e[t+"width"],u=String(l+c);u in i?i[u].data.push(NaN,NaN,r,n,o,s):i[u]={data:[r,n,o,s],join:"rect",thickness:c,color:l,viewport:a,range:a,overlay:!1}}for(e in r._splomSubplots){var s,l,u=r._plots[e],h=u.xaxis,f=u.yaxis,p=h._gridVals,d=f._gridVals,g=n.b+f.domain[0]*n.h,m=-f._m,v=-m*f.r2l(f.range[0],f.calendar);if(h.showgrid)for(e=0;e<p.length;e++)s=h._offset+h.l2p(p[e].x),o("grid",h,s,g,s,g+f._length);if(f.showgrid)for(e=0;e<d.length;e++)l=g+v+m*d[e].x,o("grid",f,h._offset,l,h._offset+h._length,l);c(t,h,f)&&(s=h._offset+h.l2p(0),o("zeroline",h,s,g,s,g+f._length)),c(t,f,h)&&(l=g+v+0,o("zeroline",f,h._offset,l,h._offset+h._length,l))}var y=[];for(e in i)y.push(i[e]);return y}(t))}e.exports={name:"splom",attr:s.attr,attrRegex:s.attrRegex,layoutAttributes:s.layoutAttributes,supplyLayoutDefaults:s.supplyLayoutDefaults,drawFramework:s.drawFramework,plot:function(t){var e=t._fullLayout,r=a.getModule("splom"),n=o(t.calcdata,r)[0];i(t,["ANGLE_instanced_arrays","OES_element_index_uint"])&&(e._hasOnlyLargeSploms&&h(t),r.plot(t,{},n))},drag:function(t){var e=t.calcdata,r=t._fullLayout;r._hasOnlyLargeSploms&&h(t);for(var n=0;n<e.length;n++){var a=e[n][0].trace,i=r._splomScenes[a.uid];"splom"===a.type&&i&&i.matrix&&u(t,a,i)}},updateGrid:h,clean:function(t,e,r,n){var a,i={};if(n._splomScenes){for(a=0;a<t.length;a++){var o=t[a];"splom"===o.type&&(i[o.uid]=1)}for(a=0;a<r.length;a++){var l=r[a];if(!i[l.uid]){var c=n._splomScenes[l.uid];c&&c.destroy&&c.destroy(),n._splomScenes[l.uid]=null,delete n._splomScenes[l.uid]}}}0===Object.keys(n._splomScenes||{}).length&&delete n._splomScenes,n._splomGrid&&!e._hasOnlyLargeSploms&&n._hasOnlyLargeSploms&&(n._splomGrid.destroy(),n._splomGrid=null,delete n._splomGrid),s.clean(t,e,r,n)},updateFx:s.updateFx,toSVG:s.toSVG}},{"../../lib/prepare_regl":741,"../../plots/cartesian":789,"../../plots/cartesian/axes":776,"../../plots/cartesian/axis_ids":779,"../../plots/get_data":813,"../../registry":859,"regl-line2d":489}],1231:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../plots/cartesian/axis_ids"),i=t("../scatter/calc").calcMarkerSize,o=t("../scatter/calc").calcAxisExpansion,s=t("../scatter/colorscale_calc"),l=t("../scattergl/convert").markerSelection,c=t("../scattergl/convert").markerStyle,u=t("./scene_update"),h=t("../../constants/numerical").BADNUM,f=t("../scattergl/constants").TOO_MANY_POINTS;e.exports=function(t,e){var r,p,d,g,m,v,y=e.dimensions,x=e._length,b={},_=b.cdata=[],w=b.data=[],T=e._visibleDims=[];function k(t,r){for(var a=t.makeCalcdata({v:r.values,vcalendar:e.calendar},"v"),i=0;i<a.length;i++)a[i]=a[i]===h?NaN:a[i];_.push(a),w.push("log"===t.type?n.simpleMap(a,t.c2l):a)}for(r=0;r<y.length;r++)if((d=y[r]).visible){if(g=a.getFromId(t,e._diag[r][0]),m=a.getFromId(t,e._diag[r][1]),g&&m&&g.type!==m.type){n.log("Skipping splom dimension "+r+" with conflicting axis types");continue}g?(k(g,d),m&&"category"===m.type&&(m._categories=g._categories.slice())):k(m,d),T.push(r)}for(s(t,e),n.extendFlat(b,c(e)),v=_.length*x>f?2*(b.sizeAvg||Math.max(b.size,3)):i(e,x),p=0;p<T.length;p++)d=y[r=T[p]],g=a.getFromId(t,e._diag[r][0])||{},m=a.getFromId(t,e._diag[r][1])||{},o(t,e,g,m,_[p],_[p],v);var A=u(t,e);return A.matrix||(A.matrix=!0),A.matrixOptions=b,A.selectedOptions=l(e,e.selected),A.unselectedOptions=l(e,e.unselected),[{x:!1,y:!1,t:{},trace:e}]}},{"../../constants/numerical":704,"../../lib":728,"../../plots/cartesian/axis_ids":779,"../scatter/calc":1135,"../scatter/colorscale_calc":1137,"../scattergl/constants":1187,"../scattergl/convert":1188,"./scene_update":1238}],1232:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../plots/array_container_defaults"),i=t("./attributes"),o=t("../scatter/subtypes"),s=t("../scatter/marker_defaults"),l=t("../parcoords/merge_length"),c=t("../scattergl/helpers").isOpenSymbol;function u(t,e){function r(r,a){return n.coerce(t,e,i.dimensions,r,a)}r("label");var a=r("values");a&&a.length?r("visible"):e.visible=!1,r("axis.type"),r("axis.matches")}e.exports=function(t,e,r,h){function f(r,a){return n.coerce(t,e,i,r,a)}var p=a(t,e,{name:"dimensions",handleItemDefaults:u}),d=f("diagonal.visible"),g=f("showupperhalf"),m=f("showlowerhalf");if(l(e,p,"values")&&(d||g||m)){f("text"),f("hovertext"),f("hovertemplate"),s(t,e,r,h,f);var v=c(e.marker.symbol),y=o.isBubble(e);f("marker.line.width",v||y?1:0),function(t,e,r,n){var a,i,o=e.dimensions,s=o.length,l=e.showupperhalf,c=e.showlowerhalf,u=e.diagonal.visible,h=new Array(s),f=new Array(s);for(a=0;a<s;a++){var p=a?a+1:"";h[a]="x"+p,f[a]="y"+p}var d=n("xaxes",h),g=n("yaxes",f),m=e._diag=new Array(s);e._xaxes={},e._yaxes={};var v=[],y=[];function x(t,n,a,i){if(t){var o=t.charAt(0),s=r._splomAxes[o];if(e["_"+o+"axes"][t]=1,i.push(t),!(t in s)){var l=s[t]={};a&&(l.label=a.label||"",a.visible&&a.axis&&(a.axis.type&&(l.type=a.axis.type),a.axis.matches&&(l.matches=n)))}}}var b=!u&&!c,_=!u&&!l;for(e._axesDim={},a=0;a<s;a++){var w=o[a],T=0===a,k=a===s-1,A=T&&b||k&&_?void 0:d[a],M=T&&_||k&&b?void 0:g[a];x(A,M,w,v),x(M,A,w,y),m[a]=[A,M],e._axesDim[A]=a,e._axesDim[M]=a}for(a=0;a<v.length;a++)for(i=0;i<y.length;i++){var S=v[a]+y[i];a>i&&l||a<i&&c?r._splomSubplots[S]=1:a!==i||!u&&c&&l||(r._splomSubplots[S]=1)}(!c||!u&&l&&c)&&(r._splomGridDflt.xside="bottom",r._splomGridDflt.yside="left")}(0,e,h,f),n.coerceSelectionMarkerOpacity(e,f)}else e.visible=!1}},{"../../lib":728,"../../plots/array_container_defaults":772,"../parcoords/merge_length":1105,"../scatter/marker_defaults":1153,"../scatter/subtypes":1158,"../scattergl/helpers":1192,"./attributes":1229}],1233:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../scatter/colorscale_calc"),i=t("../scattergl/convert").markerStyle;e.exports=function(t,e){var r=e.trace,o=t._fullLayout._splomScenes[r.uid];if(o){a(t,r),n.extendFlat(o.matrixOptions,i(r));var s=n.extendFlat({},o.matrixOptions,o.viewOpts);o.matrix.update(s,null)}}},{"../../lib":728,"../scatter/colorscale_calc":1137,"../scattergl/convert":1188}],1234:[function(t,e,r){"use strict";r.getDimIndex=function(t,e){for(var r=e._id,n={x:0,y:1}[r.charAt(0)],a=t._visibleDims,i=0;i<a.length;i++){var o=a[i];if(t._diag[o][n]===r)return i}return!1}},{}],1235:[function(t,e,r){"use strict";var n=t("./helpers"),a=t("../scattergl/hover").calcHover;e.exports={hoverPoints:function(t,e,r){var i=t.cd[0].trace,o=t.scene.matrixOptions.cdata,s=t.xa,l=t.ya,c=s.c2p(e),u=l.c2p(r),h=t.distance,f=n.getDimIndex(i,s),p=n.getDimIndex(i,l);if(!1===f||!1===p)return[t];for(var d,g,m=o[f],v=o[p],y=h,x=0;x<m.length;x++){var b=m[x],_=v[x],w=s.c2p(b)-c,T=l.c2p(_)-u,k=Math.sqrt(w*w+T*T);k<y&&(y=g=k,d=x)}return t.index=d,t.distance=y,t.dxy=g,void 0===d?[t]:[a(t,m,v,i)]}}},{"../scattergl/hover":1193,"./helpers":1234}],1236:[function(t,e,r){"use strict";var n=t("../../registry"),a=t("../../components/grid");e.exports={moduleType:"trace",name:"splom",basePlotModule:t("./base_plot"),categories:["gl","regl","cartesian","symbols","showLegend","scatter-like"],attributes:t("./attributes"),supplyDefaults:t("./defaults"),colorbar:t("../scatter/marker_colorbar"),calc:t("./calc"),plot:t("./plot"),hoverPoints:t("./hover").hoverPoints,selectPoints:t("./select"),editStyle:t("./edit_style"),meta:{}},n.register(a)},{"../../components/grid":639,"../../registry":859,"../scatter/marker_colorbar":1152,"./attributes":1229,"./base_plot":1230,"./calc":1231,"./defaults":1232,"./edit_style":1233,"./hover":1235,"./plot":1237,"./select":1239}],1237:[function(t,e,r){"use strict";var n=t("regl-splom"),a=t("../../lib"),i=t("../../plots/cartesian/axis_ids"),o=t("../../components/dragelement/helpers").selectMode;function s(t,e){var r,s,l,c,u,h=t._fullLayout,f=h._size,p=e.trace,d=e.t,g=h._splomScenes[p.uid],m=g.matrixOptions,v=m.cdata,y=h._glcanvas.data()[0].regl,x=h.dragmode;if(0!==v.length){m.lower=p.showupperhalf,m.upper=p.showlowerhalf,m.diagonal=p.diagonal.visible;var b=p._visibleDims,_=v.length,w=g.viewOpts={};for(w.ranges=new Array(_),w.domains=new Array(_),u=0;u<b.length;u++){l=b[u];var T=w.ranges[u]=new Array(4),k=w.domains[u]=new Array(4);(r=i.getFromId(t,p._diag[l][0]))&&(T[0]=r._rl[0],T[2]=r._rl[1],k[0]=r.domain[0],k[2]=r.domain[1]),(s=i.getFromId(t,p._diag[l][1]))&&(T[1]=s._rl[0],T[3]=s._rl[1],k[1]=s.domain[0],k[3]=s.domain[1])}w.viewport=[f.l,f.b,f.w+f.l,f.h+f.b],!0===g.matrix&&(g.matrix=n(y));var A=h.clickmode.indexOf("select")>-1,M=!0;if(o(x)||!!p.selectedpoints||A){var S=p._length;if(p.selectedpoints){g.selectBatch=p.selectedpoints;var E=p.selectedpoints,C={};for(l=0;l<E.length;l++)C[E[l]]=!0;var L=[];for(l=0;l<S;l++)C[l]||L.push(l);g.unselectBatch=L}var P=d.xpx=new Array(_),I=d.ypx=new Array(_);for(u=0;u<b.length;u++){if(l=b[u],r=i.getFromId(t,p._diag[l][0]))for(P[u]=new Array(S),c=0;c<S;c++)P[u][c]=r.c2p(v[u][c]);if(s=i.getFromId(t,p._diag[l][1]))for(I[u]=new Array(S),c=0;c<S;c++)I[u][c]=s.c2p(v[u][c])}if(g.selectBatch.length||g.unselectBatch.length){var z=a.extendFlat({},m,g.unselectedOptions,w),O=a.extendFlat({},m,g.selectedOptions,w);g.matrix.update(z,O),M=!1}}else d.xpx=d.ypx=null;if(M){var D=a.extendFlat({},m,w);g.matrix.update(D,null)}}}e.exports=function(t,e,r){if(r.length)for(var n=0;n<r.length;n++)s(t,r[n][0])}},{"../../components/dragelement/helpers":613,"../../lib":728,"../../plots/cartesian/axis_ids":779,"regl-splom":491}],1238:[function(t,e,r){"use strict";var n=t("../../lib");e.exports=function(t,e){var r=t._fullLayout,a=e.uid,i=r._splomScenes;i||(i=r._splomScenes={});var o={dirty:!0,selectBatch:[],unselectBatch:[]},s=i[e.uid];return s||((s=i[a]=n.extendFlat({},o,{matrix:!1,selectBatch:[],unselectBatch:[]})).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||n.extendFlat(s,o),s}},{"../../lib":728}],1239:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../scatter/subtypes"),i=t("./helpers");e.exports=function(t,e){var r=t.cd,o=r[0].trace,s=r[0].t,l=t.scene,c=l.matrixOptions.cdata,u=t.xaxis,h=t.yaxis,f=[];if(!l)return f;var p=!a.hasMarkers(o)&&!a.hasText(o);if(!0!==o.visible||p)return f;var d=i.getDimIndex(o,u),g=i.getDimIndex(o,h);if(!1===d||!1===g)return f;var m=s.xpx[d],v=s.ypx[g],y=c[d],x=c[g],b=[],_=[];if(!1!==e&&!e.degenerate)for(var w=0;w<y.length;w++)e.contains([m[w],v[w]],null,w,t)?(b.push(w),f.push({pointNumber:w,x:y[w],y:x[w]})):_.push(w);var T=l.matrixOptions;return b.length||_.length?l.selectBatch.length||l.unselectBatch.length||l.matrix.update(l.unselectedOptions,n.extendFlat({},T,l.selectedOptions,l.viewOpts)):l.matrix.update(T,null),l.selectBatch=b,l.unselectBatch=_,f}},{"../../lib":728,"../scatter/subtypes":1158,"./helpers":1234}],1240:[function(t,e,r){"use strict";var n=t("../../components/colorscale/attributes"),a=t("../../plots/template_attributes").hovertemplateAttrs,i=t("../mesh3d/attributes"),o=t("../../plots/attributes"),s=t("../../lib/extend").extendFlat,l={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:a({editType:"calc"},{keys:["tubex","tubey","tubez","tubeu","tubev","tubew","norm","divergence"]}),showlegend:s({},o.showlegend,{dflt:!1})};s(l,n("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));["opacity","lightposition","lighting"].forEach((function(t){l[t]=i[t]})),l.hoverinfo=s({},o.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","divergence","text","name"],dflt:"x+y+z+norm+text+name"}),l.transforms=void 0,e.exports=l},{"../../components/colorscale/attributes":602,"../../lib/extend":719,"../../plots/attributes":773,"../../plots/template_attributes":854,"../mesh3d/attributes":1075}],1241:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../components/colorscale/calc");function i(t){var e,r,a,i,s,l,c,u,h,f,p,d,g=t._x,m=t._y,v=t._z,y=t._len,x=-1/0,b=1/0,_=-1/0,w=1/0,T=-1/0,k=1/0,A="";for(y&&(c=g[0],h=m[0],p=v[0]),y>1&&(u=g[y-1],f=m[y-1],d=v[y-1]),e=0;e<y;e++)x=Math.max(x,g[e]),b=Math.min(b,g[e]),_=Math.max(_,m[e]),w=Math.min(w,m[e]),T=Math.max(T,v[e]),k=Math.min(k,v[e]),i||g[e]===c||(i=!0,A+="x"),s||m[e]===h||(s=!0,A+="y"),l||v[e]===p||(l=!0,A+="z");i||(A+="x"),s||(A+="y"),l||(A+="z");var M=o(t._x),S=o(t._y),E=o(t._z);A=(A=(A=A.replace("x",(c>u?"-":"+")+"x")).replace("y",(h>f?"-":"+")+"y")).replace("z",(p>d?"-":"+")+"z");var C=function(){y=0,M=[],S=[],E=[]};(!y||y<M.length*S.length*E.length)&&C();var L=function(t){return"x"===t?g:"y"===t?m:v},P=function(t){return"x"===t?M:"y"===t?S:E},I=function(t){return t[y-1]<t[0]?-1:1},z=L(A[1]),O=L(A[3]),D=L(A[5]),R=P(A[1]).length,F=P(A[3]).length,B=P(A[5]).length,N=!1,j=function(t,e,r){return R*(F*t+e)+r},V=I(L(A[1])),U=I(L(A[3])),q=I(L(A[5]));for(e=0;e<B-1;e++){for(r=0;r<F-1;r++){for(a=0;a<R-1;a++){var H=j(e,r,a),G=j(e,r,a+1),Y=j(e,r+1,a),W=j(e+1,r,a);if(z[H]*V<z[G]*V&&O[H]*U<O[Y]*U&&D[H]*q<D[W]*q||(N=!0),N)break}if(N)break}if(N)break}return N&&(n.warn("Encountered arbitrary coordinates! Unable to input data grid."),C()),{xMin:b,yMin:w,zMin:k,xMax:x,yMax:_,zMax:T,Xs:M,Ys:S,Zs:E,len:y,fill:A}}function o(t){return n.distinctVals(t).vals}function s(t,e){if(void 0===e&&(e=t.length),n.isTypedArray(t))return t.subarray(0,e);for(var r=[],a=0;a<e;a++)r[a]=+t[a];return r}e.exports={calc:function(t,e){e._len=Math.min(e.u.length,e.v.length,e.w.length,e.x.length,e.y.length,e.z.length),e._u=s(e.u,e._len),e._v=s(e.v,e._len),e._w=s(e.w,e._len),e._x=s(e.x,e._len),e._y=s(e.y,e._len),e._z=s(e.z,e._len);var r=i(e);e._gridFill=r.fill,e._Xs=r.Xs,e._Ys=r.Ys,e._Zs=r.Zs,e._len=r.len;var n,o,l,c=0;e.starts&&(n=s(e.starts.x||[]),o=s(e.starts.y||[]),l=s(e.starts.z||[]),c=Math.min(n.length,o.length,l.length)),e._startsX=n||[],e._startsY=o||[],e._startsZ=l||[];var u,h=0,f=1/0;for(u=0;u<e._len;u++){var p=e._u[u],d=e._v[u],g=e._w[u],m=Math.sqrt(p*p+d*d+g*g);h=Math.max(h,m),f=Math.min(f,m)}for(a(t,e,{vals:[f,h],containerStr:"",cLetter:"c"}),u=0;u<c;u++){var v=n[u];r.xMax=Math.max(r.xMax,v),r.xMin=Math.min(r.xMin,v);var y=o[u];r.yMax=Math.max(r.yMax,y),r.yMin=Math.min(r.yMin,y);var x=l[u];r.zMax=Math.max(r.zMax,x),r.zMin=Math.min(r.zMin,x)}e._slen=c,e._normMax=h,e._xbnds=[r.xMin,r.xMax],e._ybnds=[r.yMin,r.yMax],e._zbnds=[r.zMin,r.zMax]},filter:s,processGrid:i}},{"../../components/colorscale/calc":603,"../../lib":728}],1242:[function(t,e,r){"use strict";var n=t("gl-streamtube3d"),a=n.createTubeMesh,i=t("../../lib"),o=t("../../lib/gl_format_color").parseColorScale,s=t("../../components/colorscale").extractOpts,l=t("../../plots/gl3d/zip3"),c={xaxis:0,yaxis:1,zaxis:2};function u(t,e){this.scene=t,this.uid=e,this.mesh=null,this.data=null}var h=u.prototype;function f(t){var e=t.length;return e>2?t.slice(1,e-1):2===e?[(t[0]+t[1])/2]:t}function p(t){var e=t.length;return 1===e?[.5,.5]:[t[1]-t[0],t[e-1]-t[e-2]]}function d(t,e){var r=t.fullSceneLayout,a=t.dataScale,u=e._len,h={};function d(t,e){var n=r[e],o=a[c[e]];return i.simpleMap(t,(function(t){return n.d2l(t)*o}))}if(h.vectors=l(d(e._u,"xaxis"),d(e._v,"yaxis"),d(e._w,"zaxis"),u),!u)return{positions:[],cells:[]};var g=d(e._Xs,"xaxis"),m=d(e._Ys,"yaxis"),v=d(e._Zs,"zaxis");if(h.meshgrid=[g,m,v],h.gridFill=e._gridFill,e._slen)h.startingPositions=l(d(e._startsX,"xaxis"),d(e._startsY,"yaxis"),d(e._startsZ,"zaxis"));else{for(var y=m[0],x=f(g),b=f(v),_=new Array(x.length*b.length),w=0,T=0;T<x.length;T++)for(var k=0;k<b.length;k++)_[w++]=[x[T],y,b[k]];h.startingPositions=_}h.colormap=o(e),h.tubeSize=e.sizeref,h.maxLength=e.maxdisplayed;var A=d(e._xbnds,"xaxis"),M=d(e._ybnds,"yaxis"),S=d(e._zbnds,"zaxis"),E=p(g),C=p(m),L=p(v),P=[[A[0]-E[0],M[0]-C[0],S[0]-L[0]],[A[1]+E[1],M[1]+C[1],S[1]+L[1]]],I=n(h,P),z=s(e);I.vertexIntensityBounds=[z.min/e._normMax,z.max/e._normMax];var O=e.lightposition;return I.lightPosition=[O.x,O.y,O.z],I.ambient=e.lighting.ambient,I.diffuse=e.lighting.diffuse,I.specular=e.lighting.specular,I.roughness=e.lighting.roughness,I.fresnel=e.lighting.fresnel,I.opacity=e.opacity,e._pad=I.tubeScale*e.sizeref*2,I}h.handlePick=function(t){var e=this.scene.fullSceneLayout,r=this.scene.dataScale;function n(t,n){var a=e[n],i=r[c[n]];return a.l2c(t)/i}if(t.object===this.mesh){var a=t.data.position,i=t.data.velocity;return t.traceCoordinate=[n(a[0],"xaxis"),n(a[1],"yaxis"),n(a[2],"zaxis"),n(i[0],"xaxis"),n(i[1],"yaxis"),n(i[2],"zaxis"),t.data.intensity*this.data._normMax,t.data.divergence],t.textLabel=this.data.hovertext||this.data.text,!0}},h.update=function(t){this.data=t;var e=d(this.scene,t);this.mesh.update(e)},h.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()},e.exports=function(t,e){var r=t.glplot.gl,n=d(t,e),i=a(r,n),o=new u(t,e.uid);return o.mesh=i,o.data=e,i._trace=o,t.glplot.add(i),o}},{"../../components/colorscale":607,"../../lib":728,"../../lib/gl_format_color":725,"../../plots/gl3d/zip3":829,"gl-streamtube3d":318}],1243:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../components/colorscale/defaults"),i=t("./attributes");e.exports=function(t,e,r,o){function s(r,a){return n.coerce(t,e,i,r,a)}var l=s("u"),c=s("v"),u=s("w"),h=s("x"),f=s("y"),p=s("z");l&&l.length&&c&&c.length&&u&&u.length&&h&&h.length&&f&&f.length&&p&&p.length?(s("starts.x"),s("starts.y"),s("starts.z"),s("maxdisplayed"),s("sizeref"),s("lighting.ambient"),s("lighting.diffuse"),s("lighting.specular"),s("lighting.roughness"),s("lighting.fresnel"),s("lightposition.x"),s("lightposition.y"),s("lightposition.z"),a(t,e,o,s,{prefix:"",cLetter:"c"}),s("text"),s("hovertext"),s("hovertemplate"),e._length=null):e.visible=!1}},{"../../components/colorscale/defaults":605,"../../lib":728,"./attributes":1240}],1244:[function(t,e,r){"use strict";e.exports={moduleType:"trace",name:"streamtube",basePlotModule:t("../../plots/gl3d"),categories:["gl3d","showLegend"],attributes:t("./attributes"),supplyDefaults:t("./defaults"),colorbar:{min:"cmin",max:"cmax"},calc:t("./calc").calc,plot:t("./convert"),eventData:function(t,e){return t.tubex=t.x,t.tubey=t.y,t.tubez=t.z,t.tubeu=e.traceCoordinate[3],t.tubev=e.traceCoordinate[4],t.tubew=e.traceCoordinate[5],t.norm=e.traceCoordinate[6],t.divergence=e.traceCoordinate[7],delete t.x,delete t.y,delete t.z,t},meta:{}}},{"../../plots/gl3d":818,"./attributes":1240,"./calc":1241,"./convert":1242,"./defaults":1243}],1245:[function(t,e,r){"use strict";var n=t("../../plots/attributes"),a=t("../../plots/template_attributes").hovertemplateAttrs,i=t("../../plots/template_attributes").texttemplateAttrs,o=t("../../components/colorscale/attributes"),s=t("../../plots/domain").attributes,l=t("../pie/attributes"),c=t("./constants"),u=t("../../lib/extend").extendFlat;e.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:u({colors:{valType:"data_array",editType:"calc"},line:{color:u({},l.marker.line.color,{dflt:null}),width:u({},l.marker.line.width,{dflt:1}),editType:"calc"},editType:"calc"},o("marker",{colorAttr:"colors",anim:!1})),leaf:{opacity:{valType:"number",editType:"style",min:0,max:1},editType:"plot"},text:l.text,textinfo:{valType:"flaglist",flags:["label","text","value","current path","percent root","percent entry","percent parent"],extras:["none"],editType:"plot"},texttemplate:i({editType:"plot"},{keys:c.eventDataKeys.concat(["label","value"])}),hovertext:l.hovertext,hoverinfo:u({},n.hoverinfo,{flags:["label","text","value","name","current path","percent root","percent entry","percent parent"],dflt:"label+text+value+name"}),hovertemplate:a({},{keys:c.eventDataKeys}),textfont:l.textfont,insidetextorientation:l.insidetextorientation,insidetextfont:l.insidetextfont,outsidetextfont:u({},l.outsidetextfont,{}),domain:s({name:"sunburst",trace:!0,editType:"calc"})}},{"../../components/colorscale/attributes":602,"../../lib/extend":719,"../../plots/attributes":773,"../../plots/domain":803,"../../plots/template_attributes":854,"../pie/attributes":1108,"./constants":1248}],1246:[function(t,e,r){"use strict";var n=t("../../plots/plots");r.name="sunburst",r.plot=function(t,e,a,i){n.plotBasePlot(r.name,t,e,a,i)},r.clean=function(t,e,a,i){n.cleanBasePlot(r.name,t,e,a,i)}},{"../../plots/plots":839}],1247:[function(t,e,r){"use strict";var n=t("d3-hierarchy"),a=t("fast-isnumeric"),i=t("../../lib"),o=t("../../components/colorscale").makeColorScaleFuncFromTrace,s=t("../pie/calc").makePullColorFn,l=t("../pie/calc").generateExtendedColors,c=t("../../components/colorscale").calc,u=t("../../constants/numerical").ALMOST_EQUAL,h={},f={};r.calc=function(t,e){var r,l,h,f,p,d,g=t._fullLayout,m=e.ids,v=i.isArrayOrTypedArray(m),y=e.labels,x=e.parents,b=e.values,_=i.isArrayOrTypedArray(b),w=[],T={},k={},A=function(t){return t||"number"==typeof t},M=function(t){return!_||a(b[t])&&b[t]>=0};v?(r=Math.min(m.length,x.length),l=function(t){return A(m[t])&&M(t)},h=function(t){return String(m[t])}):(r=Math.min(y.length,x.length),l=function(t){return A(y[t])&&M(t)},h=function(t){return String(y[t])}),_&&(r=Math.min(r,b.length));for(var S=0;S<r;S++)if(l(S)){var E=h(S),C=A(x[S])?String(x[S]):"",L={i:S,id:E,pid:C,label:A(y[S])?String(y[S]):""};_&&(L.v=+b[S]),w.push(L),p=E,T[f=C]?T[f].push(p):T[f]=[p],k[p]=1}if(T[""]){if(T[""].length>1){for(var P=i.randstr(),I=0;I<w.length;I++)""===w[I].pid&&(w[I].pid=P);w.unshift({hasMultipleRoots:!0,id:P,pid:"",label:""})}}else{var z,O=[];for(z in T)k[z]||O.push(z);if(1!==O.length)return i.warn("Multiple implied roots, cannot build "+e.type+" hierarchy.");z=O[0],w.unshift({hasImpliedRoot:!0,id:z,pid:"",label:z})}try{d=n.stratify().id((function(t){return t.id})).parentId((function(t){return t.pid}))(w)}catch(t){return i.warn("Failed to build "+e.type+" hierarchy. Error: "+t.message)}var D=n.hierarchy(d),R=!1;if(_)switch(e.branchvalues){case"remainder":D.sum((function(t){return t.data.v}));break;case"total":D.each((function(t){var e=t.data.data,r=e.v;if(t.children){var n=t.children.reduce((function(t,e){return t+e.data.data.v}),0);if((e.hasImpliedRoot||e.hasMultipleRoots)&&(r=n),r<n*u)return R=!0,i.warn(["Total value for node",t.data.data.id,"is smaller than the sum of its children.","\nparent value =",r,"\nchildren sum =",n].join(" "))}t.value=r}))}else!function t(e,r,n){var a=0,i=e.children;if(i){for(var o=i.length,s=0;s<o;s++)a+=t(i[s],r,n);n.branches&&a++}else n.leaves&&a++;e.value=e.data.data.value=a,r._values||(r._values=[]);return r._values[e.data.data.i]=a,a}(D,e,{branches:-1!==e.count.indexOf("branches"),leaves:-1!==e.count.indexOf("leaves")});if(!R){var F,B;D.sort((function(t,e){return e.value-t.value}));var N=e.marker.colors||[],j=!!N.length;return e._hasColorscale?(j||(N=_?e.values:e._values),c(t,e,{vals:N,containerStr:"marker",cLetter:"c"}),B=o(e.marker)):F=s(g["_"+e.type+"colormap"]),D.each((function(t){var r=t.data.data;r.color=e._hasColorscale?B(N[r.i]):F(N[r.i],r.id)})),w[0].hierarchy=D,w}},r._runCrossTraceCalc=function(t,e){var r=e._fullLayout,n=e.calcdata,a=r[t+"colorway"],i=r["_"+t+"colormap"];r["extend"+t+"colors"]&&(a=l(a,"treemap"===t?f:h));var o=0;function s(t){var e=t.data.data,r=e.id;!1===e.color&&(i[r]?e.color=i[r]:t.parent?t.parent.parent?e.color=t.parent.data.data.color:(i[r]=e.color=a[o%a.length],o++):e.color="rgba(0,0,0,0)")}for(var c=0;c<n.length;c++){var u=n[c][0];u.trace.type===t&&u.hierarchy&&u.hierarchy.each(s)}},r.crossTraceCalc=function(t){return r._runCrossTraceCalc("sunburst",t)}},{"../../components/colorscale":607,"../../constants/numerical":704,"../../lib":728,"../pie/calc":1110,"d3-hierarchy":158,"fast-isnumeric":236}],1248:[function(t,e,r){"use strict";e.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"linear",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"]}},{}],1249:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./attributes"),i=t("../../plots/domain").defaults,o=t("../bar/defaults").handleText,s=t("../../components/colorscale"),l=s.hasColorscale,c=s.handleDefaults;e.exports=function(t,e,r,s){function u(r,i){return n.coerce(t,e,a,r,i)}var h=u("labels"),f=u("parents");if(h&&h.length&&f&&f.length){var p=u("values");p&&p.length?u("branchvalues"):u("count"),u("level"),u("maxdepth"),u("marker.line.width")&&u("marker.line.color",s.paper_bgcolor),u("marker.colors");var d=e._hasColorscale=l(t,"marker","colors")||(t.marker||{}).coloraxis;d&&c(t,e,s,u,{prefix:"marker.",cLetter:"c"}),u("leaf.opacity",d?1:.7);var g=u("text");u("texttemplate"),e.texttemplate||u("textinfo",Array.isArray(g)?"text+label":"label"),u("hovertext"),u("hovertemplate");o(t,e,s,u,"auto",{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),u("insidetextorientation"),i(e,s,u),e._length=null}else e.visible=!1}},{"../../components/colorscale":607,"../../lib":728,"../../plots/domain":803,"../bar/defaults":873,"./attributes":1245}],1250:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../registry"),i=t("../../components/fx/helpers").appendArrayPointValue,o=t("../../components/fx"),s=t("../../lib"),l=t("../../lib/events"),c=t("./helpers"),u=t("../pie/helpers").formatPieValue;function h(t,e,r){for(var n=t.data.data,a={curveNumber:e.index,pointNumber:n.i,data:e._input,fullData:e},o=0;o<r.length;o++){var s=r[o];s in t&&(a[s]=t[s])}return"parentString"in t&&!c.isHierarchyRoot(t)&&(a.parent=t.parentString),i(a,e,n.i),a}e.exports=function(t,e,r,i,f){var p=i[0],d=p.trace,g=p.hierarchy,m="sunburst"===d.type,v="treemap"===d.type;"_hasHoverLabel"in d||(d._hasHoverLabel=!1),"_hasHoverEvent"in d||(d._hasHoverEvent=!1);t.on("mouseover",(function(a){var i=r._fullLayout;if(!r._dragging&&!1!==i.hovermode){var l=r._fullData[d.index],y=a.data.data,x=y.i,b=c.isHierarchyRoot(a),_=c.getParent(g,a),w=c.getValue(a),T=function(t){return s.castOption(l,x,t)},k=T("hovertemplate"),A=o.castHoverinfo(l,i,x),M=i.separators;if(k||A&&"none"!==A&&"skip"!==A){var S,E;m&&(S=p.cx+a.pxmid[0]*(1-a.rInscribed),E=p.cy+a.pxmid[1]*(1-a.rInscribed)),v&&(S=a._hoverX,E=a._hoverY);var C,L={},P=[],I=[],z=function(t){return-1!==P.indexOf(t)};A&&(P="all"===A?l._module.attributes.hoverinfo.flags:A.split("+")),L.label=y.label,z("label")&&L.label&&I.push(L.label),y.hasOwnProperty("v")&&(L.value=y.v,L.valueLabel=u(L.value,M),z("value")&&I.push(L.valueLabel)),L.currentPath=a.currentPath=c.getPath(a.data),z("current path")&&!b&&I.push(L.currentPath);var O=[],D=function(){-1===O.indexOf(C)&&(I.push(C),O.push(C))};L.percentParent=a.percentParent=w/c.getValue(_),L.parent=a.parentString=c.getPtLabel(_),z("percent parent")&&(C=c.formatPercent(L.percentParent,M)+" of "+L.parent,D()),L.percentEntry=a.percentEntry=w/c.getValue(e),L.entry=a.entry=c.getPtLabel(e),!z("percent entry")||b||a.onPathbar||(C=c.formatPercent(L.percentEntry,M)+" of "+L.entry,D()),L.percentRoot=a.percentRoot=w/c.getValue(g),L.root=a.root=c.getPtLabel(g),z("percent root")&&!b&&(C=c.formatPercent(L.percentRoot,M)+" of "+L.root,D()),L.text=T("hovertext")||T("text"),z("text")&&(C=L.text,s.isValidTextValue(C)&&I.push(C));var R={trace:l,y:E,text:I.join("<br>"),name:k||z("name")?l.name:void 0,color:T("hoverlabel.bgcolor")||y.color,borderColor:T("hoverlabel.bordercolor"),fontFamily:T("hoverlabel.font.family"),fontSize:T("hoverlabel.font.size"),fontColor:T("hoverlabel.font.color"),nameLength:T("hoverlabel.namelength"),textAlign:T("hoverlabel.align"),hovertemplate:k,hovertemplateLabels:L,eventData:[h(a,l,f.eventDataKeys)]};m&&(R.x0=S-a.rInscribed*a.rpx1,R.x1=S+a.rInscribed*a.rpx1,R.idealAlign=a.pxmid[0]<0?"left":"right"),v&&(R.x=S,R.idealAlign=S<0?"left":"right"),o.loneHover(R,{container:i._hoverlayer.node(),outerContainer:i._paper.node(),gd:r}),d._hasHoverLabel=!0}if(v){var F=t.select("path.surface");f.styleOne(F,a,l,{hovered:!0})}d._hasHoverEvent=!0,r.emit("plotly_hover",{points:[h(a,l,f.eventDataKeys)],event:n.event})}})),t.on("mouseout",(function(e){var a=r._fullLayout,i=r._fullData[d.index],s=n.select(this).datum();if(d._hasHoverEvent&&(e.originalEvent=n.event,r.emit("plotly_unhover",{points:[h(s,i,f.eventDataKeys)],event:n.event}),d._hasHoverEvent=!1),d._hasHoverLabel&&(o.loneUnhover(a._hoverlayer.node()),d._hasHoverLabel=!1),v){var l=t.select("path.surface");f.styleOne(l,s,i,{hovered:!1})}})),t.on("click",(function(t){var e=r._fullLayout,i=r._fullData[d.index],s=m&&(c.isHierarchyRoot(t)||c.isLeaf(t)),u=c.getPtId(t),p=c.isEntry(t)?c.findEntryWithChild(g,u):c.findEntryWithLevel(g,u),v=c.getPtId(p),y={points:[h(t,i,f.eventDataKeys)],event:n.event};s||(y.nextLevel=v);var x=l.triggerHandler(r,"plotly_"+d.type+"click",y);if(!1!==x&&e.hovermode&&(r._hoverdata=[h(t,i,f.eventDataKeys)],o.click(r,n.event)),!s&&!1!==x&&!r._dragging&&!r._transitioning){a.call("_storeDirectGUIEdit",i,e._tracePreGUI[i.uid],{level:i.level});var b={data:[{level:v}],traces:[d.index]},_={frame:{redraw:!1,duration:f.transitionTime},transition:{duration:f.transitionTime,easing:f.transitionEasing},mode:"immediate",fromcurrent:!0};o.loneUnhover(e._hoverlayer.node()),a.call("animate",r,b,_)}}))}},{"../../components/fx":635,"../../components/fx/helpers":631,"../../lib":728,"../../lib/events":718,"../../registry":859,"../pie/helpers":1113,"./helpers":1251,d3:164}],1251:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../components/color"),i=t("../../lib/setcursor"),o=t("../pie/helpers");function s(t){return t.data.data.pid}r.findEntryWithLevel=function(t,e){var n;return e&&t.eachAfter((function(t){if(r.getPtId(t)===e)return n=t.copy()})),n||t},r.findEntryWithChild=function(t,e){var n;return t.eachAfter((function(t){for(var a=t.children||[],i=0;i<a.length;i++){var o=a[i];if(r.getPtId(o)===e)return n=t.copy()}})),n||t},r.isEntry=function(t){return!t.parent},r.isLeaf=function(t){return!t.children},r.getPtId=function(t){return t.data.data.id},r.getPtLabel=function(t){return t.data.data.label},r.getValue=function(t){return t.value},r.isHierarchyRoot=function(t){return""===s(t)},r.setSliceCursor=function(t,e,n){var a=n.isTransitioning;if(!a){var o=t.datum();a=n.hideOnRoot&&r.isHierarchyRoot(o)||n.hideOnLeaves&&r.isLeaf(o)}i(t,a?null:"pointer")},r.getInsideTextFontKey=function(t,e,r,a,i){var o=(i||{}).onPathbar?"pathbar.textfont":"insidetextfont",s=r.data.data.i;return n.castOption(e,s,o+"."+t)||n.castOption(e,s,"textfont."+t)||a.size},r.getOutsideTextFontKey=function(t,e,r,a){var i=r.data.data.i;return n.castOption(e,i,"outsidetextfont."+t)||n.castOption(e,i,"textfont."+t)||a.size},r.isOutsideText=function(t,e){return!t._hasColorscale&&r.isHierarchyRoot(e)},r.determineTextFont=function(t,e,i,o){return r.isOutsideText(t,e)?function(t,e,n){return{color:r.getOutsideTextFontKey("color",t,e,n),family:r.getOutsideTextFontKey("family",t,e,n),size:r.getOutsideTextFontKey("size",t,e,n)}}(t,e,i):function(t,e,i,o){var s=(o||{}).onPathbar,l=e.data.data,c=l.i,u=n.castOption(t,c,(s?"pathbar.textfont":"insidetextfont")+".color");return!u&&t._input.textfont&&(u=n.castOption(t._input,c,"textfont.color")),{color:u||a.contrast(l.color),family:r.getInsideTextFontKey("family",t,e,i,o),size:r.getInsideTextFontKey("size",t,e,i,o)}}(t,e,i,o)},r.hasTransition=function(t){return!!(t&&t.duration>0)},r.getMaxDepth=function(t){return t.maxdepth>=0?t.maxdepth:1/0},r.isHeader=function(t,e){return!(r.isLeaf(t)||t.depth===e._maxDepth-1)},r.getParent=function(t,e){return r.findEntryWithLevel(t,s(e))},r.listPath=function(t,e){var n=t.parent;if(!n)return[];var a=e?[n.data[e]]:[n];return r.listPath(n,e).concat(a)},r.getPath=function(t){return r.listPath(t,"label").join("/")+"/"},r.formatValue=o.formatPieValue,r.formatPercent=function(t,e){var r=n.formatPercent(t,0);return"0%"===r&&(r=o.formatPiePercent(t,e)),r}},{"../../components/color":595,"../../lib":728,"../../lib/setcursor":748,"../pie/helpers":1113}],1252:[function(t,e,r){"use strict";e.exports={moduleType:"trace",name:"sunburst",basePlotModule:t("./base_plot"),categories:[],animatable:!0,attributes:t("./attributes"),layoutAttributes:t("./layout_attributes"),supplyDefaults:t("./defaults"),supplyLayoutDefaults:t("./layout_defaults"),calc:t("./calc").calc,crossTraceCalc:t("./calc").crossTraceCalc,plot:t("./plot").plot,style:t("./style").style,colorbar:t("../scatter/marker_colorbar"),meta:{}}},{"../scatter/marker_colorbar":1152,"./attributes":1245,"./base_plot":1246,"./calc":1247,"./defaults":1249,"./layout_attributes":1253,"./layout_defaults":1254,"./plot":1255,"./style":1256}],1253:[function(t,e,r){"use strict";e.exports={sunburstcolorway:{valType:"colorlist",editType:"calc"},extendsunburstcolors:{valType:"boolean",dflt:!0,editType:"calc"}}},{}],1254:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./layout_attributes");e.exports=function(t,e){function r(r,i){return n.coerce(t,e,a,r,i)}r("sunburstcolorway",e.colorway),r("extendsunburstcolors")}},{"../../lib":728,"./layout_attributes":1253}],1255:[function(t,e,r){"use strict";var n=t("d3"),a=t("d3-hierarchy"),i=t("../../components/drawing"),o=t("../../lib"),s=t("../../lib/svg_text_utils"),l=t("../bar/uniform_text"),c=l.recordMinTextSize,u=l.clearMinTextSize,h=t("../pie/plot"),f=h.computeTransform,p=h.transformInsideText,d=t("./style").styleOne,g=t("../bar/style").resizeText,m=t("./fx"),v=t("./constants"),y=t("./helpers");function x(t,e,l,u){var h=t._fullLayout,g=!h.uniformtext.mode&&y.hasTransition(u),x=n.select(l).selectAll("g.slice"),_=e[0],w=_.trace,T=_.hierarchy,k=y.findEntryWithLevel(T,w.level),A=y.getMaxDepth(w),M=h._size,S=w.domain,E=M.w*(S.x[1]-S.x[0]),C=M.h*(S.y[1]-S.y[0]),L=.5*Math.min(E,C),P=_.cx=M.l+M.w*(S.x[1]+S.x[0])/2,I=_.cy=M.t+M.h*(1-S.y[0])-C/2;if(!k)return x.remove();var z=null,O={};g&&x.each((function(t){O[y.getPtId(t)]={rpx0:t.rpx0,rpx1:t.rpx1,x0:t.x0,x1:t.x1,transform:t.transform},!z&&y.isEntry(t)&&(z=t)}));var D=function(t){return a.partition().size([2*Math.PI,t.height+1])(t)}(k).descendants(),R=k.height+1,F=0,B=A;_.hasMultipleRoots&&y.isHierarchyRoot(k)&&(D=D.slice(1),R-=1,F=1,B+=1),D=D.filter((function(t){return t.y1<=B}));var N=Math.min(R,A),j=function(t){return(t-F)/N*L},V=function(t,e){return[t*Math.cos(e),-t*Math.sin(e)]},U=function(t){return o.pathAnnulus(t.rpx0,t.rpx1,t.x0,t.x1,P,I)},q=function(t){return P+b(t)[0]*(t.transform.rCenter||0)+(t.transform.x||0)},H=function(t){return I+b(t)[1]*(t.transform.rCenter||0)+(t.transform.y||0)};(x=x.data(D,y.getPtId)).enter().append("g").classed("slice",!0),g?x.exit().transition().each((function(){var t=n.select(this);t.select("path.surface").transition().attrTween("d",(function(t){var e=function(t){var e,r=y.getPtId(t),a=O[r],i=O[y.getPtId(k)];if(i){var o=t.x1>i.x1?2*Math.PI:0;e=t.rpx1<i.rpx1?{rpx0:0,rpx1:0}:{x0:o,x1:o}}else{var s,l=y.getPtId(t.parent);x.each((function(t){if(y.getPtId(t)===l)return s=t}));var c,u=s.children;u.forEach((function(t,e){if(y.getPtId(t)===r)return c=e}));var h=u.length,f=n.interpolate(s.x0,s.x1);e={rpx0:L,rpx1:L,x0:f(c/h),x1:f((c+1)/h)}}return n.interpolate(a,e)}(t);return function(t){return U(e(t))}})),t.select("g.slicetext").attr("opacity",0)})).remove():x.exit().remove(),x.order();var G=null;if(g&&z){var Y=y.getPtId(z);x.each((function(t){null===G&&y.getPtId(t)===Y&&(G=t.x1)}))}var W=x;function Z(t){var e=t.parent,r=O[y.getPtId(e)],a={};if(r){var i=e.children,o=i.indexOf(t),s=i.length,l=n.interpolate(r.x0,r.x1);a.x0=l(o/s),a.x1=l(o/s)}else a.x0=a.x1=0;return a}g&&(W=W.transition().each("end",(function(){var e=n.select(this);y.setSliceCursor(e,t,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:!1})}))),W.each((function(a){var l=n.select(this),u=o.ensureSingle(l,"path","surface",(function(t){t.style("pointer-events","all")}));a.rpx0=j(a.y0),a.rpx1=j(a.y1),a.xmid=(a.x0+a.x1)/2,a.pxmid=V(a.rpx1,a.xmid),a.midangle=-(a.xmid-Math.PI/2),a.startangle=-(a.x0-Math.PI/2),a.stopangle=-(a.x1-Math.PI/2),a.halfangle=.5*Math.min(o.angleDelta(a.x0,a.x1)||Math.PI,Math.PI),a.ring=1-a.rpx0/a.rpx1,a.rInscribed=function(t){return 0===t.rpx0&&o.isFullCircle([t.x0,t.x1])?1:Math.max(0,Math.min(1/(1+1/Math.sin(t.halfangle)),t.ring/2))}(a),g?u.transition().attrTween("d",(function(t){var e=function(t){var e,r=O[y.getPtId(t)],a={x0:t.x0,x1:t.x1,rpx0:t.rpx0,rpx1:t.rpx1};if(r)e=r;else if(z)if(t.parent)if(G){var i=t.x1>G?2*Math.PI:0;e={x0:i,x1:i}}else e={rpx0:L,rpx1:L},o.extendFlat(e,Z(t));else e={rpx0:0,rpx1:0};else e={x0:0,x1:0};return n.interpolate(e,a)}(t);return function(t){return U(e(t))}})):u.attr("d",U),l.call(m,k,t,e,{eventDataKeys:v.eventDataKeys,transitionTime:v.CLICK_TRANSITION_TIME,transitionEasing:v.CLICK_TRANSITION_EASING}).call(y.setSliceCursor,t,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:t._transitioning}),u.call(d,a,w);var x=o.ensureSingle(l,"g","slicetext"),b=o.ensureSingle(x,"text","",(function(t){t.attr("data-notex",1)})),T=o.ensureUniformFontSize(t,y.determineTextFont(w,a,h.font));b.text(r.formatSliceLabel(a,k,w,e,h)).classed("slicetext",!0).attr("text-anchor","middle").call(i.font,T).call(s.convertToTspans,t);var A=i.bBox(b.node());a.transform=p(A,a,_),a.transform.targetX=q(a),a.transform.targetY=H(a);var M=function(t,e){var r=t.transform;return f(r,e),r.fontSize=T.size,c(w.type,r,h),o.getTextTransform(r)};g?b.transition().attrTween("transform",(function(t){var e=function(t){var e,r=O[y.getPtId(t)],a=t.transform;if(r)e=r;else if(e={rpx1:t.rpx1,transform:{textPosAngle:a.textPosAngle,scale:0,rotate:a.rotate,rCenter:a.rCenter,x:a.x,y:a.y}},z)if(t.parent)if(G){var i=t.x1>G?2*Math.PI:0;e.x0=e.x1=i}else o.extendFlat(e,Z(t));else e.x0=e.x1=0;else e.x0=e.x1=0;var s=n.interpolate(e.transform.textPosAngle,t.transform.textPosAngle),l=n.interpolate(e.rpx1,t.rpx1),u=n.interpolate(e.x0,t.x0),f=n.interpolate(e.x1,t.x1),p=n.interpolate(e.transform.scale,a.scale),d=n.interpolate(e.transform.rotate,a.rotate),g=0===a.rCenter?3:0===e.transform.rCenter?1/3:1,m=n.interpolate(e.transform.rCenter,a.rCenter);return function(t){var e=l(t),r=u(t),n=f(t),i=function(t){return m(Math.pow(t,g))}(t),o={pxmid:V(e,(r+n)/2),rpx1:e,transform:{textPosAngle:s(t),rCenter:i,x:a.x,y:a.y}};return c(w.type,a,h),{transform:{targetX:q(o),targetY:H(o),scale:p(t),rotate:d(t),rCenter:i}}}}(t);return function(t){return M(e(t),A)}})):b.attr("transform",M(a,A))}))}function b(t){return e=t.rpx1,r=t.transform.textPosAngle,[e*Math.sin(r),-e*Math.cos(r)];var e,r}r.plot=function(t,e,r,a){var i,o,s=t._fullLayout,l=s._sunburstlayer,c=!r,h=!s.uniformtext.mode&&y.hasTransition(r);(u("sunburst",s),(i=l.selectAll("g.trace.sunburst").data(e,(function(t){return t[0].trace.uid}))).enter().append("g").classed("trace",!0).classed("sunburst",!0).attr("stroke-linejoin","round"),i.order(),h)?(a&&(o=a()),n.transition().duration(r.duration).ease(r.easing).each("end",(function(){o&&o()})).each("interrupt",(function(){o&&o()})).each((function(){l.selectAll("g.trace").each((function(e){x(t,e,this,r)}))}))):(i.each((function(e){x(t,e,this,r)})),s.uniformtext.mode&&g(t,s._sunburstlayer.selectAll(".trace"),"sunburst"));c&&i.exit().remove()},r.formatSliceLabel=function(t,e,r,n,a){var i=r.texttemplate,s=r.textinfo;if(!(i||s&&"none"!==s))return"";var l=a.separators,c=n[0],u=t.data.data,h=c.hierarchy,f=y.isHierarchyRoot(t),p=y.getParent(h,t),d=y.getValue(t);if(!i){var g,m=s.split("+"),v=function(t){return-1!==m.indexOf(t)},x=[];if(v("label")&&u.label&&x.push(u.label),u.hasOwnProperty("v")&&v("value")&&x.push(y.formatValue(u.v,l)),!f){v("current path")&&x.push(y.getPath(t.data));var b=0;v("percent parent")&&b++,v("percent entry")&&b++,v("percent root")&&b++;var _=b>1;if(b){var w,T=function(t){g=y.formatPercent(w,l),_&&(g+=" of "+t),x.push(g)};v("percent parent")&&!f&&(w=d/y.getValue(p),T("parent")),v("percent entry")&&(w=d/y.getValue(e),T("entry")),v("percent root")&&(w=d/y.getValue(h),T("root"))}}return v("text")&&(g=o.castOption(r,u.i,"text"),o.isValidTextValue(g)&&x.push(g)),x.join("<br>")}var k=o.castOption(r,u.i,"texttemplate");if(!k)return"";var A={};u.label&&(A.label=u.label),u.hasOwnProperty("v")&&(A.value=u.v,A.valueLabel=y.formatValue(u.v,l)),A.currentPath=y.getPath(t.data),f||(A.percentParent=d/y.getValue(p),A.percentParentLabel=y.formatPercent(A.percentParent,l),A.parent=y.getPtLabel(p)),A.percentEntry=d/y.getValue(e),A.percentEntryLabel=y.formatPercent(A.percentEntry,l),A.entry=y.getPtLabel(e),A.percentRoot=d/y.getValue(h),A.percentRootLabel=y.formatPercent(A.percentRoot,l),A.root=y.getPtLabel(h),u.hasOwnProperty("color")&&(A.color=u.color);var M=o.castOption(r,u.i,"text");return(o.isValidTextValue(M)||""===M)&&(A.text=M),A.customdata=o.castOption(r,u.i,"customdata"),o.texttemplateString(k,A,a._d3locale,A,r._meta||{})}},{"../../components/drawing":617,"../../lib":728,"../../lib/svg_text_utils":752,"../bar/style":883,"../bar/uniform_text":885,"../pie/plot":1117,"./constants":1248,"./fx":1250,"./helpers":1251,"./style":1256,d3:164,"d3-hierarchy":158}],1256:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../components/color"),i=t("../../lib"),o=t("../bar/uniform_text").resizeText;function s(t,e,r){var n=e.data.data,o=!e.children,s=n.i,l=i.castOption(r,s,"marker.line.color")||a.defaultLine,c=i.castOption(r,s,"marker.line.width")||0;t.style("stroke-width",c).call(a.fill,n.color).call(a.stroke,l).style("opacity",o?r.leaf.opacity:null)}e.exports={style:function(t){var e=t._fullLayout._sunburstlayer.selectAll(".trace");o(t,e,"sunburst"),e.each((function(t){var e=n.select(this),r=t[0].trace;e.style("opacity",r.opacity),e.selectAll("path.surface").each((function(t){n.select(this).call(s,t,r)}))}))},styleOne:s}},{"../../components/color":595,"../../lib":728,"../bar/uniform_text":885,d3:164}],1257:[function(t,e,r){"use strict";var n=t("../../components/color"),a=t("../../components/colorscale/attributes"),i=t("../../plots/template_attributes").hovertemplateAttrs,o=t("../../plots/attributes"),s=t("../../lib/extend").extendFlat,l=t("../../plot_api/edit_types").overrideAll;function c(t){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:{valType:"boolean",dflt:!1},y:{valType:"boolean",dflt:!1},z:{valType:"boolean",dflt:!1}},color:{valType:"color",dflt:n.defaultLine},usecolormap:{valType:"boolean",dflt:!1},width:{valType:"number",min:1,max:16,dflt:2},highlight:{valType:"boolean",dflt:!0},highlightcolor:{valType:"color",dflt:n.defaultLine},highlightwidth:{valType:"number",min:1,max:16,dflt:2}}}var u=e.exports=l(s({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:i(),connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},surfacecolor:{valType:"data_array"}},a("",{colorAttr:"z or surfacecolor",showScaleDflt:!0,autoColorDflt:!1,editTypeOverride:"calc"}),{contours:{x:c(),y:c(),z:c()},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},roughness:{valType:"number",min:0,max:1,dflt:.5},fresnel:{valType:"number",min:0,max:5,dflt:.2}},opacity:{valType:"number",min:0,max:1,dflt:1},opacityscale:{valType:"any",editType:"calc"},_deprecated:{zauto:s({},a.zauto,{}),zmin:s({},a.zmin,{}),zmax:s({},a.zmax,{})},hoverinfo:s({},o.hoverinfo),showlegend:s({},o.showlegend,{dflt:!1})}),"calc","nested");u.x.editType=u.y.editType=u.z.editType="calc+clearAxisTypes",u.transforms=void 0},{"../../components/color":595,"../../components/colorscale/attributes":602,"../../lib/extend":719,"../../plot_api/edit_types":759,"../../plots/attributes":773,"../../plots/template_attributes":854}],1258:[function(t,e,r){"use strict";var n=t("../../components/colorscale/calc");e.exports=function(t,e){e.surfacecolor?n(t,e,{vals:e.surfacecolor,containerStr:"",cLetter:"c"}):n(t,e,{vals:e.z,containerStr:"",cLetter:"c"})}},{"../../components/colorscale/calc":603}],1259:[function(t,e,r){"use strict";var n=t("gl-surface3d"),a=t("ndarray"),i=t("ndarray-linear-interpolate").d2,o=t("../heatmap/interp2d"),s=t("../heatmap/find_empties"),l=t("../../lib").isArrayOrTypedArray,c=t("../../lib/gl_format_color").parseColorScale,u=t("../../lib/str2rgbarray"),h=t("../../components/colorscale").extractOpts;function f(t,e,r){this.scene=t,this.uid=r,this.surface=e,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 p=f.prototype;p.getXat=function(t,e,r,n){var a=l(this.data.x)?l(this.data.x[0])?this.data.x[e][t]:this.data.x[t]:t;return void 0===r?a:n.d2l(a,0,r)},p.getYat=function(t,e,r,n){var a=l(this.data.y)?l(this.data.y[0])?this.data.y[e][t]:this.data.y[e]:e;return void 0===r?a:n.d2l(a,0,r)},p.getZat=function(t,e,r,n){var a=this.data.z[e][t];return null===a&&this.data.connectgaps&&this.data._interpolatedZ&&(a=this.data._interpolatedZ[e][t]),void 0===r?a:n.d2l(a,0,r)},p.handlePick=function(t){if(t.object===this.surface){var e=(t.data.index[0]-1)/this.dataScaleX-1,r=(t.data.index[1]-1)/this.dataScaleY-1,n=Math.max(Math.min(Math.round(e),this.data.z[0].length-1),0),a=Math.max(Math.min(Math.round(r),this.data._ylength-1),0);t.index=[n,a],t.traceCoordinate=[this.getXat(n,a),this.getYat(n,a),this.getZat(n,a)],t.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 i=0;i<3;i++){var o=t.dataCoordinate[i];null!=o&&(t.dataCoordinate[i]*=this.scene.dataScale[i])}var s=this.data.hovertext||this.data.text;return Array.isArray(s)&&s[a]&&void 0!==s[a][n]?t.textLabel=s[a][n]:t.textLabel=s||"",t.data.dataCoordinate=t.dataCoordinate.slice(),this.surface.highlight(t.data),this.scene.glplot.spikes.position=t.dataCoordinate,!0}};var d=[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 g(t,e){if(t<e)return 0;for(var r=0;0===Math.floor(t%e);)t/=e,r++;return r}function m(t){for(var e=[],r=0;r<d.length;r++){var n=d[r];e.push(g(t,n))}return e}function v(t){for(var e=m(t),r=t,n=0;n<d.length;n++)if(e[n]>0){r=d[n];break}return r}function y(t,e){if(!(t<1||e<1)){for(var r=m(t),n=m(e),a=1,i=0;i<d.length;i++)a*=Math.pow(d[i],Math.max(r[i],n[i]));return a}}p.calcXnums=function(t){var e,r=[];for(e=1;e<t;e++){var n=this.getXat(e-1,0),a=this.getXat(e,0);r[e-1]=a!==n&&null!=n&&null!=a?Math.abs(a-n):0}var i=0;for(e=1;e<t;e++)i+=r[e-1];for(e=1;e<t;e++)0===r[e-1]?r[e-1]=1:r[e-1]=Math.round(i/r[e-1]);return r},p.calcYnums=function(t){var e,r=[];for(e=1;e<t;e++){var n=this.getYat(0,e-1),a=this.getYat(0,e);r[e-1]=a!==n&&null!=n&&null!=a?Math.abs(a-n):0}var i=0;for(e=1;e<t;e++)i+=r[e-1];for(e=1;e<t;e++)0===r[e-1]?r[e-1]=1:r[e-1]=Math.round(i/r[e-1]);return r};var x=[1,2,4,6,12,24,36,48,60,120,180,240,360,720,840,1260],b=x[9],_=x[13];function w(t,e,r){var n=r[8]+r[2]*e[0]+r[5]*e[1];return t[0]=(r[6]+r[0]*e[0]+r[3]*e[1])/n,t[1]=(r[7]+r[1]*e[0]+r[4]*e[1])/n,t}function T(t,e,r){return function(t,e,r,n){for(var a=[0,0],o=t.shape[0],s=t.shape[1],l=0;l<o;l++)for(var c=0;c<s;c++)r(a,[l,c],n),t.set(l,c,i(e,a[0],a[1]))}(t,e,w,r),t}function k(t,e){for(var r=!1,n=0;n<t.length;n++)if(e===t[n]){r=!0;break}!1===r&&t.push(e)}p.estimateScale=function(t,e){for(var r=1+function(t){if(0!==t.length){for(var e=1,r=0;r<t.length;r++)e=y(e,t[r]);return e}}(0===e?this.calcXnums(t):this.calcYnums(t));r<b;)r*=2;for(;r>_;)r--,r/=v(r),++r<b&&(r=_);var n=Math.round(r/t);return n>1?n:1},p.refineCoords=function(t){for(var e=this.dataScaleX,r=this.dataScaleY,n=t[0].shape[0],i=t[0].shape[1],o=0|Math.floor(t[0].shape[0]*e+1),s=0|Math.floor(t[0].shape[1]*r+1),l=1+n+1,c=1+i+1,u=a(new Float32Array(l*c),[l,c]),h=[1/e,0,0,0,1/r,0,0,0,1],f=0;f<t.length;++f){this.surface.padField(u,t[f]);var p=a(new Float32Array(o*s),[o,s]);T(p,u,h),t[f]=p}},p.setContourLevels=function(){var t,e,r,n=[[],[],[]],a=[!1,!1,!1],i=!1;for(t=0;t<3;++t)if(this.showContour[t]&&(i=!0,this.contourSize[t]>0&&null!==this.contourStart[t]&&null!==this.contourEnd[t]&&this.contourEnd[t]>this.contourStart[t]))for(a[t]=!0,e=this.contourStart[t];e<this.contourEnd[t];e+=this.contourSize[t])r=e*this.scene.dataScale[t],k(n[t],r);if(i){var o=[[],[],[]];for(t=0;t<3;++t)this.showContour[t]&&(o[t]=a[t]?n[t]:this.scene.contourLevels[t]);this.surface.update({levels:o})}},p.update=function(t){var e,r,n,i,l=this.scene,f=l.fullSceneLayout,p=this.surface,d=t.opacity,g=c(t,d),m=l.dataScale,v=t.z[0].length,y=t._ylength,x=l.contourLevels;this.data=t;var b=[];for(e=0;e<3;e++)for(b[e]=[],r=0;r<v;r++)b[e][r]=[];for(r=0;r<v;r++)for(n=0;n<y;n++)b[0][r][n]=this.getXat(r,n,t.xcalendar,f.xaxis),b[1][r][n]=this.getYat(r,n,t.ycalendar,f.yaxis),b[2][r][n]=this.getZat(r,n,t.zcalendar,f.zaxis);if(t.connectgaps)for(t._emptypoints=s(b[2]),o(b[2],t._emptypoints),t._interpolatedZ=[],r=0;r<v;r++)for(t._interpolatedZ[r]=[],n=0;n<y;n++)t._interpolatedZ[r][n]=b[2][r][n];for(e=0;e<3;e++)for(r=0;r<v;r++)for(n=0;n<y;n++)null==(i=b[e][r][n])?b[e][r][n]=NaN:i=b[e][r][n]*=m[e];for(e=0;e<3;e++)for(r=0;r<v;r++)for(n=0;n<y;n++)null!=(i=b[e][r][n])&&(this.minValues[e]>i&&(this.minValues[e]=i),this.maxValues[e]<i&&(this.maxValues[e]=i));for(e=0;e<3;e++)this.objectOffset[e]=.5*(this.minValues[e]+this.maxValues[e]);for(e=0;e<3;e++)for(r=0;r<v;r++)for(n=0;n<y;n++)null!=(i=b[e][r][n])&&(b[e][r][n]-=this.objectOffset[e]);var w=[a(new Float32Array(v*y),[v,y]),a(new Float32Array(v*y),[v,y]),a(new Float32Array(v*y),[v,y])];for(e=0;e<3;e++)for(r=0;r<v;r++)for(n=0;n<y;n++)w[e].set(r,n,b[e][r][n]);b=[];var T={colormap:g,levels:[[],[],[]],showContour:[!0,!0,!0],showSurface:!t.hidesurface,contourProject:[[!1,!1,!1],[!1,!1,!1],[!1,!1,!1]],contourWidth:[1,1,1],contourColor:[[1,1,1,1],[1,1,1,1],[1,1,1,1]],contourTint:[1,1,1],dynamicColor:[[1,1,1,1],[1,1,1,1],[1,1,1,1]],dynamicWidth:[1,1,1],dynamicTint:[1,1,1],opacityscale:t.opacityscale,opacity:t.opacity},k=h(t);if(T.intensityBounds=[k.min,k.max],t.surfacecolor){var A=a(new Float32Array(v*y),[v,y]);for(r=0;r<v;r++)for(n=0;n<y;n++)A.set(r,n,t.surfacecolor[n][r]);w.push(A)}else T.intensityBounds[0]*=m[2],T.intensityBounds[1]*=m[2];(_<w[0].shape[0]||_<w[0].shape[1])&&(this.refineData=!1),!0===this.refineData&&(this.dataScaleX=this.estimateScale(w[0].shape[0],0),this.dataScaleY=this.estimateScale(w[0].shape[1],1),1===this.dataScaleX&&1===this.dataScaleY||this.refineCoords(w)),t.surfacecolor&&(T.intensity=w.pop());var M=[!0,!0,!0],S=["x","y","z"];for(e=0;e<3;++e){var E=t.contours[S[e]];M[e]=E.highlight,T.showContour[e]=E.show||E.highlight,T.showContour[e]&&(T.contourProject[e]=[E.project.x,E.project.y,E.project.z],E.show?(this.showContour[e]=!0,T.levels[e]=x[e],p.highlightColor[e]=T.contourColor[e]=u(E.color),E.usecolormap?p.highlightTint[e]=T.contourTint[e]=0:p.highlightTint[e]=T.contourTint[e]=1,T.contourWidth[e]=E.width,this.contourStart[e]=E.start,this.contourEnd[e]=E.end,this.contourSize[e]=E.size):(this.showContour[e]=!1,this.contourStart[e]=null,this.contourEnd[e]=null,this.contourSize[e]=0),E.highlight&&(T.dynamicColor[e]=u(E.highlightcolor),T.dynamicWidth[e]=E.highlightwidth))}(function(t){var e=t[0].rgb,r=t[t.length-1].rgb;return e[0]===r[0]&&e[1]===r[1]&&e[2]===r[2]&&e[3]===r[3]})(g)&&(T.vertexColor=!0),T.objectOffset=this.objectOffset,T.coords=w,p.update(T),p.visible=t.visible,p.enableDynamic=M,p.enableHighlight=M,p.snapToData=!0,"lighting"in t&&(p.ambientLight=t.lighting.ambient,p.diffuseLight=t.lighting.diffuse,p.specularLight=t.lighting.specular,p.roughness=t.lighting.roughness,p.fresnel=t.lighting.fresnel),"lightposition"in t&&(p.lightPosition=[t.lightposition.x,t.lightposition.y,t.lightposition.z]),d&&d<1&&(p.supportsTransparency=!0)},p.dispose=function(){this.scene.glplot.remove(this.surface),this.surface.dispose()},e.exports=function(t,e){var r=t.glplot.gl,a=n({gl:r}),i=new f(t,a,e.uid);return a._trace=i,i.update(e),t.glplot.add(a),i}},{"../../components/colorscale":607,"../../lib":728,"../../lib/gl_format_color":725,"../../lib/str2rgbarray":751,"../heatmap/find_empties":1019,"../heatmap/interp2d":1022,"gl-surface3d":320,ndarray:448,"ndarray-linear-interpolate":442}],1260:[function(t,e,r){"use strict";var n=t("../../registry"),a=t("../../lib"),i=t("../../components/colorscale/defaults"),o=t("./attributes");function s(t,e,r,n){var a=n("opacityscale");"max"===a?e.opacityscale=[[0,.1],[1,1]]:"min"===a?e.opacityscale=[[0,1],[1,.1]]:"extremes"===a?e.opacityscale=function(t,e){for(var r=[],n=0;n<32;n++){var a=n/31,i=e+(1-e)*(1-Math.pow(Math.sin(t*a*Math.PI),2));r.push([a,Math.max(0,Math.min(1,i))])}return r}(1,.1):function(t){var e=0;if(!Array.isArray(t)||t.length<2)return!1;if(!t[0]||!t[t.length-1])return!1;if(0!=+t[0][0]||1!=+t[t.length-1][0])return!1;for(var r=0;r<t.length;r++){var n=t[r];if(2!==n.length||+n[0]<e)return!1;e=+n[0]}return!0}(a)||(e.opacityscale=void 0)}function l(t,e,r){e in t&&!(r in t)&&(t[r]=t[e])}e.exports={supplyDefaults:function(t,e,r,c){var u,h;function f(r,n){return a.coerce(t,e,o,r,n)}var p=f("x"),d=f("y"),g=f("z");if(!g||!g.length||p&&p.length<1||d&&d.length<1)e.visible=!1;else{e._xlength=Array.isArray(p)&&a.isArrayOrTypedArray(p[0])?g.length:g[0].length,e._ylength=g.length,n.getComponentMethod("calendars","handleTraceDefaults")(t,e,["x","y","z"],c),f("text"),f("hovertext"),f("hovertemplate"),["lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lightposition.x","lightposition.y","lightposition.z","hidesurface","connectgaps","opacity"].forEach((function(t){f(t)}));var m=f("surfacecolor"),v=["x","y","z"];for(u=0;u<3;++u){var y="contours."+v[u],x=f(y+".show"),b=f(y+".highlight");if(x||b)for(h=0;h<3;++h)f(y+".project."+v[h]);x&&(f(y+".color"),f(y+".width"),f(y+".usecolormap")),b&&(f(y+".highlightcolor"),f(y+".highlightwidth")),f(y+".start"),f(y+".end"),f(y+".size")}m||(l(t,"zmin","cmin"),l(t,"zmax","cmax"),l(t,"zauto","cauto")),i(t,e,c,f,{prefix:"",cLetter:"c"}),s(t,e,c,f),e._length=null}},opacityscaleDefaults:s}},{"../../components/colorscale/defaults":605,"../../lib":728,"../../registry":859,"./attributes":1257}],1261:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),supplyDefaults:t("./defaults").supplyDefaults,colorbar:{min:"cmin",max:"cmax"},calc:t("./calc"),plot:t("./convert"),moduleType:"trace",name:"surface",basePlotModule:t("../../plots/gl3d"),categories:["gl3d","2dMap","showLegend"],meta:{}}},{"../../plots/gl3d":818,"./attributes":1257,"./calc":1258,"./convert":1259,"./defaults":1260}],1262:[function(t,e,r){"use strict";var n=t("../../components/annotations/attributes"),a=t("../../lib/extend").extendFlat,i=t("../../plot_api/edit_types").overrideAll,o=t("../../plots/font_attributes"),s=t("../../plots/domain").attributes;t("../../constants/docs").FORMAT_LINK;(e.exports=i({domain:s({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:[]},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:28},align:a({},n.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:a({},o({arrayOk:!0}))},cells:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[]},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:20},align:a({},n.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:a({},o({arrayOk:!0}))}},"calc","from-root")).transforms=void 0},{"../../components/annotations/attributes":578,"../../constants/docs":699,"../../lib/extend":719,"../../plot_api/edit_types":759,"../../plots/domain":803,"../../plots/font_attributes":804}],1263:[function(t,e,r){"use strict";var n=t("../../plots/get_data").getModuleCalcData,a=t("./plot");r.name="table",r.plot=function(t){var e=n(t.calcdata,"table")[0];e.length&&a(t,e)},r.clean=function(t,e,r,n){var a=n._has&&n._has("table"),i=e._has&&e._has("table");a&&!i&&n._paperdiv.selectAll(".table").remove()}},{"../../plots/get_data":813,"./plot":1270}],1264:[function(t,e,r){"use strict";var n=t("../../lib/gup").wrap;e.exports=function(){return n({})}},{"../../lib/gup":726}],1265:[function(t,e,r){"use strict";e.exports={cellPad:8,columnExtentOffset:10,columnTitleOffset:28,emptyHeaderHeight:16,latexCheck:/^\$.*\$$/,goldenRatio:1.618,lineBreaker:"<br>",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"}}},{}],1266:[function(t,e,r){"use strict";var n=t("./constants"),a=t("../../lib/extend").extendFlat,i=t("fast-isnumeric");function o(t){if(Array.isArray(t)){for(var e=0,r=0;r<t.length;r++)e=Math.max(e,o(t[r]));return e}return t}function s(t,e){return t+e}function l(t){var e,r=t.slice(),n=1/0,a=0;for(e=0;e<r.length;e++)Array.isArray(r[e])||(r[e]=[r[e]]),n=Math.min(n,r[e].length),a=Math.max(a,r[e].length);if(n!==a)for(e=0;e<r.length;e++){var i=a-r[e].length;i&&(r[e]=r[e].concat(c(i)))}return r}function c(t){for(var e=new Array(t),r=0;r<t;r++)e[r]="";return e}function u(t){return t.calcdata.columns.reduce((function(e,r){return r.xIndex<t.xIndex?e+r.columnWidth:e}),0)}function h(t,e){return Object.keys(t).map((function(r){return a({},t[r],{auxiliaryBlocks:e})}))}function f(t,e){for(var r,n={},a=0,i=0,o={firstRowIndex:null,lastRowIndex:null,rows:[]},s=0,l=0,c=0;c<t.length;c++)r=t[c],o.rows.push({rowIndex:c,rowHeight:r}),((i+=r)>=e||c===t.length-1)&&(n[a]=o,o.key=l++,o.firstRowIndex=s,o.lastRowIndex=c,o={firstRowIndex:null,lastRowIndex:null,rows:[]},a+=i,s=c+1,i=0);return n}e.exports=function(t,e){var r=l(e.cells.values),p=function(t){return t.slice(e.header.values.length,t.length)},d=l(e.header.values);d.length&&!d[0].length&&(d[0]=[""],d=l(d));var g=d.concat(p(r).map((function(){return c((d[0]||[""]).length)}))),m=e.domain,v=Math.floor(t._fullLayout._size.w*(m.x[1]-m.x[0])),y=Math.floor(t._fullLayout._size.h*(m.y[1]-m.y[0])),x=e.header.values.length?g[0].map((function(){return e.header.height})):[n.emptyHeaderHeight],b=r.length?r[0].map((function(){return e.cells.height})):[],_=x.reduce(s,0),w=f(b,y-_+n.uplift),T=h(f(x,_),[]),k=h(w,T),A={},M=e._fullInput.columnorder.concat(p(r.map((function(t,e){return e})))),S=g.map((function(t,r){var n=Array.isArray(e.columnwidth)?e.columnwidth[Math.min(r,e.columnwidth.length-1)]:e.columnwidth;return i(n)?Number(n):1})),E=S.reduce(s,0);S=S.map((function(t){return t/E*v}));var C=Math.max(o(e.header.line.width),o(e.cells.line.width)),L={key:e.uid+t._context.staticPlot,translateX:m.x[0]*t._fullLayout._size.w,translateY:t._fullLayout._size.h*(1-m.y[1]),size:t._fullLayout._size,width:v,maxLineWidth:C,height:y,columnOrder:M,groupHeight:y,rowBlocks:k,headerRowBlocks:T,scrollY:0,cells:a({},e.cells,{values:r}),headerCells:a({},e.header,{values:g}),gdColumns:g.map((function(t){return t[0]})),gdColumnsOriginalOrder:g.map((function(t){return t[0]})),prevPages:[0,0],scrollbarState:{scrollbarScrollInProgress:!1},columns:g.map((function(t,e){var r=A[t];return A[t]=(r||0)+1,{key:t+"__"+A[t],label:t,specIndex:e,xIndex:M[e],xScale:u,x:void 0,calcdata:void 0,columnWidth:S[e]}}))};return L.columns.forEach((function(t){t.calcdata=L,t.x=u(t)})),L}},{"../../lib/extend":719,"./constants":1265,"fast-isnumeric":236}],1267:[function(t,e,r){"use strict";var n=t("../../lib/extend").extendFlat;r.splitToPanels=function(t){var e=[0,0],r=n({},t,{key:"header",type:"header",page:0,prevPages:e,currentRepaint:[null,null],dragHandle:!0,values:t.calcdata.headerCells.values[t.specIndex],rowBlocks:t.calcdata.headerRowBlocks,calcdata:n({},t.calcdata,{cells:t.calcdata.headerCells})});return[n({},t,{key:"cells1",type:"cells",page:0,prevPages:e,currentRepaint:[null,null],dragHandle:!1,values:t.calcdata.cells.values[t.specIndex],rowBlocks:t.calcdata.rowBlocks}),n({},t,{key:"cells2",type:"cells",page:1,prevPages:e,currentRepaint:[null,null],dragHandle:!1,values:t.calcdata.cells.values[t.specIndex],rowBlocks:t.calcdata.rowBlocks}),r]},r.splitToCells=function(t){var e=function(t){var e=t.rowBlocks[t.page],r=e?e.rows[0].rowIndex:0,n=e?r+e.rows.length:0;return[r,n]}(t);return(t.values||[]).slice(e[0],e[1]).map((function(r,n){return{keyWithinBlock:n+("string"==typeof r&&r.match(/[<$&> ]/)?"_keybuster_"+Math.random():""),key:e[0]+n,column:t,calcdata:t.calcdata,page:t.page,rowBlocks:t.rowBlocks,value:r}}))}},{"../../lib/extend":719}],1268:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./attributes"),i=t("../../plots/domain").defaults;e.exports=function(t,e,r,o){function s(r,i){return n.coerce(t,e,a,r,i)}i(e,o,s),s("columnwidth"),s("header.values"),s("header.format"),s("header.align"),s("header.prefix"),s("header.suffix"),s("header.height"),s("header.line.width"),s("header.line.color"),s("header.fill.color"),n.coerceFont(s,"header.font",n.extendFlat({},o.font)),function(t,e){for(var r=t.columnorder||[],n=t.header.values.length,a=r.slice(0,n),i=a.slice().sort((function(t,e){return t-e})),o=a.map((function(t){return i.indexOf(t)})),s=o.length;s<n;s++)o.push(s);e("columnorder",o)}(e,s),s("cells.values"),s("cells.format"),s("cells.align"),s("cells.prefix"),s("cells.suffix"),s("cells.height"),s("cells.line.width"),s("cells.line.color"),s("cells.fill.color"),n.coerceFont(s,"cells.font",n.extendFlat({},o.font)),e._length=null}},{"../../lib":728,"../../plots/domain":803,"./attributes":1262}],1269:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),supplyDefaults:t("./defaults"),calc:t("./calc"),plot:t("./plot"),moduleType:"trace",name:"table",basePlotModule:t("./base_plot"),categories:["noOpacity"],meta:{}}},{"./attributes":1262,"./base_plot":1263,"./calc":1264,"./defaults":1268,"./plot":1270}],1270:[function(t,e,r){"use strict";var n=t("./constants"),a=t("d3"),i=t("../../lib/gup"),o=t("../../components/drawing"),s=t("../../lib/svg_text_utils"),l=t("../../lib").raiseToTop,c=t("../../lib").cancelTransition,u=t("./data_preparation_helper"),h=t("./data_split_helpers"),f=t("../../components/color");function p(t){return Math.ceil(t.calcdata.maxLineWidth/2)}function d(t,e){return"clip"+t._fullLayout._uid+"_scrollAreaBottomClip_"+e.key}function g(t,e){return"clip"+t._fullLayout._uid+"_columnBoundaryClippath_"+e.calcdata.key+"_"+e.specIndex}function m(t){return[].concat.apply([],t.map((function(t){return t}))).map((function(t){return t.__data__}))}function v(t,e,r){var o=t.selectAll("."+n.cn.scrollbarKit).data(i.repeat,i.keyFun);o.enter().append("g").classed(n.cn.scrollbarKit,!0).style("shape-rendering","geometricPrecision"),o.each((function(t){var e=t.scrollbarState;e.totalHeight=function(t){var e=t.rowBlocks;return z(e,e.length-1)+(e.length?O(e[e.length-1],1/0):1)}(t),e.scrollableAreaHeight=t.groupHeight-A(t),e.currentlyVisibleHeight=Math.min(e.totalHeight,e.scrollableAreaHeight),e.ratio=e.currentlyVisibleHeight/e.totalHeight,e.barLength=Math.max(e.ratio*e.currentlyVisibleHeight,n.goldenRatio*n.scrollbarWidth),e.barWiggleRoom=e.currentlyVisibleHeight-e.barLength,e.wiggleRoom=Math.max(0,e.totalHeight-e.scrollableAreaHeight),e.topY=0===e.barWiggleRoom?0:t.scrollY/e.wiggleRoom*e.barWiggleRoom,e.bottomY=e.topY+e.barLength,e.dragMultiplier=e.wiggleRoom/e.barWiggleRoom})).attr("transform",(function(t){return"translate("+(t.width+n.scrollbarWidth/2+n.scrollbarOffset)+" "+A(t)+")"}));var s=o.selectAll("."+n.cn.scrollbar).data(i.repeat,i.keyFun);s.enter().append("g").classed(n.cn.scrollbar,!0);var l=s.selectAll("."+n.cn.scrollbarSlider).data(i.repeat,i.keyFun);l.enter().append("g").classed(n.cn.scrollbarSlider,!0),l.attr("transform",(function(t){return"translate(0 "+(t.scrollbarState.topY||0)+")"}));var c=l.selectAll("."+n.cn.scrollbarGlyph).data(i.repeat,i.keyFun);c.enter().append("line").classed(n.cn.scrollbarGlyph,!0).attr("stroke","black").attr("stroke-width",n.scrollbarWidth).attr("stroke-linecap","round").attr("y1",n.scrollbarWidth/2),c.attr("y2",(function(t){return t.scrollbarState.barLength-n.scrollbarWidth/2})).attr("stroke-opacity",(function(t){return t.columnDragInProgress||!t.scrollbarState.barWiggleRoom||r?0:.4})),c.transition().delay(0).duration(0),c.transition().delay(n.scrollbarHideDelay).duration(n.scrollbarHideDuration).attr("stroke-opacity",0);var u=s.selectAll("."+n.cn.scrollbarCaptureZone).data(i.repeat,i.keyFun);u.enter().append("line").classed(n.cn.scrollbarCaptureZone,!0).attr("stroke","white").attr("stroke-opacity",.01).attr("stroke-width",n.scrollbarCaptureWidth).attr("stroke-linecap","butt").attr("y1",0).on("mousedown",(function(r){var n=a.event.y,i=this.getBoundingClientRect(),o=r.scrollbarState,s=n-i.top,l=a.scale.linear().domain([0,o.scrollableAreaHeight]).range([0,o.totalHeight]).clamp(!0);o.topY<=s&&s<=o.bottomY||S(e,t,null,l(s-o.barLength/2))(r)})).call(a.behavior.drag().origin((function(t){return a.event.stopPropagation(),t.scrollbarState.scrollbarScrollInProgress=!0,t})).on("drag",S(e,t)).on("dragend",(function(){}))),u.attr("y2",(function(t){return t.scrollbarState.scrollableAreaHeight})),e._context.staticPlot&&(c.remove(),u.remove())}function y(t,e,r,s){var l=function(t){var e=t.selectAll("."+n.cn.columnCell).data(h.splitToCells,(function(t){return t.keyWithinBlock}));return e.enter().append("g").classed(n.cn.columnCell,!0),e.exit().remove(),e}(function(t){var e=t.selectAll("."+n.cn.columnCells).data(i.repeat,i.keyFun);return e.enter().append("g").classed(n.cn.columnCells,!0),e.exit().remove(),e}(r));!function(t){t.each((function(t,e){var r=t.calcdata.cells.font,n=t.column.specIndex,a={size:_(r.size,n,e),color:_(r.color,n,e),family:_(r.family,n,e)};t.rowNumber=t.key,t.align=_(t.calcdata.cells.align,n,e),t.cellBorderWidth=_(t.calcdata.cells.line.width,n,e),t.font=a}))}(l),function(t){t.attr("width",(function(t){return t.column.columnWidth})).attr("stroke-width",(function(t){return t.cellBorderWidth})).each((function(t){var e=a.select(this);f.stroke(e,_(t.calcdata.cells.line.color,t.column.specIndex,t.rowNumber)),f.fill(e,_(t.calcdata.cells.fill.color,t.column.specIndex,t.rowNumber))}))}(function(t){var e=t.selectAll("."+n.cn.cellRect).data(i.repeat,(function(t){return t.keyWithinBlock}));return e.enter().append("rect").classed(n.cn.cellRect,!0),e}(l));var c=function(t){var e=t.selectAll("."+n.cn.cellText).data(i.repeat,(function(t){return t.keyWithinBlock}));return e.enter().append("text").classed(n.cn.cellText,!0).style("cursor",(function(){return"auto"})).on("mousedown",(function(){a.event.stopPropagation()})),e}(function(t){var e=t.selectAll("."+n.cn.cellTextHolder).data(i.repeat,(function(t){return t.keyWithinBlock}));return e.enter().append("g").classed(n.cn.cellTextHolder,!0).style("shape-rendering","geometricPrecision"),e}(l));!function(t){t.each((function(t){o.font(a.select(this),t.font)}))}(c),x(c,e,s,t),I(l)}function x(t,e,r,i){t.text((function(t){var e=t.column.specIndex,r=t.rowNumber,i=t.value,o="string"==typeof i,s=o&&i.match(/<br>/i),l=!o||s;t.mayHaveMarkup=o&&i.match(/[<&>]/);var c,u="string"==typeof(c=i)&&c.match(n.latexCheck);t.latex=u;var h,f,p=u?"":_(t.calcdata.cells.prefix,e,r)||"",d=u?"":_(t.calcdata.cells.suffix,e,r)||"",g=u?null:_(t.calcdata.cells.format,e,r)||null,m=p+(g?a.format(g)(t.value):t.value)+d;if(t.wrappingNeeded=!t.wrapped&&!l&&!u&&(h=b(m)),t.cellHeightMayIncrease=s||u||t.mayHaveMarkup||(void 0===h?b(m):h),t.needsConvertToTspans=t.mayHaveMarkup||t.wrappingNeeded||t.latex,t.wrappingNeeded){var v=(" "===n.wrapSplitCharacter?m.replace(/<a href=https://rajacsp.github.io/mlnotes/gi,"<a_href="):m).split(n.wrapSplitCharacter),y=" "===n.wrapSplitCharacter?v.map((function(t){return t.replace(/<a_href=https://rajacsp.github.io/mlnotes/gi,"<a href=")})):v;t.fragments=y.map((function(t){return{text:t,width:null}})),t.fragments.push({fragment:n.wrapSpacer,width:null}),f=y.join(n.lineBreaker)+n.lineBreaker+n.wrapSpacer}else delete t.fragments,f=m;return f})).attr("dy",(function(t){return t.needsConvertToTspans?0:"0.75em"})).each((function(t){var o=a.select(this),l=t.wrappingNeeded?C:L;t.needsConvertToTspans?s.convertToTspans(o,i,l(r,this,e,i,t)):a.select(this.parentNode).attr("transform",(function(t){return"translate("+P(t)+" "+n.cellPad+")"})).attr("text-anchor",(function(t){return{left:"start",center:"middle",right:"end"}[t.align]}))}))}function b(t){return-1!==t.indexOf(n.wrapSplitCharacter)}function _(t,e,r){if(Array.isArray(t)){var n=t[Math.min(e,t.length-1)];return Array.isArray(n)?n[Math.min(r,n.length-1)]:n}return t}function w(t,e,r){t.transition().ease(n.releaseTransitionEase).duration(n.releaseTransitionDuration).attr("transform","translate("+e.x+" "+r+")")}function T(t){return"cells"===t.type}function k(t){return"header"===t.type}function A(t){return(t.rowBlocks.length?t.rowBlocks[0].auxiliaryBlocks:[]).reduce((function(t,e){return t+O(e,1/0)}),0)}function M(t,e,r){var n=m(e)[0];if(void 0!==n){var a=n.rowBlocks,i=n.calcdata,o=z(a,a.length),s=n.calcdata.groupHeight-A(n),l=i.scrollY=Math.max(0,Math.min(o-s,i.scrollY)),c=function(t,e,r){for(var n=[],a=0,i=0;i<t.length;i++){for(var o=t[i],s=o.rows,l=0,c=0;c<s.length;c++)l+=s[c].rowHeight;o.allRowsHeight=l;e<a+l&&e+r>a&&n.push(i),a+=l}return n}(a,l,s);1===c.length&&(c[0]===a.length-1?c.unshift(c[0]-1):c.push(c[0]+1)),c[0]%2&&c.reverse(),e.each((function(t,e){t.page=c[e],t.scrollY=l})),e.attr("transform",(function(t){return"translate(0 "+(z(t.rowBlocks,t.page)-t.scrollY)+")"})),t&&(E(t,r,e,c,n.prevPages,n,0),E(t,r,e,c,n.prevPages,n,1),v(r,t))}}function S(t,e,r,i){return function(o){var s=o.calcdata?o.calcdata:o,l=e.filter((function(t){return s.key===t.key})),c=r||s.scrollbarState.dragMultiplier,u=s.scrollY;s.scrollY=void 0===i?s.scrollY+c*a.event.dy:i;var h=l.selectAll("."+n.cn.yColumn).selectAll("."+n.cn.columnBlock).filter(T);return M(t,h,l),s.scrollY===u}}function E(t,e,r,n,a,i,o){n[o]!==a[o]&&(clearTimeout(i.currentRepaint[o]),i.currentRepaint[o]=setTimeout((function(){var i=r.filter((function(t,e){return e===o&&n[e]!==a[e]}));y(t,e,i,r),a[o]=n[o]})))}function C(t,e,r,i){return function(){var o=a.select(e.parentNode);o.each((function(t){var e=t.fragments;o.selectAll("tspan.line").each((function(t,r){e[r].width=this.getComputedTextLength()}));var r,a,i=e[e.length-1].width,s=e.slice(0,-1),l=[],c=0,u=t.column.columnWidth-2*n.cellPad;for(t.value="";s.length;)c+(a=(r=s.shift()).width+i)>u&&(t.value+=l.join(n.wrapSpacer)+n.lineBreaker,l=[],c=0),l.push(r.text),c+=a;c&&(t.value+=l.join(n.wrapSpacer)),t.wrapped=!0})),o.selectAll("tspan.line").remove(),x(o.select("."+n.cn.cellText),r,t,i),a.select(e.parentNode.parentNode).call(I)}}function L(t,e,r,i,o){return function(){if(!o.settledY){var s=a.select(e.parentNode),l=R(o),c=o.key-l.firstRowIndex,u=l.rows[c].rowHeight,h=o.cellHeightMayIncrease?e.parentNode.getBoundingClientRect().height+2*n.cellPad:u,f=Math.max(h,u);f-l.rows[c].rowHeight&&(l.rows[c].rowHeight=f,t.selectAll("."+n.cn.columnCell).call(I),M(null,t.filter(T),0),v(r,i,!0)),s.attr("transform",(function(){var t=this.parentNode.getBoundingClientRect(),e=a.select(this.parentNode).select("."+n.cn.cellRect).node().getBoundingClientRect(),r=this.transform.baseVal.consolidate(),i=e.top-t.top+(r?r.matrix.f:n.cellPad);return"translate("+P(o,a.select(this.parentNode).select("."+n.cn.cellTextHolder).node().getBoundingClientRect().width)+" "+i+")"})),o.settledY=!0}}}function P(t,e){switch(t.align){case"left":return n.cellPad;case"right":return t.column.columnWidth-(e||0)-n.cellPad;case"center":return(t.column.columnWidth-(e||0))/2;default:return n.cellPad}}function I(t){t.attr("transform",(function(t){var e=t.rowBlocks[0].auxiliaryBlocks.reduce((function(t,e){return t+O(e,1/0)}),0);return"translate(0 "+(O(R(t),t.key)+e)+")"})).selectAll("."+n.cn.cellRect).attr("height",(function(t){return(e=R(t),r=t.key,e.rows[r-e.firstRowIndex]).rowHeight;var e,r}))}function z(t,e){for(var r=0,n=e-1;n>=0;n--)r+=D(t[n]);return r}function O(t,e){for(var r=0,n=0;n<t.rows.length&&t.rows[n].rowIndex<e;n++)r+=t.rows[n].rowHeight;return r}function D(t){var e=t.allRowsHeight;if(void 0!==e)return e;for(var r=0,n=0;n<t.rows.length;n++)r+=t.rows[n].rowHeight;return t.allRowsHeight=r,r}function R(t){return t.rowBlocks[t.page]}e.exports=function(t,e){var r=!t._context.staticPlot,s=t._fullLayout._paper.selectAll("."+n.cn.table).data(e.map((function(e){var r=i.unwrap(e).trace;return u(t,r)})),i.keyFun);s.exit().remove(),s.enter().append("g").classed(n.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"),s.attr("width",(function(t){return t.width+t.size.l+t.size.r})).attr("height",(function(t){return t.height+t.size.t+t.size.b})).attr("transform",(function(t){return"translate("+t.translateX+","+t.translateY+")"}));var f=s.selectAll("."+n.cn.tableControlView).data(i.repeat,i.keyFun),x=f.enter().append("g").classed(n.cn.tableControlView,!0).style("box-sizing","content-box");r&&x.on("mousemove",(function(e){f.filter((function(t){return e===t})).call(v,t)})).on("mousewheel",(function(e){if(!e.scrollbarState.wheeling){e.scrollbarState.wheeling=!0;var r=e.scrollY+a.event.deltaY;S(t,f,null,r)(e)||(a.event.stopPropagation(),a.event.preventDefault()),e.scrollbarState.wheeling=!1}})).call(v,t,!0),f.attr("transform",(function(t){return"translate("+t.size.l+" "+t.size.t+")"}));var b=f.selectAll("."+n.cn.scrollBackground).data(i.repeat,i.keyFun);b.enter().append("rect").classed(n.cn.scrollBackground,!0).attr("fill","none"),b.attr("width",(function(t){return t.width})).attr("height",(function(t){return t.height})),f.each((function(e){o.setClipUrl(a.select(this),d(t,e),t)}));var _=f.selectAll("."+n.cn.yColumn).data((function(t){return t.columns}),i.keyFun);_.enter().append("g").classed(n.cn.yColumn,!0),_.exit().remove(),_.attr("transform",(function(t){return"translate("+t.x+" 0)"})),r&&_.call(a.behavior.drag().origin((function(e){return w(a.select(this),e,-n.uplift),l(this),e.calcdata.columnDragInProgress=!0,v(f.filter((function(t){return e.calcdata.key===t.key})),t),e})).on("drag",(function(t){var e=a.select(this),r=function(e){return(t===e?a.event.x:e.x)+e.columnWidth/2};t.x=Math.max(-n.overdrag,Math.min(t.calcdata.width+n.overdrag-t.columnWidth,a.event.x)),m(_).filter((function(e){return e.calcdata.key===t.calcdata.key})).sort((function(t,e){return r(t)-r(e)})).forEach((function(e,r){e.xIndex=r,e.x=t===e?e.x:e.xScale(e)})),_.filter((function(e){return t!==e})).transition().ease(n.transitionEase).duration(n.transitionDuration).attr("transform",(function(t){return"translate("+t.x+" 0)"})),e.call(c).attr("transform","translate("+t.x+" -"+n.uplift+" )")})).on("dragend",(function(e){var r=a.select(this),n=e.calcdata;e.x=e.xScale(e),e.calcdata.columnDragInProgress=!1,w(r,e,0),function(t,e,r){var n=e.gdColumnsOriginalOrder;e.gdColumns.sort((function(t,e){return r[n.indexOf(t)]-r[n.indexOf(e)]})),e.columnorder=r,t.emit("plotly_restyle")}(t,n,n.columns.map((function(t){return t.xIndex})))}))),_.each((function(e){o.setClipUrl(a.select(this),g(t,e),t)}));var A=_.selectAll("."+n.cn.columnBlock).data(h.splitToPanels,i.keyFun);A.enter().append("g").classed(n.cn.columnBlock,!0).attr("id",(function(t){return t.key})),A.style("cursor",(function(t){return t.dragHandle?"ew-resize":t.calcdata.scrollbarState.barWiggleRoom?"ns-resize":"default"}));var E=A.filter(k),C=A.filter(T);r&&C.call(a.behavior.drag().origin((function(t){return a.event.stopPropagation(),t})).on("drag",S(t,f,-1)).on("dragend",(function(){}))),y(t,f,E,A),y(t,f,C,A);var L=f.selectAll("."+n.cn.scrollAreaClip).data(i.repeat,i.keyFun);L.enter().append("clipPath").classed(n.cn.scrollAreaClip,!0).attr("id",(function(e){return d(t,e)}));var P=L.selectAll("."+n.cn.scrollAreaClipRect).data(i.repeat,i.keyFun);P.enter().append("rect").classed(n.cn.scrollAreaClipRect,!0).attr("x",-n.overdrag).attr("y",-n.uplift).attr("fill","none"),P.attr("width",(function(t){return t.width+2*n.overdrag})).attr("height",(function(t){return t.height+n.uplift})),_.selectAll("."+n.cn.columnBoundary).data(i.repeat,i.keyFun).enter().append("g").classed(n.cn.columnBoundary,!0);var I=_.selectAll("."+n.cn.columnBoundaryClippath).data(i.repeat,i.keyFun);I.enter().append("clipPath").classed(n.cn.columnBoundaryClippath,!0),I.attr("id",(function(e){return g(t,e)}));var z=I.selectAll("."+n.cn.columnBoundaryRect).data(i.repeat,i.keyFun);z.enter().append("rect").classed(n.cn.columnBoundaryRect,!0).attr("fill","none"),z.attr("width",(function(t){return t.columnWidth+2*p(t)})).attr("height",(function(t){return t.calcdata.height+2*p(t)+n.uplift})).attr("x",(function(t){return-p(t)})).attr("y",(function(t){return-p(t)})),M(null,C,f)}},{"../../components/color":595,"../../components/drawing":617,"../../lib":728,"../../lib/gup":726,"../../lib/svg_text_utils":752,"./constants":1265,"./data_preparation_helper":1266,"./data_split_helpers":1267,d3:164}],1271:[function(t,e,r){"use strict";var n=t("../../plots/template_attributes").hovertemplateAttrs,a=t("../../plots/template_attributes").texttemplateAttrs,i=t("../../components/colorscale/attributes"),o=t("../../plots/domain").attributes,s=t("../pie/attributes"),l=t("../sunburst/attributes"),c=t("./constants"),u=t("../../lib/extend").extendFlat;e.exports={labels:l.labels,parents:l.parents,values:l.values,branchvalues:l.branchvalues,count:l.count,level:l.level,maxdepth:l.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:u({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:l.marker.colors,depthfade:{valType:"enumerated",values:[!0,!1,"reversed"],editType:"style"},line:l.marker.line,editType:"calc"},i("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:u({},s.textfont,{}),editType:"calc"},text:s.text,textinfo:l.textinfo,texttemplate:a({editType:"plot"},{keys:c.eventDataKeys.concat(["label","value"])}),hovertext:s.hovertext,hoverinfo:l.hoverinfo,hovertemplate:n({},{keys:c.eventDataKeys}),textfont:s.textfont,insidetextfont:s.insidetextfont,outsidetextfont:u({},s.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"},domain:o({name:"treemap",trace:!0,editType:"calc"})}},{"../../components/colorscale/attributes":602,"../../lib/extend":719,"../../plots/domain":803,"../../plots/template_attributes":854,"../pie/attributes":1108,"../sunburst/attributes":1245,"./constants":1274}],1272:[function(t,e,r){"use strict";var n=t("../../plots/plots");r.name="treemap",r.plot=function(t,e,a,i){n.plotBasePlot(r.name,t,e,a,i)},r.clean=function(t,e,a,i){n.cleanBasePlot(r.name,t,e,a,i)}},{"../../plots/plots":839}],1273:[function(t,e,r){"use strict";var n=t("../sunburst/calc");r.calc=function(t,e){return n.calc(t,e)},r.crossTraceCalc=function(t){return n._runCrossTraceCalc("treemap",t)}},{"../sunburst/calc":1247}],1274:[function(t,e,r){"use strict";e.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"poly",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"],gapWithPathbar:1}},{}],1275:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./attributes"),i=t("../../components/color"),o=t("../../plots/domain").defaults,s=t("../bar/defaults").handleText,l=t("../bar/constants").TEXTPAD,c=t("../../components/colorscale"),u=c.hasColorscale,h=c.handleDefaults;e.exports=function(t,e,r,c){function f(r,i){return n.coerce(t,e,a,r,i)}var p=f("labels"),d=f("parents");if(p&&p.length&&d&&d.length){var g=f("values");g&&g.length?f("branchvalues"):f("count"),f("level"),f("maxdepth"),"squarify"===f("tiling.packing")&&f("tiling.squarifyratio"),f("tiling.flip"),f("tiling.pad");var m=f("text");f("texttemplate"),e.texttemplate||f("textinfo",Array.isArray(m)?"text+label":"label"),f("hovertext"),f("hovertemplate");var v=f("pathbar.visible");s(t,e,c,f,"auto",{hasPathbar:v,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),f("textposition");var y=-1!==e.textposition.indexOf("bottom");f("marker.line.width")&&f("marker.line.color",c.paper_bgcolor);var x=f("marker.colors"),b=e._hasColorscale=u(t,"marker","colors")||(t.marker||{}).coloraxis;b?h(t,e,c,f,{prefix:"marker.",cLetter:"c"}):f("marker.depthfade",!(x||[]).length);var _=2*e.textfont.size;f("marker.pad.t",y?_/4:_),f("marker.pad.l",_/4),f("marker.pad.r",_/4),f("marker.pad.b",y?_:_/4),b&&h(t,e,c,f,{prefix:"marker.",cLetter:"c"}),e._hovered={marker:{line:{width:2,color:i.contrast(c.paper_bgcolor)}}},v&&(f("pathbar.thickness",e.pathbar.textfont.size+2*l),f("pathbar.side"),f("pathbar.edgeshape")),o(e,c,f),e._length=null}else e.visible=!1}},{"../../components/color":595,"../../components/colorscale":607,"../../lib":728,"../../plots/domain":803,"../bar/constants":871,"../bar/defaults":873,"./attributes":1271}],1276:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../lib"),i=t("../../components/drawing"),o=t("../../lib/svg_text_utils"),s=t("./partition"),l=t("./style").styleOne,c=t("./constants"),u=t("../sunburst/helpers"),h=t("../sunburst/fx");e.exports=function(t,e,r,f,p){var d=p.barDifY,g=p.width,m=p.height,v=p.viewX,y=p.viewY,x=p.pathSlice,b=p.toMoveInsideSlice,_=p.strTransform,w=p.hasTransition,T=p.handleSlicesExit,k=p.makeUpdateSliceInterpolator,A=p.makeUpdateTextInterpolator,M={},S=t._fullLayout,E=e[0],C=E.trace,L=E.hierarchy,P=g/C._entryDepth,I=u.listPath(r.data,"id"),z=s(L.copy(),[g,m],{packing:"dice",pad:{inner:0,top:0,left:0,right:0,bottom:0}}).descendants();(z=z.filter((function(t){var e=I.indexOf(t.data.id);return-1!==e&&(t.x0=P*e,t.x1=P*(e+1),t.y0=d,t.y1=d+m,t.onPathbar=!0,!0)}))).reverse(),(f=f.data(z,u.getPtId)).enter().append("g").classed("pathbar",!0),T(f,!0,M,[g,m],x),f.order();var O=f;w&&(O=O.transition().each("end",(function(){var e=n.select(this);u.setSliceCursor(e,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:!1})}))),O.each((function(s){s._hoverX=v(s.x1-Math.min(g,m)/2),s._hoverY=y(s.y1-m/2);var f=n.select(this),p=a.ensureSingle(f,"path","surface",(function(t){t.style("pointer-events","all")}));w?p.transition().attrTween("d",(function(t){var e=k(t,!0,M,[g,m]);return function(t){return x(e(t))}})):p.attr("d",x),f.call(h,r,t,e,{styleOne:l,eventDataKeys:c.eventDataKeys,transitionTime:c.CLICK_TRANSITION_TIME,transitionEasing:c.CLICK_TRANSITION_EASING}).call(u.setSliceCursor,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:t._transitioning}),p.call(l,s,C,{hovered:!1}),s._text=(u.getPtLabel(s)||"").split("<br>").join(" ")||"";var d=a.ensureSingle(f,"g","slicetext"),T=a.ensureSingle(d,"text","",(function(t){t.attr("data-notex",1)})),E=a.ensureUniformFontSize(t,u.determineTextFont(C,s,S.font,{onPathbar:!0}));T.text(s._text||" ").classed("slicetext",!0).attr("text-anchor","start").call(i.font,E).call(o.convertToTspans,t),s.textBB=i.bBox(T.node()),s.transform=b(s,{fontSize:E.size,onPathbar:!0}),s.transform.fontSize=E.size,w?T.transition().attrTween("transform",(function(t){var e=A(t,!0,M,[g,m]);return function(t){return _(e(t))}})):T.attr("transform",_(s))}))}},{"../../components/drawing":617,"../../lib":728,"../../lib/svg_text_utils":752,"../sunburst/fx":1250,"../sunburst/helpers":1251,"./constants":1274,"./partition":1281,"./style":1283,d3:164}],1277:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../lib"),i=t("../../components/drawing"),o=t("../../lib/svg_text_utils"),s=t("./partition"),l=t("./style").styleOne,c=t("./constants"),u=t("../sunburst/helpers"),h=t("../sunburst/fx"),f=t("../sunburst/plot").formatSliceLabel;e.exports=function(t,e,r,p,d){var g=d.width,m=d.height,v=d.viewX,y=d.viewY,x=d.pathSlice,b=d.toMoveInsideSlice,_=d.strTransform,w=d.hasTransition,T=d.handleSlicesExit,k=d.makeUpdateSliceInterpolator,A=d.makeUpdateTextInterpolator,M=d.prevEntry,S=t._fullLayout,E=e[0].trace,C=-1!==E.textposition.indexOf("left"),L=-1!==E.textposition.indexOf("right"),P=-1!==E.textposition.indexOf("bottom"),I=!P&&!E.marker.pad.t||P&&!E.marker.pad.b,z=s(r,[g,m],{packing:E.tiling.packing,squarifyratio:E.tiling.squarifyratio,flipX:E.tiling.flip.indexOf("x")>-1,flipY:E.tiling.flip.indexOf("y")>-1,pad:{inner:E.tiling.pad,top:E.marker.pad.t,left:E.marker.pad.l,right:E.marker.pad.r,bottom:E.marker.pad.b}}).descendants(),O=1/0,D=-1/0;z.forEach((function(t){var e=t.depth;e>=E._maxDepth?(t.x0=t.x1=(t.x0+t.x1)/2,t.y0=t.y1=(t.y0+t.y1)/2):(O=Math.min(O,e),D=Math.max(D,e))})),p=p.data(z,u.getPtId),E._maxVisibleLayers=isFinite(D)?D-O+1:0,p.enter().append("g").classed("slice",!0),T(p,!1,{},[g,m],x),p.order();var R=null;if(w&&M){var F=u.getPtId(M);p.each((function(t){null===R&&u.getPtId(t)===F&&(R={x0:t.x0,x1:t.x1,y0:t.y0,y1:t.y1})}))}var B=function(){return R||{x0:0,x1:g,y0:0,y1:m}},N=p;return w&&(N=N.transition().each("end",(function(){var e=n.select(this);u.setSliceCursor(e,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})}))),N.each((function(s){var p=u.isHeader(s,E);s._hoverX=v(s.x1-E.marker.pad.r),s._hoverY=y(P?s.y1-E.marker.pad.b/2:s.y0+E.marker.pad.t/2);var d=n.select(this),T=a.ensureSingle(d,"path","surface",(function(t){t.style("pointer-events","all")}));w?T.transition().attrTween("d",(function(t){var e=k(t,!1,B(),[g,m]);return function(t){return x(e(t))}})):T.attr("d",x),d.call(h,r,t,e,{styleOne:l,eventDataKeys:c.eventDataKeys,transitionTime:c.CLICK_TRANSITION_TIME,transitionEasing:c.CLICK_TRANSITION_EASING}).call(u.setSliceCursor,t,{isTransitioning:t._transitioning}),T.call(l,s,E,{hovered:!1}),s.x0===s.x1||s.y0===s.y1?s._text="":s._text=p?I?"":u.getPtLabel(s)||"":f(s,r,E,e,S)||"";var M=a.ensureSingle(d,"g","slicetext"),z=a.ensureSingle(M,"text","",(function(t){t.attr("data-notex",1)})),O=a.ensureUniformFontSize(t,u.determineTextFont(E,s,S.font));z.text(s._text||" ").classed("slicetext",!0).attr("text-anchor",L?"end":C||p?"start":"middle").call(i.font,O).call(o.convertToTspans,t),s.textBB=i.bBox(z.node()),s.transform=b(s,{fontSize:O.size,isHeader:p}),s.transform.fontSize=O.size,w?z.transition().attrTween("transform",(function(t){var e=A(t,!1,B(),[g,m]);return function(t){return _(e(t))}})):z.attr("transform",_(s))})),R}},{"../../components/drawing":617,"../../lib":728,"../../lib/svg_text_utils":752,"../sunburst/fx":1250,"../sunburst/helpers":1251,"../sunburst/plot":1255,"./constants":1274,"./partition":1281,"./style":1283,d3:164}],1278:[function(t,e,r){"use strict";e.exports={moduleType:"trace",name:"treemap",basePlotModule:t("./base_plot"),categories:[],animatable:!0,attributes:t("./attributes"),layoutAttributes:t("./layout_attributes"),supplyDefaults:t("./defaults"),supplyLayoutDefaults:t("./layout_defaults"),calc:t("./calc").calc,crossTraceCalc:t("./calc").crossTraceCalc,plot:t("./plot"),style:t("./style").style,colorbar:t("../scatter/marker_colorbar"),meta:{}}},{"../scatter/marker_colorbar":1152,"./attributes":1271,"./base_plot":1272,"./calc":1273,"./defaults":1275,"./layout_attributes":1279,"./layout_defaults":1280,"./plot":1282,"./style":1283}],1279:[function(t,e,r){"use strict";e.exports={treemapcolorway:{valType:"colorlist",editType:"calc"},extendtreemapcolors:{valType:"boolean",dflt:!0,editType:"calc"}}},{}],1280:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./layout_attributes");e.exports=function(t,e){function r(r,i){return n.coerce(t,e,a,r,i)}r("treemapcolorway",e.colorway),r("extendtreemapcolors")}},{"../../lib":728,"./layout_attributes":1279}],1281:[function(t,e,r){"use strict";var n=t("d3-hierarchy");e.exports=function(t,e,r){var a,i=r.flipX,o=r.flipY,s="dice-slice"===r.packing,l=r.pad[o?"bottom":"top"],c=r.pad[i?"right":"left"],u=r.pad[i?"left":"right"],h=r.pad[o?"top":"bottom"];s&&(a=c,c=l,l=a,a=u,u=h,h=a);var f=n.treemap().tile(function(t,e){switch(t){case"squarify":return n.treemapSquarify.ratio(e);case"binary":return n.treemapBinary;case"dice":return n.treemapDice;case"slice":return n.treemapSlice;default:return n.treemapSliceDice}}(r.packing,r.squarifyratio)).paddingInner(r.pad.inner).paddingLeft(c).paddingRight(u).paddingTop(l).paddingBottom(h).size(s?[e[1],e[0]]:e)(t);return(s||i||o)&&function t(e,r,n){var a;n.swapXY&&(a=e.x0,e.x0=e.y0,e.y0=a,a=e.x1,e.x1=e.y1,e.y1=a);n.flipX&&(a=e.x0,e.x0=r[0]-e.x1,e.x1=r[0]-a);n.flipY&&(a=e.y0,e.y0=r[1]-e.y1,e.y1=r[1]-a);var i=e.children;if(i)for(var o=0;o<i.length;o++)t(i[o],r,n)}(f,e,{swapXY:s,flipX:i,flipY:o}),f}},{"d3-hierarchy":158}],1282:[function(t,e,r){"use strict";var n=t("d3"),a=t("../sunburst/helpers"),i=t("../../lib"),o=t("../bar/constants").TEXTPAD,s=t("../bar/plot").toMoveInsideBar,l=t("../bar/uniform_text"),c=l.recordMinTextSize,u=l.clearMinTextSize,h=t("../bar/style").resizeText,f=t("./constants"),p=t("./draw_descendants"),d=t("./draw_ancestors");function g(t){return a.isHierarchyRoot(t)?"":a.getPtId(t)}function m(t,e,r,l){var u=t._fullLayout,h=e[0],m=h.trace,v=h.hierarchy,y=a.findEntryWithLevel(v,m.level),x=n.select(r),b=x.selectAll("g.pathbar"),_=x.selectAll("g.slice");if(!y)return b.remove(),void _.remove();var w=a.isHierarchyRoot(y),T=!u.uniformtext.mode&&a.hasTransition(l),k=a.getMaxDepth(m),A=u._size,M=m.domain,S=A.w*(M.x[1]-M.x[0]),E=A.h*(M.y[1]-M.y[0]),C=S,L=m.pathbar.thickness,P=m.marker.line.width+f.gapWithPathbar,I=m.pathbar.visible?m.pathbar.side.indexOf("bottom")>-1?E+P:-(L+P):0,z={x0:C,x1:C,y0:I,y1:I+L},O=function(t,e,r){var n=m.tiling.pad,a=function(t){return t-n<=e.x0},i=function(t){return t+n>=e.x1},o=function(t){return t-n<=e.y0},s=function(t){return t+n>=e.y1};return{x0:a(t.x0-n)?0:i(t.x0-n)?r[0]:t.x0,x1:a(t.x1+n)?0:i(t.x1+n)?r[0]:t.x1,y0:o(t.y0-n)?0:s(t.y0-n)?r[1]:t.y0,y1:o(t.y1+n)?0:s(t.y1+n)?r[1]:t.y1}},D=null,R={},F={},B=null,N=function(t,e){return e?R[g(t)]:F[g(t)]},j=function(t,e,r,n){if(e)return R[g(v)]||z;var a=F[m.level]||r;return function(t){return t.data.depth-y.data.depth<k}(t)?O(t,a,n):{}};h.hasMultipleRoots&&w&&k++,m._maxDepth=k,m._backgroundColor=u.paper_bgcolor,m._entryDepth=y.data.depth,m._atRootLevel=w;var V=-S/2+A.l+A.w*(M.x[1]+M.x[0])/2,U=-E/2+A.t+A.h*(1-(M.y[1]+M.y[0])/2),q=function(t){return V+t},H=function(t){return U+t},G=H(0),Y=q(0),W=function(t){return Y+t},Z=function(t){return G+t};function X(t,e){return t+","+e}var J=W(0),K=function(t){t.x=Math.max(J,t.x)},Q=m.pathbar.edgeshape,$=function(t,e){var r=t.x0,n=t.x1,a=t.y0,i=t.y1,l=t.textBB,h=function(t){return-1!==m.textposition.indexOf(t)},f=h("bottom"),p=h("top")||e.isHeader&&!f?"start":f?"end":"middle",d=h("right"),g=h("left")||e.onPathbar?-1:d?1:0,v=m.marker.pad;if(e.isHeader){if((r+=v.l-o)>=(n-=v.r-o)){var y=(r+n)/2;r=y,n=y}var x;f?a<(x=i-v.b)&&x<i&&(a=x):a<(x=a+v.t)&&x<i&&(i=x)}var b=s(r,n,a,i,l,{isHorizontal:!1,constrained:!0,angle:0,anchor:p,leftToRight:g});return b.fontSize=e.fontSize,b.targetX=q(b.targetX),b.targetY=H(b.targetY),isNaN(b.targetX)||isNaN(b.targetY)?{}:(r!==n&&a!==i&&c(m.type,b,u),{scale:b.scale,rotate:b.rotate,textX:b.textX,textY:b.textY,anchorX:b.anchorX,anchorY:b.anchorY,targetX:b.targetX,targetY:b.targetY})},tt=function(t,e){for(var r,n=0,a=t;!r&&n<k;)n++,(a=a.parent)?r=N(a,e):n=k;return r||{}},et=function(t,e,r,a){var o,s=N(t,e);if(s)o=s;else if(e)o=z;else if(D)if(t.parent){var l=B||r;l&&!e?o=O(t,l,a):(o={},i.extendFlat(o,tt(t,e)))}else o=t;else o={};return n.interpolate(o,{x0:t.x0,x1:t.x1,y0:t.y0,y1:t.y1})},rt=function(t,e,r,o){var s=N(t,e),l={},h=j(t,e,r,o);i.extendFlat(l,{transform:$({x0:h.x0,x1:h.x1,y0:h.y0,y1:h.y1,textBB:t.textBB,_text:t._text},{isHeader:a.isHeader(t,m)})}),s?l=s:t.parent&&i.extendFlat(l,tt(t,e));var f=t.transform;return t.x0!==t.x1&&t.y0!==t.y1&&c(m.type,f,u),n.interpolate(l,{transform:{scale:f.scale,rotate:f.rotate,textX:f.textX,textY:f.textY,anchorX:f.anchorX,anchorY:f.anchorY,targetX:f.targetX,targetY:f.targetY}})},nt=function(t,e,r,a,i){var o=a[0],s=a[1];T?t.exit().transition().each((function(){var t=n.select(this);t.select("path.surface").transition().attrTween("d",(function(t){var r=function(t,e,r,a){var i,o=N(t,e);if(e)i=z;else{var s=N(y,e);i=s?O(t,s,a):{}}return n.interpolate(o,i)}(t,e,0,[o,s]);return function(t){return i(r(t))}})),t.select("g.slicetext").attr("opacity",0)})).remove():t.exit().remove()},at=function(t){var e=t.transform;return t.x0!==t.x1&&t.y0!==t.y1&&c(m.type,e,u),i.getTextTransform({textX:e.textX,textY:e.textY,anchorX:e.anchorX,anchorY:e.anchorY,targetX:e.targetX,targetY:e.targetY,scale:e.scale,rotate:e.rotate})};T&&(b.each((function(t){R[g(t)]={x0:t.x0,x1:t.x1,y0:t.y0,y1:t.y1},t.transform&&(R[g(t)].transform={textX:t.transform.textX,textY:t.transform.textY,anchorX:t.transform.anchorX,anchorY:t.transform.anchorY,targetX:t.transform.targetX,targetY:t.transform.targetY,scale:t.transform.scale,rotate:t.transform.rotate})})),_.each((function(t){F[g(t)]={x0:t.x0,x1:t.x1,y0:t.y0,y1:t.y1},t.transform&&(F[g(t)].transform={textX:t.transform.textX,textY:t.transform.textY,anchorX:t.transform.anchorX,anchorY:t.transform.anchorY,targetX:t.transform.targetX,targetY:t.transform.targetY,scale:t.transform.scale,rotate:t.transform.rotate}),!D&&a.isEntry(t)&&(D=t)}))),B=p(t,e,y,_,{width:S,height:E,viewX:q,viewY:H,pathSlice:function(t){var e=q(t.x0),r=q(t.x1),n=H(t.y0),a=H(t.y1),i=r-e,o=a-n;if(!i||!o)return"";return"M"+X(e,n+0)+"L"+X(r-0,n)+"L"+X(r,a-0)+"L"+X(e+0,a)+"Z"},toMoveInsideSlice:$,prevEntry:D,makeUpdateSliceInterpolator:et,makeUpdateTextInterpolator:rt,handleSlicesExit:nt,hasTransition:T,strTransform:at}),m.pathbar.visible?d(t,e,y,b,{barDifY:I,width:C,height:L,viewX:W,viewY:Z,pathSlice:function(t){var e=W(Math.max(Math.min(t.x0,t.x0),0)),r=W(Math.min(Math.max(t.x1,t.x1),C)),n=Z(t.y0),a=Z(t.y1),i=L/2,o={},s={};o.x=e,s.x=r,o.y=s.y=(n+a)/2;var l={x:e,y:n},c={x:r,y:n},u={x:r,y:a},h={x:e,y:a};return">"===Q?(l.x-=i,c.x-=i,u.x-=i,h.x-=i):"/"===Q?(u.x-=i,h.x-=i,o.x-=i/2,s.x-=i/2):"\\"===Q?(l.x-=i,c.x-=i,o.x-=i/2,s.x-=i/2):"<"===Q&&(o.x-=i,s.x-=i),K(l),K(h),K(o),K(c),K(u),K(s),"M"+X(l.x,l.y)+"L"+X(c.x,c.y)+"L"+X(s.x,s.y)+"L"+X(u.x,u.y)+"L"+X(h.x,h.y)+"L"+X(o.x,o.y)+"Z"},toMoveInsideSlice:$,makeUpdateSliceInterpolator:et,makeUpdateTextInterpolator:rt,handleSlicesExit:nt,hasTransition:T,strTransform:at}):b.remove()}e.exports=function(t,e,r,i){var o,s,l=t._fullLayout,c=l._treemaplayer,f=!r;(u("treemap",l),(o=c.selectAll("g.trace.treemap").data(e,(function(t){return t[0].trace.uid}))).enter().append("g").classed("trace",!0).classed("treemap",!0),o.order(),!l.uniformtext.mode&&a.hasTransition(r))?(i&&(s=i()),n.transition().duration(r.duration).ease(r.easing).each("end",(function(){s&&s()})).each("interrupt",(function(){s&&s()})).each((function(){c.selectAll("g.trace").each((function(e){m(t,e,this,r)}))}))):(o.each((function(e){m(t,e,this,r)})),l.uniformtext.mode&&h(t,l._treemaplayer.selectAll(".trace"),"treemap"));f&&o.exit().remove()}},{"../../lib":728,"../bar/constants":871,"../bar/plot":880,"../bar/style":883,"../bar/uniform_text":885,"../sunburst/helpers":1251,"./constants":1274,"./draw_ancestors":1276,"./draw_descendants":1277,d3:164}],1283:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../components/color"),i=t("../../lib"),o=t("../sunburst/helpers"),s=t("../bar/uniform_text").resizeText;function l(t,e,r,n){var s,l,c=(n||{}).hovered,u=e.data.data,h=u.i,f=u.color,p=o.isHierarchyRoot(e),d=1;if(c)s=r._hovered.marker.line.color,l=r._hovered.marker.line.width;else if(p&&"rgba(0,0,0,0)"===f)d=0,s="rgba(0,0,0,0)",l=0;else if(s=i.castOption(r,h,"marker.line.color")||a.defaultLine,l=i.castOption(r,h,"marker.line.width")||0,!r._hasColorscale&&!e.onPathbar){var g=r.marker.depthfade;if(g){var m,v=a.combine(a.addOpacity(r._backgroundColor,.75),f);if(!0===g){var y=o.getMaxDepth(r);m=isFinite(y)?o.isLeaf(e)?0:r._maxVisibleLayers-(e.data.depth-r._entryDepth):e.data.height+1}else m=e.data.depth-r._entryDepth,r._atRootLevel||m++;if(m>0)for(var x=0;x<m;x++){var b=.5*x/m;f=a.combine(a.addOpacity(v,b),f)}}}t.style("stroke-width",l).call(a.fill,f).call(a.stroke,s).style("opacity",d)}e.exports={style:function(t){var e=t._fullLayout._treemaplayer.selectAll(".trace");s(t,e,"treemap"),e.each((function(t){var e=n.select(this),r=t[0].trace;e.style("opacity",r.opacity),e.selectAll("path.surface").each((function(t){n.select(this).call(l,t,r,{hovered:!1})}))}))},styleOne:l}},{"../../components/color":595,"../../lib":728,"../bar/uniform_text":885,"../sunburst/helpers":1251,d3:164}],1284:[function(t,e,r){"use strict";var n=t("../box/attributes"),a=t("../../lib/extend").extendFlat;e.exports={y:n.y,x:n.x,x0:n.x0,y0:n.y0,name:a({},n.name,{}),orientation:a({},n.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:n.fillcolor,points:a({},n.boxpoints,{}),jitter:a({},n.jitter,{}),pointpos:a({},n.pointpos,{}),width:a({},n.width,{}),marker:n.marker,text:n.text,hovertext:n.hovertext,hovertemplate:n.hovertemplate,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:n.offsetgroup,alignmentgroup:n.alignmentgroup,selected:n.selected,unselected:n.unselected,hoveron:{valType:"flaglist",flags:["violins","points","kde"],dflt:"violins+points+kde",extras:["all"],editType:"style"}}},{"../../lib/extend":719,"../box/attributes":894}],1285:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../plots/cartesian/axes"),i=t("../box/calc"),o=t("./helpers"),s=t("../../constants/numerical").BADNUM;function l(t,e,r){var a=e.max-e.min;if(!a)return t.bandwidth?t.bandwidth:0;if(t.bandwidth)return Math.max(t.bandwidth,a/1e4);var i=r.length,o=n.stdev(r,i-1,e.mean);return Math.max(function(t,e,r){return 1.059*Math.min(e,r/1.349)*Math.pow(t,-.2)}(i,o,e.q3-e.q1),a/100)}function c(t,e,r,n){var i,o=t.spanmode,l=t.span||[],c=[e.min,e.max],u=[e.min-2*n,e.max+2*n];function h(n){var a=l[n],i="multicategory"===r.type?r.r2c(a):r.d2c(a,0,t[e.valLetter+"calendar"]);return i===s?u[n]:i}var f={type:"linear",range:i="soft"===o?u:"hard"===o?c:[h(0),h(1)]};return a.setConvert(f),f.cleanRange(),i}e.exports=function(t,e){var r=i(t,e);if(r[0].t.empty)return r;for(var s=t._fullLayout,u=a.getFromId(t,e["h"===e.orientation?"xaxis":"yaxis"]),h=1/0,f=-1/0,p=0,d=0,g=0;g<r.length;g++){var m=r[g],v=m.pts.map(o.extractVal),y=m.bandwidth=l(e,m,v),x=m.span=c(e,m,u,y);if(m.min===m.max&&0===y)x=m.span=[m.min,m.max],m.density=[{v:1,t:x[0]}],m.bandwidth=y,p=Math.max(p,1);else{var b=x[1]-x[0],_=Math.ceil(b/(y/3)),w=b/_;if(!isFinite(w)||!isFinite(_))return n.error("Something went wrong with computing the violin span"),r[0].t.empty=!0,r;var T=o.makeKDE(m,e,v);m.density=new Array(_);for(var k=0,A=x[0];A<x[1]+w/2;k++,A+=w){var M=T(A);m.density[k]={v:M,t:A},p=Math.max(p,M)}}d=Math.max(d,v.length),h=Math.min(h,x[0]),f=Math.max(f,x[1])}var S=a.findExtremes(u,[h,f],{padded:!0});if(e._extremes[u._id]=S,e.width)r[0].t.maxKDE=p;else{var E=s._violinScaleGroupStats,C=e.scalegroup,L=E[C];L?(L.maxKDE=Math.max(L.maxKDE,p),L.maxCount=Math.max(L.maxCount,d)):E[C]={maxKDE:p,maxCount:d}}return r[0].t.labels.kde=n._(t,"kde:"),r}},{"../../constants/numerical":704,"../../lib":728,"../../plots/cartesian/axes":776,"../box/calc":895,"./helpers":1288}],1286:[function(t,e,r){"use strict";var n=t("../box/cross_trace_calc").setPositionOffset,a=["v","h"];e.exports=function(t,e){for(var r=t.calcdata,i=e.xaxis,o=e.yaxis,s=0;s<a.length;s++){for(var l=a[s],c="h"===l?o:i,u=[],h=0;h<r.length;h++){var f=r[h],p=f[0].t,d=f[0].trace;!0!==d.visible||"violin"!==d.type||p.empty||d.orientation!==l||d.xaxis!==i._id||d.yaxis!==o._id||u.push(h)}n("violin",t,u,c)}}},{"../box/cross_trace_calc":896}],1287:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../components/color"),i=t("../box/defaults"),o=t("./attributes");e.exports=function(t,e,r,s){function l(r,a){return n.coerce(t,e,o,r,a)}function c(r,a){return n.coerce2(t,e,o,r,a)}if(i.handleSampleDefaults(t,e,l,s),!1!==e.visible){l("bandwidth"),l("side"),l("width")||(l("scalegroup",e.name),l("scalemode"));var u,h=l("span");Array.isArray(h)&&(u="manual"),l("spanmode",u);var f=l("line.color",(t.marker||{}).color||r),p=l("line.width"),d=l("fillcolor",a.addOpacity(e.line.color,.5));i.handlePointsDefaults(t,e,l,{prefix:""});var g=c("box.width"),m=c("box.fillcolor",d),v=c("box.line.color",f),y=c("box.line.width",p);l("box.visible",Boolean(g||m||v||y))||(e.box={visible:!1});var x=c("meanline.color",f),b=c("meanline.width",p);l("meanline.visible",Boolean(x||b))||(e.meanline={visible:!1})}}},{"../../components/color":595,"../../lib":728,"../box/defaults":897,"./attributes":1284}],1288:[function(t,e,r){"use strict";var n=t("../../lib"),a=function(t){return 1/Math.sqrt(2*Math.PI)*Math.exp(-.5*t*t)};r.makeKDE=function(t,e,r){var n=r.length,i=a,o=t.bandwidth,s=1/(n*o);return function(t){for(var e=0,a=0;a<n;a++)e+=i((t-r[a])/o);return s*e}},r.getPositionOnKdePath=function(t,e,r){var a,i;"h"===e.orientation?(a="y",i="x"):(a="x",i="y");var o=n.findPointOnPath(t.path,r,i,{pathLength:t.pathLength}),s=t.posCenterPx,l=o[a];return[l,"both"===e.side?2*s-l:s]},r.getKdeValue=function(t,e,n){var a=t.pts.map(r.extractVal);return r.makeKDE(t,e,a)(n)/t.posDensityScale},r.extractVal=function(t){return t.v}},{"../../lib":728}],1289:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("../../plots/cartesian/axes"),i=t("../box/hover"),o=t("./helpers");e.exports=function(t,e,r,s,l){var c,u,h=t.cd,f=h[0].trace,p=f.hoveron,d=-1!==p.indexOf("violins"),g=-1!==p.indexOf("kde"),m=[];if(d||g){var v=i.hoverOnBoxes(t,e,r,s);if(g&&v.length>0){var y,x,b,_,w,T=t.xa,k=t.ya;"h"===f.orientation?(w=e,y="y",b=k,x="x",_=T):(w=r,y="x",b=T,x="y",_=k);var A=h[t.index];if(w>=A.span[0]&&w<=A.span[1]){var M=n.extendFlat({},t),S=_.c2p(w,!0),E=o.getKdeValue(A,f,w),C=o.getPositionOnKdePath(A,f,S),L=b._offset,P=b._length;M[y+"0"]=C[0],M[y+"1"]=C[1],M[x+"0"]=M[x+"1"]=S,M[x+"Label"]=x+": "+a.hoverLabelText(_,w)+", "+h[0].t.labels.kde+" "+E.toFixed(3),M.spikeDistance=v[0].spikeDistance;var I=y+"Spike";M[I]=v[0][I],v[0].spikeDistance=void 0,v[0][I]=void 0,M.hovertemplate=!1,m.push(M),(u={stroke:t.color})[y+"1"]=n.constrain(L+C[0],L,L+P),u[y+"2"]=n.constrain(L+C[1],L,L+P),u[x+"1"]=u[x+"2"]=_._offset+S}}d&&(m=m.concat(v))}-1!==p.indexOf("points")&&(c=i.hoverOnPoints(t,e,r));var z=l.selectAll(".violinline-"+f.uid).data(u?[0]:[]);return z.enter().append("line").classed("violinline-"+f.uid,!0).attr("stroke-width",1.5),z.exit().remove(),z.attr(u),"closest"===s?c?[c]:m:c?(m.push(c),m):m}},{"../../lib":728,"../../plots/cartesian/axes":776,"../box/hover":899,"./helpers":1288}],1290:[function(t,e,r){"use strict";e.exports={attributes:t("./attributes"),layoutAttributes:t("./layout_attributes"),supplyDefaults:t("./defaults"),crossTraceDefaults:t("../box/defaults").crossTraceDefaults,supplyLayoutDefaults:t("./layout_defaults"),calc:t("./calc"),crossTraceCalc:t("./cross_trace_calc"),plot:t("./plot"),style:t("./style"),styleOnSelect:t("../scatter/style").styleOnSelect,hoverPoints:t("./hover"),selectPoints:t("../box/select"),moduleType:"trace",name:"violin",basePlotModule:t("../../plots/cartesian"),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","violinLayout","zoomScale"],meta:{}}},{"../../plots/cartesian":789,"../box/defaults":897,"../box/select":904,"../scatter/style":1157,"./attributes":1284,"./calc":1285,"./cross_trace_calc":1286,"./defaults":1287,"./hover":1289,"./layout_attributes":1291,"./layout_defaults":1292,"./plot":1293,"./style":1294}],1291:[function(t,e,r){"use strict";var n=t("../box/layout_attributes"),a=t("../../lib").extendFlat;e.exports={violinmode:a({},n.boxmode,{}),violingap:a({},n.boxgap,{}),violingroupgap:a({},n.boxgroupgap,{})}},{"../../lib":728,"../box/layout_attributes":901}],1292:[function(t,e,r){"use strict";var n=t("../../lib"),a=t("./layout_attributes"),i=t("../box/layout_defaults");e.exports=function(t,e,r){i._supply(t,e,r,(function(r,i){return n.coerce(t,e,a,r,i)}),"violin")}},{"../../lib":728,"../box/layout_defaults":902,"./layout_attributes":1291}],1293:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../lib"),i=t("../../components/drawing"),o=t("../box/plot"),s=t("../scatter/line_points"),l=t("./helpers");e.exports=function(t,e,r,c){var u=t._fullLayout,h=e.xaxis,f=e.yaxis;function p(t){var e=s(t,{xaxis:h,yaxis:f,connectGaps:!0,baseTolerance:.75,shape:"spline",simplify:!0,linearized:!0});return i.smoothopen(e[0],1)}a.makeTraceGroups(c,r,"trace violins").each((function(t){var r=n.select(this),i=t[0],s=i.t,c=i.trace;if(!0!==c.visible||s.empty)r.remove();else{var d=s.bPos,g=s.bdPos,m=e[s.valLetter+"axis"],v=e[s.posLetter+"axis"],y="both"===c.side,x=y||"positive"===c.side,b=y||"negative"===c.side,_=r.selectAll("path.violin").data(a.identity);_.enter().append("path").style("vector-effect","non-scaling-stroke").attr("class","violin"),_.exit().remove(),_.each((function(t){var e,r,a,i,o,l,h,f,_=n.select(this),w=t.density,T=w.length,k=v.c2l(t.pos+d,!0),A=v.l2p(k);if(c.width)e=s.maxKDE/g;else{var M=u._violinScaleGroupStats[c.scalegroup];e="count"===c.scalemode?M.maxKDE/g*(M.maxCount/t.pts.length):M.maxKDE/g}if(x){for(h=new Array(T),o=0;o<T;o++)(f=h[o]={})[s.posLetter]=k+w[o].v/e,f[s.valLetter]=m.c2l(w[o].t,!0);r=p(h)}if(b){for(h=new Array(T),l=0,o=T-1;l<T;l++,o--)(f=h[l]={})[s.posLetter]=k-w[o].v/e,f[s.valLetter]=m.c2l(w[o].t,!0);a=p(h)}if(y)i=r+"L"+a.substr(1)+"Z";else{var S=[A,m.c2p(w[0].t)],E=[A,m.c2p(w[T-1].t)];"h"===c.orientation&&(S.reverse(),E.reverse()),i=x?"M"+S+"L"+r.substr(1)+"L"+E:"M"+E+"L"+a.substr(1)+"L"+S}_.attr("d",i),t.posCenterPx=A,t.posDensityScale=e*g,t.path=_.node(),t.pathLength=t.path.getTotalLength()/(y?2:1)}));var w,T,k,A=c.box,M=A.width,S=(A.line||{}).width;y?(w=g*M,T=0):x?(w=[0,g*M/2],T=S*{x:1,y:-1}[s.posLetter]):(w=[g*M/2,0],T=S*{x:-1,y:1}[s.posLetter]),o.plotBoxAndWhiskers(r,{pos:v,val:m},c,{bPos:d,bdPos:w,bPosPxOffset:T}),o.plotBoxMean(r,{pos:v,val:m},c,{bPos:d,bdPos:w,bPosPxOffset:T}),!c.box.visible&&c.meanline.visible&&(k=a.identity);var E=r.selectAll("path.meanline").data(k||[]);E.enter().append("path").attr("class","meanline").style("fill","none").style("vector-effect","non-scaling-stroke"),E.exit().remove(),E.each((function(t){var e=m.c2p(t.mean,!0),r=l.getPositionOnKdePath(t,c,e);n.select(this).attr("d","h"===c.orientation?"M"+e+","+r[0]+"V"+r[1]:"M"+r[0]+","+e+"H"+r[1])})),o.plotPoints(r,{x:h,y:f},c,s)}}))}},{"../../components/drawing":617,"../../lib":728,"../box/plot":903,"../scatter/line_points":1148,"./helpers":1288,d3:164}],1294:[function(t,e,r){"use strict";var n=t("d3"),a=t("../../components/color"),i=t("../scatter/style").stylePoints;e.exports=function(t){var e=n.select(t).selectAll("g.trace.violins");e.style("opacity",(function(t){return t[0].trace.opacity})),e.each((function(e){var r=e[0].trace,o=n.select(this),s=r.box||{},l=s.line||{},c=r.meanline||{},u=c.width;o.selectAll("path.violin").style("stroke-width",r.line.width+"px").call(a.stroke,r.line.color).call(a.fill,r.fillcolor),o.selectAll("path.box").style("stroke-width",l.width+"px").call(a.stroke,l.color).call(a.fill,s.fillcolor);var h={"stroke-width":u+"px","stroke-dasharray":2*u+"px,"+u+"px"};o.selectAll("path.mean").style(h).call(a.stroke,c.color),o.selectAll("path.meanline").style(h).call(a.stroke,c.color),i(o,r,t)}))}},{"../../components/color":595,"../scatter/style":1157,d3:164}],1295:[function(t,e,r){"use strict";var n=t("../../components/colorscale/attributes"),a=t("../isosurface/attributes"),i=t("../surface/attributes"),o=t("../../plots/attributes"),s=t("../../lib/extend").extendFlat,l=t("../../plot_api/edit_types").overrideAll,c=e.exports=l(s({x:a.x,y:a.y,z:a.z,value:a.value,isomin:a.isomin,isomax:a.isomax,surface:a.surface,spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:1}},slices:a.slices,caps:a.caps,text:a.text,hovertext:a.hovertext,hovertemplate:a.hovertemplate},n("",{colorAttr:"value`“,showScaleDflt:!0,editTypeOverride:“calc”}),{colorbar:a.colorbar,opacity:a.opacity,opacityscale:i.opacityscale,lightposition:a.lightposition,lighting:a.lighting,flatshading:a.flatshading,contour:a.contour,hoverinfo:s({},o.hoverinfo),showlegend:s({},o.showlegend,{dflt:!1})}),“calc”,“nested”);c.x.editType=c.y.editType=c.z.editType=c.value.editType=“calc+clearAxisTypes”,c.transforms=void 0},{“../../components/colorscale/attributes”:602,“../../lib/extend”:719,“../../plot_api/edit_types”:759,“../../plots/attributes”:773,“../isosurface/attributes”:1070,“../surface/attributes”:1257}],1296:[function(t,e,r){“use strict”;var n=t(“gl-mesh3d”),a=t(“../../lib/gl_format_color”).parseColorScale,i=t(“../../lib/str2rgbarray”),o=t(“../../components/colorscale”).extractOpts,s=t(“../../plots/gl3d/zip3”),l=t(“../isosurface/convert”).findNearestOnAxis,c=t(“../isosurface/convert”).generateIsoMeshes;function u(t,e,r){this.scene=t,this.uid=r,this.mesh=e,this.name=“”,this.data=null,this.showContour=!1}var h=u.prototype;h.handlePick=function(t){if(t.object===this.mesh){var e=t.data.index,r=this.data._meshX[e],n=this.data._meshY[e],a=this.data._meshZ[e],i=this.data._Ys.length,o=this.data._Zs.length,s=l(r,this.data._Xs).id,c=l(n,this.data._Ys).id,u=l(a,this.data._Zs).id,h=t.index=u+o*c+o*i*s;t.traceCoordinate=[this.data._meshX[h],this.data._meshY[h],this.data._meshZ[h],this.data._value[h]];var f=this.data.hovertext||this.data.text;return Array.isArray(f)&&void 0!==f[h]?t.textLabel=f[h]:f&&(t.textLabel=f),!0}},h.update=function(t){var e=this.scene,r=e.fullSceneLayout;function n(t,e,r,n){return e.map((function(e){return t.d2l(e,0,n)*r}))}this.data=c(t);var l={positions:s(n(r.xaxis,t._meshX,e.dataScale[0],t.xcalendar),n(r.yaxis,t._meshY,e.dataScale[1],t.ycalendar),n(r.zaxis,t._meshZ,e.dataScale[2],t.zcalendar)),cells:s(t._meshI,t._meshJ,t._meshK),lightPosition:[t.lightposition.x,t.lightposition.y,t.lightposition.z],ambient:t.lighting.ambient,diffuse:t.lighting.diffuse,specular:t.lighting.specular,roughness:t.lighting.roughness,fresnel:t.lighting.fresnel,vertexNormalsEpsilon:t.lighting.vertexnormalsepsilon,faceNormalsEpsilon:t.lighting.facenormalsepsilon,opacity:t.opacity,opacityscale:t.opacityscale,contourEnable:t.contour.show,contourColor:i(t.contour.color).slice(0,3),contourWidth:t.contour.width,useFacetNormals:t.flatshading},u=o(t);l.vertexIntensity=t._meshIntensity,l.vertexIntensityBounds=[u.min,u.max],l.colormap=a(t),this.mesh.update(l)},h.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()},e.exports=function(t,e){var r=t.glplot.gl,a=n({gl:r}),i=new u(t,a,e.uid);return a._trace=i,i.update(e),t.glplot.add(a),i}},{“../../components/colorscale”:607,“../../lib/gl_format_color”:725,“../../lib/str2rgbarray”:751,“../../plots/gl3d/zip3”:829,“../isosurface/convert”:1072,“gl-mesh3d”:287}],1297:[function(t,e,r){“use strict”;var n=t(“../../lib”),a=t(“./attributes”),i=t(“../isosurface/defaults”).supplyIsoDefaults,o=t(“../surface/defaults”).opacityscaleDefaults;e.exports=function(t,e,r,s){function l(r,i){return n.coerce(t,e,a,r,i)}i(t,e,r,s,l),o(t,e,s,l)}},{“../../lib”:728,“../isosurface/defaults”:1073,“../surface/defaults”:1260,“./attributes”:1295}],1298:[function(t,e,r){“use strict”;e.exports={attributes:t(“./attributes”),supplyDefaults:t(“./defaults”),calc:t(“../isosurface/calc”),colorbar:{min:“cmin”,max:“cmax”},plot:t(“./convert”),moduleType:“trace”,name:“volume”,basePlotModule:t(“../../plots/gl3d”),categories:[“gl3d”,“showLegend”],meta:{}}},{“../../plots/gl3d”:818,“../isosurface/calc”:1071,“./attributes”:1295,“./convert”:1296,“./defaults”:1297}],1299:[function(t,e,r){“use strict”;var n=t(“../bar/attributes”),a=t(“../scatter/attributes”).line,i=t(“../../plots/attributes”),o=t(“../../plots/template_attributes”).hovertemplateAttrs,s=t(“../../plots/template_attributes”).texttemplateAttrs,l=t(“./constants”),c=t(“../../lib/extend”).extendFlat,u=t(“../../components/color”);function h(t){return{marker:{color:c({},n.marker.color,{arrayOk:!1,editType:“style”}),line:{color:c({},n.marker.line.color,{arrayOk:!1,editType:“style”}),width:c({},n.marker.line.width,{arrayOk:!1,editType:“style”}),editType:“style”},editType:“style”},editType:“style”}}e.exports={measure:{valType:“data_array”,dflt:[],editType:“calc”},base:{valType:“number”,dflt:null,arrayOk:!1,editType:“calc”},x:n.x,x0:n.x0,dx:n.dx,y:n.y,y0:n.y0,dy:n.dy,hovertext:n.hovertext,hovertemplate:o({},{keys:l.eventDataKeys}),hoverinfo:c({},i.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:s({editType:“plot”},{keys:l.eventDataKeys.concat([“label”])}),text:n.text,textposition:n.textposition,insidetextanchor:n.insidetextanchor,textangle:n.textangle,textfont:n.textfont,insidetextfont:n.insidetextfont,outsidetextfont:n.outsidetextfont,constraintext:n.constraintext,cliponaxis:n.cliponaxis,orientation:n.orientation,offset:n.offset,width:n.width,increasing:h(),decreasing:h(),totals:h(),connector:{line:{color:c({},a.color,{dflt:u.defaultLine}),width:c({},a.width,{editType:“plot”}),dash:a.dash,editType:“plot”},mode:{valType:“enumerated”,values:[“spanning”,“between”],dflt:“between”,editType:“plot”},visible:{valType:“boolean”,dflt:!0,editType:“plot”},editType:“plot”},offsetgroup:n.offsetgroup,alignmentgroup:n.alignmentgroup}},{“../../components/color”:595,“../../lib/extend”:719,“../../plots/attributes”:773,“../../plots/template_attributes”:854,“../bar/attributes”:869,“../scatter/attributes”:1134,“./constants”:1301}],1300:[function(t,e,r){“use strict”;var n=t(“../../plots/cartesian/axes”),a=t(“../../lib”).mergeArray,i=t(“../scatter/calc_selection”),o=t(“../../constants/numerical”).BADNUM;function s(t){return”a”===t||“absolute”===t}function l(t){return”t”===t||“total”===t}e.exports=function(t,e){var r,c,u=n.getFromId(t,e.xaxis||“x”),h=n.getFromId(t,e.yaxis||“y”);“h”===e.orientation?(r=u.makeCalcdata(e,“x”),c=h.makeCalcdata(e,“y”)):(r=h.makeCalcdata(e,“y”),c=u.makeCalcdata(e,“x”));for(var f,p=Math.min(c.length,r.length),d=new Array(p),g=0,m=!1,v=0;v”)),c.color=function(t,e){var r=t[e.dir].marker,n=r.color,i=r.line.color,o=r.line.width;if(a(n))return n;if(a(i)&&o)return i}(h,d),[c]}function w(t){return n(p,t)}}},{“../../components/color”:595,“../../constants/delta.js”:698,“../../plots/cartesian/axes”:776,“../bar/hover”:876}],1306:[function(t,e,r){“use strict”;e.exports={attributes:t(“./attributes”),layoutAttributes:t(“./layout_attributes”),supplyDefaults:t(“./defaults”).supplyDefaults,crossTraceDefaults:t(“./defaults”).crossTraceDefaults,supplyLayoutDefaults:t(“./layout_defaults”),calc:t(“./calc”),crossTraceCalc:t(“./cross_trace_calc”),plot:t(“./plot”),style:t(“./style”).style,hoverPoints:t(“./hover”),eventData:t(“./event_data”),selectPoints:t(“../bar/select”),moduleType:“trace”,name:“waterfall”,basePlotModule:t(“../../plots/cartesian”),categories:[“bar-like”,“cartesian”,“svg”,“oriented”,“showLegend”,“zoomScale”],meta:{}}},{“../../plots/cartesian”:789,“../bar/select”:881,“./attributes”:1299,“./calc”:1300,“./cross_trace_calc”:1302,“./defaults”:1303,“./event_data”:1304,“./hover”:1305,“./layout_attributes”:1307,“./layout_defaults”:1308,“./plot”:1309,“./style”:1310}],1307:[function(t,e,r){“use strict”;e.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”}}},{}],1308:[function(t,e,r){“use strict”;var n=t(“../../lib”),a=t(“./layout_attributes”);e.exports=function(t,e,r){var i=!1;function o(r,i){return n.coerce(t,e,a,r,i)}for(var s=0;s0&&(m+=f?“M”+h[0]+“,”+d[1]+“V”+d[0]:“M”+h[1]+“,”+d[0]+“H”+h[0]),“between”!==p&&(r.isSum||s path”).each((function(t){if(!t.isBlank){var e=s[t.dir].marker;n.select(this).call(i.fill,e.color).call(i.stroke,e.line.color).call(a.dashLine,e.line.dash,e.line.width).style(“opacity”,s.selectedpoints&&!t.selected?o:1)}})),c(r,s,t),r.selectAll(“.lines”).each((function(){var t=s.connector.line;a.lineGroupStyle(n.select(this).selectAll(“path”),t.width,t.color,t.dash)}))}))}}},{“../../components/color”:595,“../../components/drawing”:617,“../../constants/interactions”:703,“../bar/style”:883,“../bar/uniform_text”:885,d3:164}],1311:[function(t,e,r){“use strict”;var n=t(“../plots/cartesian/axes”),a=t(“../lib”),i=t(“../plot_api/plot_schema”),o=t(“./helpers”).pointsAccessorFunction,s=t(“../constants/numerical”).BADNUM;r.moduleType=“transform”,r.name=“aggregate”;var l=r.attributes={enabled:{valType:“boolean”,dflt:!0,editType:“calc”},groups:{valType:“string”,strict:!0,noBlank:!0,arrayOk:!0,dflt:“x”,editType:“calc”},aggregations:{_isLinkedToArray:“aggregation”,target:{valType:“string”,editType:“calc”},func:{valType:“enumerated”,values:[“count”,“sum”,“avg”,“median”,“mode”,“rms”,“stddev”,“min”,“max”,“first”,“last”,“change”,“range”],dflt:“first”,editType:“calc”},funcmode:{valType:“enumerated”,values:[“sample”,“population”],dflt:“sample”,editType:“calc”},enabled:{valType:“boolean”,dflt:!0,editType:“calc”},editType:“calc”},editType:“calc”},c=l.aggregations;function u(t,e,r,i){if(i.enabled){for(var o=i.target,l=a.nestedProperty(e,o),c=l.get(),u=function(t,e){var r=t.func,n=e.d2c,i=e.c2d;switch®{case”count”:return h;case”first”:return f;case”last”:return p;case”sum”:return function(t,e){for(var r=0,a=0;aa&&(a=u,o=c)}}return a?i(o):s};case”rms”:return function(t,e){for(var r=0,a=0,o=0;o“:return function(t){return f(t)>s};case”>=”:return function(t){return f(t)>=s};case”[]”:return function(t){var e=f(t);return e>=s[0]&&e<=s[1]};case”()”:return function(t){var e=f(t);return e>s[0]&&e=s[0]&&es[0]&&e<=s[1]};case”]“:return function(t){var e=f(t);return e<=s[0]||e>=s[1]};case”)(”:return function(t){var e=f(t);return es[1]};case”{var e=f(t);return e<=s[0]||e>s[1]};case”)[”:return function(t){var e=f(t);return e=s[1]};case”{}”:return function(t){return-1!==s.indexOf(f(t))};case”}{”:return function(t){return-1===s.indexOf(f(t))}}}(r,i.getDataToCoordFunc(t,e,s,a),f),x={},b={},=0;d?(m=function(t){x[t.astr]=n.extendDeep([],t.get()),t.set(new Array(h))},v=function(t,e){var r=x[t.astr][e];t.get()[e]=r}):(m=function(t){x[t.astr]=n.extendDeep([],t.get()),t.set([])},v=function(t,e){var r=x[t.astr][e];t.get().push®}),k(m);for(var w=o(e.transforms,r),T=0;T<h;T++){y(a[T])?(k(v,T),b[++]=w(T)):d&&_++}r._indexToPoints=b,e.length=}}function k(t,r){for(var a=0;a1?“%{group} (%{trace})”:“%{group}”);var l=t.styles,c=o.styles=[];if(l)for(i=0;i

  1. \d. [return]
  2. +- [return]
  3. mzlhvcsqta [return]
  4. 0-9a-f [return]